Skip to content

Releases: DrTimothyAldenDavis/GraphBLAS

v3.3.3 (July 14, 2020)

14 Jul 23:07
Compare
Choose a tag to compare

Version 3.3.3, July 14, 2020

* (20) bug fix: w<mask>=A*u with mask non-empty and u empty (issue #13).
    affects mxm (A*B when B is a vector), vxm, and mxv.
* GraphBLAS v3.3.3 released as part of SuiteSparse v5.8.1

v3.3.2 (July 3, 2020)

14 Jul 17:14
Compare
Choose a tag to compare

Version 3.3.2, July 3, 2020

* minor changes to build system

v3.3.1 (June 30, 2020)

30 Jun 21:06
4305426
Compare
Choose a tag to compare

Version 3.3.1, June 30, 2020

* (19) bug fix: incorrect typecasting when GrB_assign or GxB_subassign
    is simple: C=A where A is sparse or dense, in GB_dense_subassign_24.
    Bug introduced in v3.2.0.
* revised gbmake: to allow GraphBLAS to be compiled in Octave

v3.3.0 (June 26, 2020)

26 Jun 18:53
2f98bdf
Compare
Choose a tag to compare

Version 3.3.0, June 26, 2020

* GrB_wait( ): with no input arguments, has been deprecated.  It will
    be removed in V4.0.
* GrB_error ( ) with no input parameters is deprecated.
* added complex types: GxB_FC32 and GxB_FC64, many unary operators,
    binary operators, monoids, and semirings
* added GrB_*_apply_BinaryOp1st and 2nd: also GxB version with GxB_Scalar
* added bitwise operators: and their monoids and semirings
* added predefined GrB* monoids and semirings: from the v1.3 spec.
* MATLAB interface: added complex matrices and operators, bitwise
    operators; improved performance
* changed typecasting rules: for casting floating point types to integers
* added GrB_*_wait: wait for specific object to complete
* added GrB_*_resize: same as prior GxB_*_resize functions
* added GrB_kronecker: same as prior GxB_kron
* added version methods: GrB_getVersion, GRB_VERSION, GRB_SUBVERSION
* added GrB_*_removeElement
* (18) bug fix: fixed typecasting in GB_dense_subassign_23, generic case
* (17) bug fix: non-polymorphic GrB_eWiseAdd and eWiseMult functions
    were misnamed.
* DRAFT interfaces: A few functions have been added to use CUDA and the
    Intel MKL library.  These are visible in GraphBLAS.h but are
    undocumented; do *not* use them yet.  They will likely change without
    warning, and without change the SuiteSparse:GraphBLAS version number.

Future version: v4.0.0 may incorporate the following changes. This list is tentative since v2.0 of the C API is still under development:

* GrB_wait(), with no inputs: will be removed
* GrB_wait(&object): polymorphic function will be added
* GrB_*_nvals: will no longer guarantee completion; use GrB_wait(&object)
    or non-polymorphic GrB_*_wait (&object) instead
* GrB_error: will have two inputs: a string (char **) and an object
* V4.0.0 will otherwise be identical to V3.3.0.

v3.2.2 (Apr 2, 2020)

03 Apr 02:10
5e569f2
Compare
Choose a tag to compare

Version 3.2.2, Apr 2, 2020

* (16) bug fix to MATLAB interface: for matrices with dimension > 2^53.
    Note that MATLAB will not display the size correctly in 'whos', which
    rounds the int64 values of m and n for [m,n]=size(A) of a GrB_matrix to
    a 'flint', which is a double value, that then gets rounded.  This is
    outside of my control.  size(A) is correct, just the 'whos' is wrong.
* port to Microsoft Visual Studio: including GraphBLAS/Demo and
    GraphBLAS/Test, which had not been ported in v3.1.2.
* remove dependency on m4: end-users no longer need m4;  still needed by
    the Source/codegen*.m scripts but those are for development only.

v3.2.1 (March 10, 2020)

10 Mar 18:03
13f961b
Compare
Choose a tag to compare

Version 3.2.1, Mar 10, 2020

* GAP benchmarks in MATLAB: in GraphBLAS/GraphBLAS/GAP (all but CC).
* atomic read/write: faster atomics for icc (see Source/GB_atomics.h)
* install name for Mac: in alternative/Makefile and Tcov/Makefile
* enable -DGBCOMPACT from CMake: for faster Travis builds
* MATLAB interface: better error message in GrB.reduce
* MATLAB triangle count: added sorting heuristic in GrB.tricount.
* bug fix for GraphBLAS/Demo/simple_timer: better selection of which
    timer to use; simple_timer.[ch] made consistent.
* no bug fixes needed in primary GraphBLAS library: just in Demo, test,
    and alternative/Makefile.

v3.2.0 (Feb 20, 2020)

20 Feb 22:22
Compare
Choose a tag to compare

Version 3.2.0, Feb 20, 2020

* GxB_*_define for user-defined compile-time objects: removed.  Not
    compatible with the faster kernels for mxm and dense matrices/vectors.
    Use the GrB_*_new functions in the GraphBLAS C API Specification
    instead.
* faster saxpy-based matrix multiply (about 5x to 10x for mxv and vxm):
    removed Sauna workspace.  Heap method removed.  Hash method added.
* better performance for dense matrix and vectors
* faster typecast of the mask matrix M: GB_mcast replaces cast_M
* added GB_BURBLE: for development diagnostics
* changed default chunk size: from 4K to 64K
* added the PAIR binary operator: f(x,y)=1
* added the ANY binary operator: f(x,y)=x, or f(x,y)=y ; arbitrary choice
* added structural mask: from v1.3 C API Specification
* added GrB_DESC_*: predefined descriptor, from v1.3 C API Specification
* many atomics added: for the faster matrix multiply.  These changes have
    not been ported to Microsoft Visual Studio, which only supports a
    subset of "#pragma omp atomic" statements.  This will be resolved in a
    future version; in the meantime, use v3.1.2 with MS Visual Studio
    instead of v3.2.0.