The official SuiteSparse library: a suite of sparse matrix algorithms authored or co-authored by Tim Davis, Texas A&M University.
OTHER License
Published by DrTimothyAldenDavis almost 2 years ago
Dec 9, 2022: SuiteSparse 6.0.2
* minor change to build system for nearly all packages: (except CSparse,
ssget, and MATLAB_Tools): allows static linkage of all libraries.
Fortran no longer required.
* AMD 3.0.2: Fortran no longer required (amd.f and amdbar.f skipped);
minor change to build system
* BTF 2.0.2: minor change to build system
* CAMD 3.0,2: minor change to build system
* CCOLAMD 3.0.2: minor change to build system
* CHOLMOD 4.0.2: Fortran no longer required; minor change to build system
* CXSparse 4.0.2: minor change to build system
* GPUQREngine 2.0.2: minor change to build system
* GraphBLAS 7.3.3: -latomic added if needed, using ANSI C11 atomic functions
for gcc (atomic_compare_exachange_weak instead of __atomic_* variants),
chunk factor revised for GrB_mxm (generic saxpy3 method);
minor change to build system
* KLU 2.0.2: Fortran no longer required; minor change to build system
* LDL 3.0.2: minor change to build system
* Mongoose 3.0.2: fixed matrix download in python test scripts (no change
to the compiled library itself, other than the version/date);
minor change to build system
* RBio 3.0.2: minor change to build system
* SPEX 2.0.2: minor change to build system
* SPQR 3.0.2: Fortran no longer required; minor change to build system
* SuiteSparse_GPURuntime 2.0.2: minor change to build system
* SuiteSparse_config 6.0.2: override C-to-Fortran interface handling if
no Fortran compiler found; minor change to build system
* UMFPACK 6.0.2: Fortran no longer required; minor change to build system
* Example: simple package that illustrates how to use SuiteSparse
Find*.cmake modules in cmake.
* not changed from SuiteSparse v6.0.1: ssget, CSparse, MATLAB_Tools
Published by DrTimothyAldenDavis almost 2 years ago
Dec 9, 2022: SuiteSparse 6.0.2
* minor change to build system for nearly all packages: (except CSparse,
ssget, and MATLAB_Tools): allows static linkage of all libraries.
Fortran no longer required.
* AMD 3.0.2: Fortran no longer required (amd.f and amdbar.f skipped);
minor change to build system
* BTF 2.0.2: minor change to build system
* CAMD 3.0,2: minor change to build system
* CCOLAMD 3.0.2: minor change to build system
* CHOLMOD 4.0.2: Fortran no longer required; minor change to build system
* CXSparse 4.0.2: minor change to build system
* GPUQREngine 2.0.2: minor change to build system
* GraphBLAS 7.3.3: -latomic added if needed, using ANSI C11 atomic functions
for gcc (atomic_compare_exachange_weak instead of __atomic_* variants),
chunk factor revised for GrB_mxm (generic saxpy3 method);
minor change to build system
* KLU 2.0.2: Fortran no longer required; minor change to build system
* LDL 3.0.2: minor change to build system
* Mongoose 3.0.2: fixed matrix download in python test scripts (no change
to the compiled library itself, other than the version/date);
minor change to build system
* RBio 3.0.2: minor change to build system
* SPEX 2.0.2: minor change to build system
* SPQR 3.0.2: Fortran no longer required; minor change to build system
* SuiteSparse_GPURuntime 2.0.2: minor change to build system
* SuiteSparse_config 6.0.2: override C-to-Fortran interface handling if
no Fortran compiler found; minor change to build system
* UMFPACK 6.0.2: Fortran no longer required; minor change to build system
* Example: simple package that illustrates how to use SuiteSparse
Find*.cmake modules in cmake.
* not changed from SuiteSparse v6.0.1: ssget, CSparse, MATLAB_Tools
Note that SPEX fails to build using the MINGW32 and MINGW64 compilers, because of a linking problem with GMP. The CI system was added after v6.0.1 was released, and it's likely that SPEX didn't build for that version of SuiteSparse either.
Published by DrTimothyAldenDavis almost 2 years ago
Nov 12, 2022: SuiteSparse 6.0.1
* BLAS: C prototypes for the Fortan BLAS were unintentionally exposed to
the user application. Removed. If you want to use them, see the
instructions in SuiteSparse_config.h.
Published by DrTimothyAldenDavis almost 2 years ago
Nov 12, 2022: SuiteSparse 6.0.0
* major update: using CMake build system for all packages
* CMake Find*: all packages now have a Find*.cmake. See
SuiteSparse_config/cmake_modules.
* integers: int (32-bit) and SuiteSparse_long (nominally 64-bit) replaced
with int32_t and int64_t. The SuiteSparse_long #define has been
deprecated and removed. Replace its use with int64_t in any code that
uses SuiteSparse v6.0.0 or later. This is unlikely to change any
use of any SuiteSparse package, but since it's possible that
SuiteSparse_long was 32-bits on some platforms, the SO_VERSIION of
all packages has been increased by one.
* UMFPACK: new options to support ParU. Single umfpack.h include file.
* CHOLMOD: Single cholmod.h include file.
* SuiteSparse/metis-5.1.0: now embedded into CHOLMOD, in a different
name space. No longer an independent library.
* SPDX License Identifier: added to each file. No change in license.
* BLAS/LAPACK interface: now supports any Fortran BLAS/LAPACK, with
either 32-bit (default) or 64-bit integers, via FindBLAS.cmake.
* SPEX: replaces SLIP_LU
Published by DrTimothyAldenDavis almost 2 years ago
Added NOPENMP option to disable OpenMP for UMFPACK, CHOLMOD, SPQR, SuiteSparse_config (where it was just using omp_get_wtime) and GraphBLAS. Note the comments in the GraphBLAS userguide about thread-safety. If GraphBLAS is compiled without OpenMP, the #pragma omp flush in GrB_wait cannot guarantee thread safety if one user thread writes to a GrB_Matrix, does a GrB_wait, and another user thread reads that same matrix. The user application would have to ensure that the 1st thread's cache is properly flushed (perhaps with a pthreads construct). In this case, without OpenMP, thread safety is the responsibility of the user application, not GraphBLAS. Details and caveats are in the GraphBLAS user guide.
Published by DrTimothyAldenDavis almost 2 years ago
Changes to the cmake build system.
Published by DrTimothyAldenDavis almost 2 years ago
Allow a specific BLAS library to be selected.
Published by DrTimothyAldenDavis almost 2 years ago
Changes to build system. METIS now integrated into the CHOLMOD library with all functions renamed so there can be no conflict with any non-modified METIS package. Added Fortran functions to AMD library
Published by DrTimothyAldenDavis almost 2 years ago
Fixes the build process when METIS is not compiled for use in SuiteSparse. Adds more instructions in README.
Published by DrTimothyAldenDavis almost 2 years ago
Revisions to cmake build system.
Published by DrTimothyAldenDavis almost 2 years ago
v6.0.0-beta3: adding NSTATIC option to disable the build of static libraries, and adding the installation of the SuiiteSparse_config/cmake_modules in /usr/local/lib/cmake/SuiteSparse (where /usr/local is CMAKE_INSTALL_PREFIX, in general).
For most packages, NSTATIC defaults to false (so static libraries are built). For GraphBLAS, the compilation takes a long time so the default is true (do not build the static libgraphblas.a). For Mongoose, the option is always false and ignored if set to true, since the static library is needed by the mongoose program.
Published by DrTimothyAldenDavis almost 2 years ago
Revised CMake / Makefile install rules. For the Makefiles:
These are handled by CMake options: -DGLOBAL_INSTALL=(true or false, 0 or 1), and -DLOCAL_INSTALL=(ditto). By default, GLOBAL_INSTALL is true (like "make global", install in CMAKE_INSTALL_PREFIX) and LOCAL_INSTALL (install in SuiteSparse/lib, SuiteSparse/include) is false.
Published by DrTimothyAldenDavis almost 2 years ago
Nov 4, 2022: SuiteSparse 6.0.0 (beta1 release)
* major update: using CMake build system for all packages
* CMake Find*: all packages now have a Find*.cmake. See
SuiteSparse_config/cmake_modules.
* integers: int (32-bit) and SuiteSparse_long (nominally 64-bit) replaced
with int32_t and int64_t. The SuiteSparse_long #define has been
deprecated and removed. Replace its use with int64_t in any code that
uses SuiteSparse v6.0.0 or later. This is unlikely to change any
use of any SuiteSparse package, but since it's possible that
SuiteSparse_long was 32-bits on some platforms, the SO_VERSION of
all packages has been increased by one.
* UMFPACK: new options to support ParU. Single umfpack.h include file.
* CHOLMOD: Single cholmod.h include file.
* SuiteSparse/metis-5.1.0: renamed SuiteSparse_metis, to avoid confusion
with the unmodified metis-5.1.0. The compiled library is named
libsuitesparse_metis.so. The unmodified libmetis.so cannot be used
with SuiteSparse.
* SPDX License Identifier: added to each file. No change in license.
* BLAS/LAPACK interface: now supports any Fortran BLAS/LAPACK, with
either 32-bit (default) or 64-bit integers.
* SPEX: replaces SLIP_LU
Published by DrTimothyAldenDavis about 2 years ago
Includes GraphBLAS v7.2.0.
* GraphBLAS v7.2.0: see GraphBLAS/Doc/ChangeLog for details.
* performance: more compact serialization (ZSTD added, now the
default compression method).
* MATLAB interface: faster linear indexing, reshape, bandwidth,
istril, istriu, isbanded, isdiag. C(I,J)=A can now grow the
size of C.
* features: reshape methods, cube root operator, isStoredElement
* bugs: a minor bug; user-defined types were incorrectly limited to
128 bytes in size in v7.0.3.
Published by DrTimothyAldenDavis over 2 years ago
GraphBLAS v7.0.3
Published by DrTimothyAldenDavis over 2 years ago
Added GraphBLAS v6.2.5, plus minor updates to build system.
Published by DrTimothyAldenDavis over 3 years ago
May 17, 2021, SuiteSparse 5.10.1
* CUDA: remove sm_30 from SuiteSparse_config.mk
* GraphBLAS v5.0.5: minor bug fix
* minor changes to Makefiles
Published by DrTimothyAldenDavis over 3 years ago
SuiteSparse v5.10.0 with GraphBLAS v5.0.4
Published by DrTimothyAldenDavis over 3 years ago
GraphBLAS upgraded from v3.3 to v4.0.3 with many new features, and increased performance. Betweeness Centrality about 2x faster, and now faster than the GAP benchmark for larger matrices. BFS about 5x faster. For the very latest versions of GraphBLAS, see https://github.com/DrTimothyAldenDavis/GraphBLAS where stable releases are more frequent. Those updates are added to this SuiteSparse meta-package on a slower release cycle.
Published by DrTimothyAldenDavis over 4 years ago
July 14, 2020, SuiteSparse 5.8.1
* SLIP_LU v1.0.2: resolved issue #51
* GraphBLAS v3.3.3: bug fix (GraphBLAS issue #13)