From 7feba664b6dfbc1c14c7ee3a8710f92ca63763dcf88339a00f51c6158c30b740 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Tue, 2 Nov 2021 20:38:22 +0000 Subject: [PATCH 1/2] - Update to release 1.2.0.10 OBS-URL: https://build.opensuse.org/package/show/science/librsb?expand=0&rev=16 --- librsb-1.2.0.10.tar.gz | 3 +++ librsb-1.2.0.9.tar.gz | 3 --- librsb.changes | 17 +++++++++++++++++ librsb.spec | 6 +++--- reproducible.patch | 24 +++++++++++------------- 5 files changed, 34 insertions(+), 19 deletions(-) create mode 100644 librsb-1.2.0.10.tar.gz delete mode 100644 librsb-1.2.0.9.tar.gz diff --git a/librsb-1.2.0.10.tar.gz b/librsb-1.2.0.10.tar.gz new file mode 100644 index 0000000..cc58b27 --- /dev/null +++ b/librsb-1.2.0.10.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:ec49f3f78a7c43fc9e10976593d100aa49b1863309ed8fa3ccbb7aad52d2f7b8 +size 2396145 diff --git a/librsb-1.2.0.9.tar.gz b/librsb-1.2.0.9.tar.gz deleted file mode 100644 index e0150c9..0000000 --- a/librsb-1.2.0.9.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:f421f5d572461601120933e3c1cfee2ca69e6ecc92cbb11baa4e86bdedd3d9fa -size 2332153 diff --git a/librsb.changes b/librsb.changes index a4e0d7f..1eba461 100644 --- a/librsb.changes +++ b/librsb.changes @@ -1,3 +1,20 @@ +------------------------------------------------------------------- +Tue Nov 2 20:24:59 UTC 2021 - Jan Engelhardt + +- Update to release 1.2.0.10 + * rsb_spmm(...,RSB_FLAG_WANT_ROW_MAJOR_ORDER,...) internals had + swapped ldB and ldC so having ldB > ldC could lead to a + crash; with ldC < ldB, to wrong results. + * rsb_spmm(...,RSB_FLAG_WANT_ROW_MAJOR_ORDER,...) on matrix + with RSB_FLAG_UNIT_DIAG_IMPLICIT could have computed wrong + results. + * rsb_tune_spmm()/rsb_tune_spsm() could have crashed if called + with order==RSB_FLAG_WANT_ROW_MAJOR_ORDER and auto leading + dimensions and implicit operands (ldB==0 and Bp==NULL, ldC==0 + and Cp==NULL). + * rsb_mtx_get_rows_sparse() with: was ignoring + RSB_TRANSPOSITION_C. + ------------------------------------------------------------------- Thu Dec 24 12:33:02 UTC 2020 - Jan Engelhardt diff --git a/librsb.spec b/librsb.spec index e0efeae..8bfdca5 100644 --- a/librsb.spec +++ b/librsb.spec @@ -1,7 +1,7 @@ # # spec file for package librsb # -# Copyright (c) 2020 SUSE LLC +# Copyright (c) 2021 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ Name: librsb %define lname librsb0 -Version: 1.2.0.9 +Version: 1.2.0.10 Release: 0 Summary: Shared memory parallel sparse matrix and sparse BLAS library License: LGPL-3.0-or-later @@ -64,7 +64,7 @@ librsb is a library for sparse matrix computations featuring the Recursive Sparse Blocks (RSB) matrix format. This format allows cache efficient and multi-threaded (that is, shared memory parallel) operations on large sparse matrices. - + This subpackage contains libraries and header files for developing applications that want to make use of librsb. diff --git a/reproducible.patch b/reproducible.patch index 2557a64..bef9484 100644 --- a/reproducible.patch +++ b/reproducible.patch @@ -12,27 +12,25 @@ See https://reproducible-builds.org/ for why this is good. configure.ac | 2 ++ 2 files changed, 4 insertions(+) -Index: librsb-1.2.0.8/configure +Index: librsb-1.2.0.10/configure =================================================================== ---- librsb-1.2.0.8.orig/configure -+++ librsb-1.2.0.8/configure -@@ -23751,9 +23751,11 @@ cat >>confdefs.h <<_ACEOF - _ACEOF +--- librsb-1.2.0.10.orig/configure ++++ librsb-1.2.0.10/configure +@@ -20614,7 +20614,9 @@ printf "%s\n" "#define RSB_WANT_IO_LEVEL + printf "%s\n" "#define RSB_USER_SET_MEM_HIERARCHY_INFO \"$RSB_USER_SET_MEM_HIERARCHY_INFO\"" >>confdefs.h +if test "x$memhinfo" = x; then - cat >>confdefs.h <<_ACEOF - #define RSB_DETECTED_MEM_HIERARCHY_INFO "$RSB_DETECTED_MEM_HIERARCHY_INFO" - _ACEOF + printf "%s\n" "#define RSB_DETECTED_MEM_HIERARCHY_INFO \"$RSB_DETECTED_MEM_HIERARCHY_INFO\"" >>confdefs.h +fi - cat >>confdefs.h <<_ACEOF -Index: librsb-1.2.0.8/configure.ac + printf "%s\n" "#define RSB_CONST_MAX_SUPPORTED_THREADS $RSB_CONST_MAX_SUPPORTED_THREADS" >>confdefs.h +Index: librsb-1.2.0.10/configure.ac =================================================================== ---- librsb-1.2.0.8.orig/configure.ac -+++ librsb-1.2.0.8/configure.ac -@@ -324,7 +324,9 @@ if test "x${detected_memhinfo}" = x -a " +--- librsb-1.2.0.10.orig/configure.ac ++++ librsb-1.2.0.10/configure.ac +@@ -329,7 +329,9 @@ if test "x${detected_memhinfo}" = x -a " memhinfo="${FALLBACK_MEM_HIERARCHY_INFO}" fi AC_SUBST([RSB_USER_SET_MEM_HIERARCHY_INFO],"${memhinfo}") From c0d14a7364c27294f27684a51d4ec7a7e6305dc2c512da08769f7b42464808e9 Mon Sep 17 00:00:00 2001 From: Jan Engelhardt Date: Thu, 21 Apr 2022 10:35:58 +0000 Subject: [PATCH 2/2] - Update to release 1.3.0.0 OBS-URL: https://build.opensuse.org/package/show/science/librsb?expand=0&rev=17 --- librsb-1.2.0.10.tar.gz | 3 --- librsb-1.3.0.0.tar.gz | 3 +++ librsb.changes | 16 ++++++++++++++++ librsb.spec | 5 +++-- reproducible.patch | 24 +++++++++++++----------- 5 files changed, 35 insertions(+), 16 deletions(-) delete mode 100644 librsb-1.2.0.10.tar.gz create mode 100644 librsb-1.3.0.0.tar.gz diff --git a/librsb-1.2.0.10.tar.gz b/librsb-1.2.0.10.tar.gz deleted file mode 100644 index cc58b27..0000000 --- a/librsb-1.2.0.10.tar.gz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:ec49f3f78a7c43fc9e10976593d100aa49b1863309ed8fa3ccbb7aad52d2f7b8 -size 2396145 diff --git a/librsb-1.3.0.0.tar.gz b/librsb-1.3.0.0.tar.gz new file mode 100644 index 0000000..ed8d20a --- /dev/null +++ b/librsb-1.3.0.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:2ac8725d1f988f57df9383ae6b0bb2ed221ec935187d31ebb62ea95ee868a790 +size 4302867 diff --git a/librsb.changes b/librsb.changes index 1eba461..fac3777 100644 --- a/librsb.changes +++ b/librsb.changes @@ -1,3 +1,19 @@ +------------------------------------------------------------------- +Thu Apr 21 10:20:35 UTC 2022 - Jan Engelhardt + +- Update to release 1.3.0.0 + * Considerably improved performance of rsb_spmm()/usmm() via + new kernels (can be turned off at runtime by setting + 'RSB_WANT_RSBPP=0' in the environment). + * Added a C++ API (classes RsbMatrix and RsbLib) in new header + . + * Environment variable 'RSB_NUM_THREADS' now used by default + (implicit configure '--enable-rsb-num-threads'). + * Fixed integer overflow situations with limit-large matrices. + * Improved parallelism of rsb_spmv()/rsb_spmm() a bit (no + overly strict locking). + * Improved performance of rsb_spmv()/rsb_spmm() beta-scaling. + ------------------------------------------------------------------- Tue Nov 2 20:24:59 UTC 2021 - Jan Engelhardt diff --git a/librsb.spec b/librsb.spec index 8bfdca5..30acda0 100644 --- a/librsb.spec +++ b/librsb.spec @@ -1,7 +1,7 @@ # # spec file for package librsb # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -18,7 +18,7 @@ Name: librsb %define lname librsb0 -Version: 1.2.0.10 +Version: 1.3.0.0 Release: 0 Summary: Shared memory parallel sparse matrix and sparse BLAS library License: LGPL-3.0-or-later @@ -30,6 +30,7 @@ Patch1: pun.diff Patch2: reproducible.patch BuildRequires: automake BuildRequires: fdupes +BuildRequires: gcc-c++ BuildRequires: gcc-fortran BuildRequires: gsl-devel BuildRequires: libtool diff --git a/reproducible.patch b/reproducible.patch index bef9484..507c438 100644 --- a/reproducible.patch +++ b/reproducible.patch @@ -12,25 +12,27 @@ See https://reproducible-builds.org/ for why this is good. configure.ac | 2 ++ 2 files changed, 4 insertions(+) -Index: librsb-1.2.0.10/configure +Index: librsb-1.3.0.0/configure =================================================================== ---- librsb-1.2.0.10.orig/configure -+++ librsb-1.2.0.10/configure -@@ -20614,7 +20614,9 @@ printf "%s\n" "#define RSB_WANT_IO_LEVEL - printf "%s\n" "#define RSB_USER_SET_MEM_HIERARCHY_INFO \"$RSB_USER_SET_MEM_HIERARCHY_INFO\"" >>confdefs.h +--- librsb-1.3.0.0.orig/configure ++++ librsb-1.3.0.0/configure +@@ -25647,9 +25647,11 @@ cat >>confdefs.h <<_ACEOF + _ACEOF +if test "x$memhinfo" = x; then - printf "%s\n" "#define RSB_DETECTED_MEM_HIERARCHY_INFO \"$RSB_DETECTED_MEM_HIERARCHY_INFO\"" >>confdefs.h + cat >>confdefs.h <<_ACEOF + #define RSB_DETECTED_MEM_HIERARCHY_INFO "$RSB_DETECTED_MEM_HIERARCHY_INFO" + _ACEOF +fi - printf "%s\n" "#define RSB_CONST_MAX_SUPPORTED_THREADS $RSB_CONST_MAX_SUPPORTED_THREADS" >>confdefs.h -Index: librsb-1.2.0.10/configure.ac + cat >>confdefs.h <<_ACEOF +Index: librsb-1.3.0.0/configure.ac =================================================================== ---- librsb-1.2.0.10.orig/configure.ac -+++ librsb-1.2.0.10/configure.ac -@@ -329,7 +329,9 @@ if test "x${detected_memhinfo}" = x -a " +--- librsb-1.3.0.0.orig/configure.ac ++++ librsb-1.3.0.0/configure.ac +@@ -538,7 +538,9 @@ if test "x${detected_memhinfo}" = x -a " memhinfo="${FALLBACK_MEM_HIERARCHY_INFO}" fi AC_SUBST([RSB_USER_SET_MEM_HIERARCHY_INFO],"${memhinfo}")