Skip to content

Releases: clMathLibraries/clSPARSE

v0.10.2.0

13 Oct 15:54
Compare
Choose a tag to compare
v0.10.2.0 Pre-release
Pre-release

This is a bug fix release

  • Fixes for builds; external repository for google test has changed
  • Fix the kernel wrapper for cl2.hpp, passing invalid cl_mem argument
  • Move OpenCL detection to the root of the project (thanks to @ghisvail)

v0.10.1.0

09 Aug 21:31
Compare
Choose a tag to compare
v0.10.1.0 Pre-release
Pre-release

What's new in clSPARSE v0.10.1

This is a bug fix release

  • Fixes for travis builds
  • Fix to the matrix market reader in the cuSPARSE benchmark to synchronize with the regular MM reader
  • Replace cl.hpp with cl2.hpp (thanks to @9prady9)
  • Fixes for the Nvidia platform; tested 352.79
    • Fixed buffer overruns in CSR-Adaptive kernels
    • Fix invalid memory access on Nvidia GPUs in CSR-Adaptive SpMV kernel (thanks to @mkre)

v0.10.0.0

14 Jan 23:40
Compare
Choose a tag to compare
v0.10.0.0 Pre-release
Pre-release

Notable Changes

This release introduces breaking API changes from the prior version. clSPARSE is still in a beta phase, and we may need to change the API at times to increase maintainability or fix design issues. A few changes are introduced to more closely follow the recently published Cpp Core Guidelines, a strong candidate for a coding guidelines to be used in clSPARSE.

  • The API to create meta data for a csr encoded sparse matrix has changed. This is an attempt to hide the implementation details of how meta data is stored from the user. This allows the library freedom to change and iterate meta data without breaking clients.
    • clsparseCsrMetaCompute() renamed to clsparseCsrMetaCreate(), to more intuitively pair with the
    • New API clsparseCsrMetaDelete()
  • A few routines changed pure 'out' parameters to be returned on the stack as structs
    • clsparseCreateControl()
    • clsparseGetEvent()
    • clsparseCreateSolverControl()
    • clsparseCsrMetaSize()
  • A new index type has been introduced clsparseIdx_t to abstract the size of an index from the library interface; the only choice currently is 4 bytes. If users use this datatype for indices in their code, changing to 8-byte indices in the future should only be a recompile.
  • The names of member variables in our public structs have been renamed for consistency. Before, our member variables was not consistent with camel case and underscore naming. Member variables are now standardized to use underscores, but we keep camel casing for function and struct names
    • colIndices to col_indices
    • rowIndices to row_indices
    • rowOffsets to row_pointer (renamed to pointer to remove confusion with buffer offsets for cl1.2)
    • offValues to off_values
    • offColInd to off_col_indices
    • offRowOff to off_row_pointer
    • offValues to off_values
  • All samples have been changed to compile with the above changes.

v0.8.1.0

02 Nov 11:03
Compare
Choose a tag to compare
v0.8.1.0 Pre-release
Pre-release

Notable Changes

  • Minor Fix in test-blas3
  • Matrix market reader functions are modified to read explicit zeros from matrix market files by default. Also an option is provided to skip reading these zeros.
  • Correspondingly all related functions which eventually call matrix market reader are changed.

v0.8.0.0

19 Oct 04:46
Compare
Choose a tag to compare
v0.8.0.0 Pre-release
Pre-release

Notable Changes

  • New single precision SpM-SpM (SpGEMM) function
  • Optimizations to the sparse matrix conversion routines
  • API documentation available
  • SpM-dV routines now provide higher precision accuracy
  • Various bug fixes integrated

v0.6.2.0

18 Aug 20:59
Compare
Choose a tag to compare
v0.6.2.0 Pre-release
Pre-release

Notable changes

  • Added Travis CI build automation
  • OPENCL_ROOT can be passed through env var to help find OpenCL
  • ExternalBoost can select compiler through ENV{CC}
  • Linux/OSX builds will find boost either in static or dynamic forms
  • Cmake config package now installs to ${LIB_INSTALL_DIR}/cmake/clSPARSE - #116
  • Library links to ${CMAKE_DL_LIBS} - #117

v0.6.1.0

06 Aug 22:42
Compare
Choose a tag to compare
v0.6.1.0 Pre-release
Pre-release

Notable changes

  • Code files include Apache boilerplate at top
  • Added more conversion benchmark routines with data files (dense2csr, coo2csr)
  • Fixed a few broken documentation links

clSPARSE v0.6.0.0 open source beta release

22 Jul 17:39
Compare
Choose a tag to compare

This is the open-sourcing of the ACL clSPARSE project, tagged as v0.6.0.0 as part of ACL 1.0 beta 1. The functionality provided in the release is detailed on the projects main README file. Project build instructions and a few performance graphs are provided on the project wiki.

We release clSPARSE as beta software (0.y.z.w) early to the community to elicit feedback and comment. Please leave bug reports and feedback on the github repo's issues tracker. This comes with the expectation that we may incorporate breaking changes to the API that might require early users to recompile, or rewrite portions of their code as we iterate on the design.