SuiteSparse

The official SuiteSparse library: a suite of sparse matrix algorithms authored or co-authored by Tim Davis, Texas A&M University.

OTHER License

Stars
996
Committers
16

Bot releases are hidden (Show)

SuiteSparse - SuiteSparse v5.6.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.6.0, Oct 21, 2019, with GraphBLAS v3.1.1.

Release notes for GraphBLAS, since v2.3.5 in SuiteSparse v5.5.0:

GraphBLAS Version 3.1.1, Oct 21, 2019

* minor edits: user guide and comments in code

GraphBLAS Version 3.1.0, Oct 2, 2019

* added MATLAB interface: GraphBLAS/GraphBLAS is new.  In Source/, added
    global pointer to printf for MATLAB mexPrintf, pointer to
    mexMakeMemoryPersistent for Sauna workspace.  Changed how GraphBLAS
    objects are printed with GxB_print.  Changed how duplicate indices are
    handled in assign and extract, to match the MATLAB stadard.  Added
    helper functions for MATLAB (GB_matlab_helper.[ch]).
    Code size: @GrB is 9.7KLOC, test/ is 4.5KLOC).
* bug counter added to this ChangeLog: to count # of bugs that appeared
    in formal releases that affect production code.  The count excludes
    bug fixes for test code, bugs in the demo codes, bugs introduced
    in beta versions that were fixed before any formal release, and
    bugs prior to version 1.0.  Code size of Source/, Include/ excluding
    Source/Generated, and Config/*.m4, is 42,659 lines (not including the
    new MATLAB interface).  13 bugs / 42K lines is a bug rate of 0.3 bugs
    per KLOC, much lower than most commercial software, but higher than
    UMFPACK, CHOLMOD, etc (with about 0.1 bug per KLOC).  GraphBLAS is a
    much more complex library, from the external view, than solving Ax=b.
    If UMFPACK has a bug, then Ax-b is typically large; there is no
    'residual' to check for GraphBLAS.  Also, in GraphBLAS, the test suite
    has about the same size as the main library (32K lines in Test/ and
    Tcov/).  For UMFPACK, etc, the test suite is always about 1/3 the size
    of the library itself.
* 'make dox': for doxygen removed (not really that useful)
* (13) bug fix to GB_reduce_to_vector: to avoid integer divide-by-zero for
    a matrix with n=0 columns.
* (12) bug fix to GB_accum_mask: when C+=T if C has no entries except
    pending tuples
* (11) bug fix to GB_resize: when pending tuples exist and vdim is growing
    from vdim <= 1 to vdim > 1, GB_WAIT(A) is required first.
* (10) bug fix to GB_subref_phase1: "int nI" parameter should be int64_t.

GraphBLAS Version 3.0.1, July 26, 2019

* version number: Three changes to the user-visible API are not
    backward-compatible with V2.x: the added parameters to GxB_init and
    GxB_SelectOp_new, and the change in the type of the Thunk argument for
    GxB_select.  Thus, the SO version of SuiteSparse:GraphBLAS is now 3, no
    longer 2.  This change only affects SuiteSparse:GraphBLAS GxB_*
    extenstions, not any GrB_* functions or definitions.
* added GxB_Scalar: acts like a GrB_Vector of length 1.
* OpenMP parallelism: added nthreads and chunk parameters to GxB_set/get.
* added parameter to GxB_init: bool user_malloc_is_thread_safe,
    for the MATLAB mexFunction interface, or any other malloc library that
    might not be thread-safe.  mxMalloc is not thread-safe.
    This change is not backward compatible with Version 2.x.
* changed thunk parameter of GxB_select:  was (void *), now GxB_Scalar.
    This change is not backward compatible with Version 2.x.
* added parameter to GxB_SelectOp_new: to specify the type of the Thunk.
    This change is not backward compatible with Version 2.x.
* added options to GxB_get: determine if a matrix is hypersparse or not,
    global library, API information, nthreads, and chunk.
* added options to GxB_set: nthreads, and chunk.
* new operators and semirings: RDIV (f(x,y)=y/x) and RMINUS (y-x)
    binary operators.
SuiteSparse - SuiteSparse v5.5.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.5.0, Oct 20, 2019.

This release includes v2.3.5 of GraphBLAS, for the Collected Algorithms of the ACM.

Release notes for SuiteSparse v5.5.0:

* GraphBLAS 2.3.5: Collected Algorithm of the ACM
* UMFPACK 5.7.9: fix for compiling in MATLAB R2018b; BLAS library
* SPQR, CHOLMOD: fix to *_make.m for compiling in MATLAB; same version
* KLU: fix to Tcov/Makefile; no change to version number
* CXSparse 3.2.0: version was incorrect in CXSparse/Include/cs.h;
    the corresponding CSparse v3.2.0 had the correct version information
    in its cs.h include file.
* ssget and MATLAB_Tools/SuiteSparseCollection: update to sparse.tamu.edu
* Mongoose 2.0.4: update to sparse.tamu.edu
SuiteSparse - SuiteSparse v5.4.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.4.0, Dec 28, 2018.

* GraphBLAS 2.2.2: many upgrades and new features, a few bug fixes
* CHOLMOD 3.0.13: fix to cholmod_core.h (for latest CUDA)
* SPQR 2.0.9: fix to SuiteSparseQR.hpp (for latest CUDA)
* UMFPACK 5.7.8: minor change to umf_analyze.h (not a bug, but the
    parameter names in the *.h did not match the *.c.
* ssget: new matrices
* Mongoose 2.0.3: simpler cmake
* SuiteSparse_config: added JOBS option for parallel make, also added to
    GraphBLAS, CHOLMOD, SPQR, UMFPACK, Mongoose, and metis-5.1.0
SuiteSparse - SuiteSparse v5.3.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.3.0, July 5, 2018

* GraphBLAS 2.0.3: bug fix to GxB_resize, better cmake script
* new package: Mongoose (version 2.0.2)
* fixed metis gk_arch.h for Windows
* UMFPACK 5.7.7: modified comments in umfpack*symbolic.h
* added contributor license for all of SuiteSparse
* updated and renamed MATLAB_Tools/UFcollection to SuiteSparseCollection
SuiteSparse - SuiteSparse v5.2.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.2.0, Mar 15, 2018

* GraphBLAS 2.0.1: bug fix to GxB_kron
* SuiteSparse_config: corrected back to SO_VERSION 5

* GraphBLAS 2.0.0: with changes to API to conform to the latest
    specification.  The SO_VERSION of GraphBLAS must change,
    as a result, since this affects both the ABI and API interface.
* CHOLMOD 3.1.12: bug fix (no change to the CHOLMOD ABI or API)
* KLU 1.3.9: minor edit, not a bug fix, but code is more clear now
SuiteSparse - SuiteSparse v5.1.2

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.1.2, Dec 28, 2017.

* improved build process for GraphBLAS
* minor change to CSparse/Lib/Makefile, no change in CSparse version

5.1.1:

* GraphBLAS added to top-level SuiteSparse/Makefile
* GraphBLAS 1.1.1: bug fix to *assign, split AxB for faster compile,
    added memory usage statistics, AxB performance improvment
* minor update to [AMD CAMD KLU]/Doc/Makefile's, no change to
    version numbers of AMD, CAMD, or KLU
SuiteSparse - SuiteSparse v5.1.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.1.0, Dec 1, 2017.

* GraphBLAS 1.1.0
* minor update to SPQR Makefile (version remains unchanged;
    no change to source)
SuiteSparse - SuiteSparse v5.0.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v5.0.0, Nov 25, 2017.

* added GraphBLAS Version 1.0.0
* replaced UFget with ssget
SuiteSparse - SuiteSparse v4.5.6

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.5.6, Oct 3, 2017

* changed COLAMD, CAMD, and CCOLAMD to BSD 3-clause,
    to match AMD.  No other changes; version numbers of
    packages unchanged.
SuiteSparse - SuiteSparse v4.5.5

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.5.5, Apr 17, 2017.

* minor fix to SuiteSparse/Makefile for 'make install'

4.5.4:

* minor update to SPQR for ACM TOMS submission
SuiteSparse - SuiteSparse v4.5.3

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.5.3, May 4, 2016.

* minor changes to Makefiles

4.5.2:

* licensing simplified (no other change); refer to PACKAGE/Doc/License.txt
    for the license for each package.

4.5.1:

* update to Makefiles.  Version 4.5.0 is broken on the Mac.
    That version also compiles *.so libraries on Linux with
    underlinked dependencies to other libraries in SuiteSparse.
    For example, AMD requires SuiteSparse_config.  The links to
    required libraries are now explicitly included in each library,
    in SuiteSparse 4.5.1.
* minor change to CHOLMOD/Check/cholmod_write.c, when compiling with
    options that disable specific modules
SuiteSparse - SuiteSparse v4.5.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.5.0, Jan 30, 2016.

* better Makefiles for creating and installing shared libraries
* CHOLMOD now uses METIS 5.1.0, which is distributed with SuiteSparse
* fix for MATLAB R2015b, which changed how it creates empty matrices,
    as compared to prior versions of MATLAB.  This change in MATLAB
    breaks many of the mexFunctions in prior versions of SuiteSparse.
    If you use MATLAB R2015b, you must upgrade to SuiteSparse 4.5.0
    or later.
SuiteSparse - SuiteSparse v4.4.7

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.4.7, Jan 1, 2016.

* note that this minor update fails on the Mac, so its
    listed on my web page as a 'beta' release.
* Improved the Makefiles of all packages.  They now create *.so
    shared libraries (*.dylib on the Mac).  Also, there is now
    only a single SuiteSparse_config.mk file.  It now determines
    your system automatically, and whether or not you have METIS
    and CUDA.  It also automatically detects if you have the Intel
    compiler or not, and uses it if it finds it.  There should be
    no need to edit this file for most cases, but you may need to
    for your particular system.  With this release, there are almost
    no changes to the source code, except for the VERSION numbers
    defined in the various include *.h files for each package.
SuiteSparse - SuiteSparse v4.4.6

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.4.6, Aug 2015.

* SPQR: changed default tol when A has infs, from inf to realmax (~1e308)

4.4.5:

* CHOLMOD 3.0.6:
    - minor fix to CHOLMOD (disabling modules did not work as expected)
    - added MATLAB interface for row add/delete (lurowmod)
* KLU 1.3.3: Fix for klu_dump.c (debugging case only)
* UFcollection:  added additional stats for matrix collection
* AMD: changed the default license.  See AMD/Doc/License.txt for details.
SuiteSparse - SuiteSparse v4.4.4

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.4.4, Mar 24, 2015.

* CHOLMOD version number corrected.  In 4.4.3, the CHOLMOD_SUBSUB_VERSION
    string was left at '4' (it should have been '5', for CHOLMOD 3.0.5).
    This version of SuiteSparse corrects this glitch.
* Minor changes to comments in SuiteSparse_config.
* SPQR version 2.0.1 released (minor update to documentation)

4.4.3:

* CHOLMOD 3.0.5: minor bug fix to MatrixOps/cholmod_symmetry
SuiteSparse - SuiteSparse v4.4.2

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.4.2, Jan 7, 2015.

* CHOLMOD 3.0.4: serious bug fix in supernodal factorization,
    introduced in CHOLMOD 3.0.0 (SuiteSparse 4.3.0).  Can cause segfault,
    and has no user workaround.
SuiteSparse - SuiteSparse v4.4.1

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.4.1, Oct 23, 2014.

Minor update:  two bug fixes (affecting Windows only)

* CHOLMOD 3.0.3:
    minor update to CHOLMOD (non-ANSI C usage in one *.c file, affects
    Windows only)
* KLU 1.3.2:
    minor fix to MATLAB install; no change to C except version nubmer
SuiteSparse - SuiteSparse v4.4.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.4.0, Oct 10, 2014.

MAJOR UPDATE:  new GPU-acceleration for SPQR

* AMD 2.4.1:
    minor fix to MATLAB install; no change to C except version nubmer
* BTF 1.2.1:
    minor fix to MATLAB install; no change to C except version nubmer
* CAMD 2.4.1:
    minor fix to MATLAB install; no change to C except version nubmer
* CCOLAMD 2.9.1:
    minor fix to MATLAB install; no change to C except version nubmer
* CHOLMOD 3.0.2:
    update to accomodate GPU-accelerated SPQR
    added CHOLMOD/Include/cholmod_function.h
* COLAMD 2.9.1:
    minor fix to MATLAB install; no change to C except version nubmer
* CSparse 3.1.4:
    minor fix to MATLAB install; no change to C except version nubmer
* CXSparse 3.1.4:
    minor fix to MATLAB install; no change to C except version nubmer
* GPUQREngine 1.0.0:
    FIRST RELEASE.  Used by SPQR 2.0.0
* KLU 1.3.1:
    minor fix to MATLAB install; no change to C except version nubmer
    update to KLU/Tcov/Makefile
* LDL 2.2.1:
    minor fix to MATLAB install; no change to C except version nubmer
* RBio 2.2.1:
    minor fix to MATLAB install; no change to C except version nubmer
* SPQR 2.0.0:
    MAJOR UPDATE.  added GPU support.  Up to 11x faster than on CPU
* SuiteSparse_GPURuntime 1.0.0:
    FIRST RELEASE.  Used by SPQR 2.0.0
* UMFPACK 5.7.1:
    minor fix to MATLAB install; no change to C except version nubmer
* MATLAB_Tools:
    modified SSMULT/ssmult_install.m.  No change to C code
SuiteSparse - SuiteSparse v4.3.1

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.3.1, July 18, 2014.

Minor update:  added cholmod_rowfac_mask2 function to CHOLMOD

* CHOLMOD 3.0.1:
    added cholmod_rowfac_mask2 function.  Minor fix to build process
* SPQR 1.3.3:
    minor fix to build process
SuiteSparse - SuiteSparse v4.3.0

Published by DrTimothyAldenDavis about 5 years ago

SuiteSparse v4.3.0, March 26, 2014.

MAJOR UPDATE: first release of CHOLMOD GPU acceleration
minor update: modified all packages to use SuiteSparse_config for
    malloc/calloc/realloc/free, printf, hypot, and divcomplex
    function pointers.

* AMD 2.4.0:
    changed malloc/printf pointers to use SuiteSparse_config
* CAMD 2.4.0:
    changed malloc/printf pointers to use SuiteSparse_config
* CCOLAMD 2.9.0:
    changed malloc/printf pointers to use SuiteSparse_config
* CHOLMOD 3.0.0:
    MAJOR UPDATE to GPU acceleration.  Released at GTC 2014.
* COLAMD 2.9.0:
    changed malloc/printf pointers to use SuiteSparse_config
* CSparse 3.1.3:
    minor update to UFget
* CXSparse 3.1.3:
    minor update to UFget
* KLU 1.3.0:
    changed malloc/printf pointers to use SuiteSparse_config
* LDL 2.2.0:
    changed malloc/printf pointers to use SuiteSparse_config
* RBio 2.2.0:
    changed malloc/printf pointers to use SuiteSparse_config
* SPQR 1.3.2:
    changed malloc/printf pointers to use SuiteSparse_config
* UMFPACK 5.7.0:
    changed malloc/printf pointers to use SuiteSparse_config
* MATLAB_Tools:
    added stats to UFcollection, revised commends in SFMULT,
    minor update to spok
Package Rankings
Top 21.65% on Anaconda.org
Top 8.61% on Conda-forge.org
Top 6.74% on Proxy.golang.org