diff --git a/CMakeLists.txt b/CMakeLists.txt index a730ced3dd..a4ef59cf68 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -14,10 +14,10 @@ cmake_minimum_required ( VERSION 3.19 ) # version of SuiteSparse:GraphBLAS -set ( GraphBLAS_DATE "Oct 14, 2022" ) +set ( GraphBLAS_DATE "Oct 21, 2022" ) set ( GraphBLAS_VERSION_MAJOR 7 ) set ( GraphBLAS_VERSION_MINOR 3 ) -set ( GraphBLAS_VERSION_SUB 0 ) +set ( GraphBLAS_VERSION_SUB 1 ) # GraphBLAS C API Specification version, at graphblas.org set ( GraphBLAS_API_DATE "Nov 15, 2021" ) @@ -266,7 +266,7 @@ endif ( ) add_library ( graphblas SHARED ${GRAPHBLAS_SOURCES} ) -SET_TARGET_PROPERTIES ( graphblas PROPERTIES +set_target_properties ( graphblas PROPERTIES VERSION ${GraphBLAS_VERSION_MAJOR}.${GraphBLAS_VERSION_MINOR}.${GraphBLAS_VERSION_SUB} SOVERSION ${GraphBLAS_VERSION_MAJOR} C_STANDARD_REQUIRED 11 @@ -286,7 +286,7 @@ if ( BUILD_GRB_STATIC_LIBRARY ) add_library ( graphblas_static STATIC ${GRAPHBLAS_SOURCES} ) - SET_TARGET_PROPERTIES ( graphblas_static PROPERTIES + set_target_properties ( graphblas_static PROPERTIES VERSION ${GraphBLAS_VERSION_MAJOR}.${GraphBLAS_VERSION_MINOR}.${GraphBLAS_VERSION_SUB} OUTPUT_NAME graphblas SOVERSION ${GraphBLAS_VERSION_MAJOR} @@ -391,7 +391,7 @@ if ( DEMO ) file ( GLOB DEMO_SOURCES "Demo/Source/*.c" ) add_library ( graphblasdemo SHARED ${DEMO_SOURCES} ) - SET_TARGET_PROPERTIES ( graphblasdemo PROPERTIES + set_target_properties ( graphblasdemo PROPERTIES VERSION ${GraphBLAS_VERSION_MAJOR}.${GraphBLAS_VERSION_MINOR}.${GraphBLAS_VERSION_SUB} SOVERSION ${GraphBLAS_VERSION_MAJOR} C_STANDARD_REQUIRED 11 ) @@ -400,7 +400,7 @@ if ( DEMO ) if ( BUILD_GRB_STATIC_LIBRARY ) add_library ( graphblasdemo_static STATIC ${DEMO_SOURCES} ) - SET_TARGET_PROPERTIES ( graphblasdemo_static PROPERTIES + set_target_properties ( graphblasdemo_static PROPERTIES VERSION ${GraphBLAS_VERSION_MAJOR}.${GraphBLAS_VERSION_MINOR}.${GraphBLAS_VERSION_SUB} C_STANDARD_REQUIRED 11 ) set_property ( TARGET graphblasdemo_static PROPERTY C_STANDARD 11 ) diff --git a/CUDA/GB_cuda_kernel.h b/CUDA/GB_cuda_kernel.h index 2f3dc67988..b5f8ccb0bb 100644 --- a/CUDA/GB_cuda_kernel.h +++ b/CUDA/GB_cuda_kernel.h @@ -124,7 +124,7 @@ GB_ADD (c, c, x_op_y) ; /* c += x_op_y */ \ } - #define GB_DOT_TERMINAL( c ) GB_IF_TERMINAL_BREAK (c) + #define GB_DOT_TERMINAL( c ) GB_IF_TERMINAL_BREAK ( c, z ) #if GB_IS_PLUS_PAIR_REAL_SEMIRING diff --git a/Doc/ChangeLog b/Doc/ChangeLog index 773c94a03c..4b209627f8 100644 --- a/Doc/ChangeLog +++ b/Doc/ChangeLog @@ -1,4 +1,13 @@ -Version 7.3.0, Oct 11, 2022 +Version 7.3.1, Oct 21, 2022 + + * workaround for Microsoft Visual Studio bug : MSC 19.2x (in vs2019) + encounters a compiler bug when compiling the FIRST_FC32 and SECOND_FC32 + binary operators. This version adds a flag that disables those + methods. The operators still work, they are just handled by the + slower generic methods. Thanks to Erik Welch, H. Vetinari, and others + in the conda-forge community for tracking this down. + +Version 7.3.0, Oct 14, 2022 * GrB_Matrix: changes to the internal data structure * minor internal changes: A->nvals for sparse/hypersparse diff --git a/Doc/GraphBLAS_UserGuide.pdf b/Doc/GraphBLAS_UserGuide.pdf index 6405e509d3..6b7fabf63a 100644 Binary files a/Doc/GraphBLAS_UserGuide.pdf and b/Doc/GraphBLAS_UserGuide.pdf differ diff --git a/Doc/GraphBLAS_UserGuide.tex b/Doc/GraphBLAS_UserGuide.tex index fff532d867..322ff1f9dd 100644 --- a/Doc/GraphBLAS_UserGuide.tex +++ b/Doc/GraphBLAS_UserGuide.tex @@ -15455,6 +15455,13 @@ \section{Release Notes} \begin{itemize} +\item Version 7.3.1 (Oct 21, 2022) + + \begin{packed_itemize} + \item workaround for a bug in the Microsoft Visual Studio Compiler, + MSC 19.2x (in vs2019). + \end{packed_itemize} + \item Version 7.3.0 (Oct 14, 2022) \begin{packed_itemize} @@ -16121,6 +16128,9 @@ \section{Acknowledgments} I would like to thank Joe Eaton and Corey Nolet for their collaboration on the CUDA kernels (still in progress), and for the support of NVIDIA. +I would like to thank Pat Quillen for his +collaboration and for the support of MathWorks. + I would like to thank John Eaton for his collaboration on the integration with Octave 7. @@ -16152,7 +16162,7 @@ \section{Acknowledgments} \url{https://redislabs.com/blog/new-redisgraph-1-0-achieves-600x-faster-performance-graph-databases/}}). SuiteSparse:GraphBLAS was developed with support from -NVIDIA, Intel, MIT Lincoln Lab, Redis, IBM, +NVIDIA, Intel, MIT Lincoln Lab, MathWorks, Redis, IBM, the National Science Foundation (1514406, 1835499), and Julia Computing. %------------------------------------------------------------------------------- diff --git a/Doc/GraphBLAS_version.tex b/Doc/GraphBLAS_version.tex index 8abf8ca42b..9ba781cdeb 100644 --- a/Doc/GraphBLAS_version.tex +++ b/Doc/GraphBLAS_version.tex @@ -1,5 +1,5 @@ % version of SuiteSparse:GraphBLAS \date{VERSION -7.3.0, -Oct 14, 2022} +7.3.1, +Oct 21, 2022} diff --git a/GraphBLAS/CMakeLists.txt b/GraphBLAS/CMakeLists.txt index 11a6321894..fe23dc0da9 100644 --- a/GraphBLAS/CMakeLists.txt +++ b/GraphBLAS/CMakeLists.txt @@ -17,10 +17,10 @@ cmake_minimum_required ( VERSION 3.19 ) # date version must match ../CMakeLists.txt: # version of SuiteSparse:GraphBLAS -set ( GraphBLAS_DATE "Oct 14, 2022" ) +set ( GraphBLAS_DATE "Oct 21, 2022" ) set ( GraphBLAS_VERSION_MAJOR 7 ) set ( GraphBLAS_VERSION_MINOR 3 ) -set ( GraphBLAS_VERSION_SUB 0 ) +set ( GraphBLAS_VERSION_SUB 1 ) message ( STATUS "Building SuiteSparse:GraphBLAS version: v" ${GraphBLAS_VERSION_MAJOR}.${GraphBLAS_VERSION_MINOR}.${GraphBLAS_VERSION_SUB} diff --git a/Include/GraphBLAS.h b/Include/GraphBLAS.h index de05ca95f1..82877e356a 100644 --- a/Include/GraphBLAS.h +++ b/Include/GraphBLAS.h @@ -221,10 +221,10 @@ // The version of this implementation, and the GraphBLAS API version: #define GxB_IMPLEMENTATION_NAME "SuiteSparse:GraphBLAS" -#define GxB_IMPLEMENTATION_DATE "Oct 14, 2022" +#define GxB_IMPLEMENTATION_DATE "Oct 21, 2022" #define GxB_IMPLEMENTATION_MAJOR 7 #define GxB_IMPLEMENTATION_MINOR 3 -#define GxB_IMPLEMENTATION_SUB 0 +#define GxB_IMPLEMENTATION_SUB 1 #define GxB_SPEC_DATE "Nov 15, 2021" #define GxB_SPEC_MAJOR 2 #define GxB_SPEC_MINOR 0 diff --git a/README.md b/README.md index bfbb2c7873..19a1304f2c 100644 --- a/README.md +++ b/README.md @@ -4,7 +4,7 @@ SuiteSparse:GraphBLAS, Timothy A. Davis, (c) 2017-2022, All Rights Reserved. SPDX-License-Identifier: Apache-2.0 -VERSION 7.3.0, Oct 14, 2022 +VERSION 7.3.1, Oct 21, 2022 SuiteSparse:GraphBLAS is a complete implementation of the GraphBLAS standard, which defines a set of sparse matrix operations on an extended algebra of diff --git a/Source/GB_compiler.h b/Source/GB_compiler.h index 48cd5ac4f8..496b30edf1 100644 --- a/Source/GB_compiler.h +++ b/Source/GB_compiler.h @@ -175,6 +175,19 @@ #endif +//------------------------------------------------------------------------------ +// Workaround for compiler bug in Microsoft Visual Studio 2019 +//------------------------------------------------------------------------------ + +// The GB_COMPILER_MSC_2019 flag disables the FIRST_FC32 and SECOND_FC32 binary +// operators for the MS Visual Studio 2019 compiler (MSC versions 19.20 to +// 19.29). It's possible that the compiler bug appears in 19.30 and later (VS +// 2022), but this hasn't been tested. This macro optimistically assumes the +// bug will be fixed in that version. + +#define GB_COMPILER_MSC_2019 ( GB_COMPILER_MSC && (GB_COMPILER_MAJOR == 19) \ + && (GB_COMPILER_MINOR >= 20) && (GB_COMPILER_MINOR <= 29) ) + //------------------------------------------------------------------------------ // malloc.h: required include file for Microsoft Visual Studio //------------------------------------------------------------------------------ diff --git a/Source/Generated2/GB_binop__first_fc32.c b/Source/Generated2/GB_binop__first_fc32.c index 970f661bb5..1b2c611f6e 100644 --- a/Source/Generated2/GB_binop__first_fc32.c +++ b/Source/Generated2/GB_binop__first_fc32.c @@ -118,7 +118,7 @@ // disable this operator and use the generic case if these conditions hold #define GB_DISABLE \ - (GxB_NO_FIRST || GxB_NO_FC32 || GxB_NO_FIRST_FC32) + (GxB_NO_FIRST || GxB_NO_FC32 || GxB_NO_FIRST_FC32 || GB_COMPILER_MSC_2019) //------------------------------------------------------------------------------ // C += A+B, all 3 matrices dense diff --git a/Source/Generated2/GB_binop__second_fc32.c b/Source/Generated2/GB_binop__second_fc32.c index 243adbfea9..81757dabf6 100644 --- a/Source/Generated2/GB_binop__second_fc32.c +++ b/Source/Generated2/GB_binop__second_fc32.c @@ -118,7 +118,7 @@ // disable this operator and use the generic case if these conditions hold #define GB_DISABLE \ - (GxB_NO_SECOND || GxB_NO_FC32 || GxB_NO_SECOND_FC32) + (GxB_NO_SECOND || GxB_NO_FC32 || GxB_NO_SECOND_FC32 || GB_COMPILER_MSC_2019) //------------------------------------------------------------------------------ // C += A+B, all 3 matrices dense diff --git a/Source/Template/GB_sparse_add_template.c b/Source/Template/GB_sparse_add_template.c index 04a76c6e1f..5c2f00a9da 100644 --- a/Source/Template/GB_sparse_add_template.c +++ b/Source/Template/GB_sparse_add_template.c @@ -395,6 +395,14 @@ { // C (i,j) = alpha + B(i,j) GB_LOAD_B (bij, Bx, pB+p, B_iso) ; + // GB_COMPILER_MSC_2019 workaround: the following + // line of code triggers a bug in the MSC 19.2x + // compiler in Visual Studio 2019, only for the + // FIRST_FC32 and SECOND_FC32 operators. As a + // workaround, this template is not used for + // those operators when compiling GraphBLAS with + // this compiler. Note the bug may also appear + // in VS2022, but this has not yet been tested. GB_BINOP (GB_CX (pC+p), alpha_scalar, bij, i, j) ; } #else diff --git a/Source/codegen_binop_method.m b/Source/codegen_binop_method.m index c53779b5a7..38a2a3134c 100644 --- a/Source/codegen_binop_method.m +++ b/Source/codegen_binop_method.m @@ -224,6 +224,12 @@ function codegen_binop_method (binop, op, xtype) disable = sprintf ('GxB_NO_%s', upper (binop)) ; disable = [disable (sprintf (' || GxB_NO_%s', upper (fname)))] ; disable = [disable (sprintf (' || GxB_NO_%s_%s', upper (binop), upper (fname)))] ; +if (isequal (ytype, 'GxB_FC32_t') && ... + (isequal (binop, 'first') || isequal (binop, 'second'))) + % disable the FIRST_FC32 and SECOND_FC32 binary operators for + % MS Visual Studio 2019. These files trigger a bug in the compiler. + disable = [disable ' || GB_COMPILER_MSC_2019'] ; +end fprintf (f, 'define(`GB_disable'', `(%s)'')\n', disable) ; % ff = fopen ('temp.h', 'a') ; diff --git a/Tcov/log_Oct13.txt b/Tcov/log_Oct13.txt deleted file mode 100644 index 97220e2a76..0000000000 --- a/Tcov/log_Oct13.txt +++ /dev/null @@ -1,141 +0,0 @@ - ----------------------------------------------- [malloc] [cover] -13-Oct 19:31:32 test246 9.1 sec 374: 19981 of 20355 1.8% 40.94/s -13-Oct 19:31:33 test01 0.9 sec 1975: 18006 of 20355 11.5% 2166.50/s -13-Oct 19:31:34 test245 0.2 sec 47: 17959 of 20355 11.8% 268.90/s -13-Oct 19:31:34 test199 0.0 sec 17: 17942 of 20355 11.9% 1542.09/s -13-Oct 19:31:34 test83 0.1 sec 21: 17921 of 20355 12.0% 258.12/s -13-Oct 19:31:34 test210 0.0 sec 7: 17914 of 20355 12.0% 1508.62/s -13-Oct 19:31:34 test165 0.0 sec 12: 17902 of 20355 12.1% 1099.20/s -13-Oct 19:31:34 test219 0.1 sec 11: 17891 of 20355 12.1% 150.11/s -13-Oct 19:31:34 test241 0.3 sec 16: 17875 of 20355 12.2% 46.23/s -13-Oct 19:31:34 test220 0.1 sec 66: 17809 of 20355 12.5% 501.33/s -13-Oct 19:31:34 test211 0.1 sec 26: 17783 of 20355 12.6% 476.16/s -13-Oct 19:31:34 test202 0.1 sec 33: 17750 of 20355 12.8% 222.10/s -13-Oct 19:31:36 test152 1.4 sec 1127: 16623 of 20355 18.3% 809.75/s -13-Oct 19:31:36 test222 0.1 sec 6: 16617 of 20355 18.4% 77.45/s -13-Oct 19:31:36 test240 0.4 sec 42: 16575 of 20355 18.6% 117.50/s -13-Oct 19:31:37 test186 0.5 sec 67: 16508 of 20355 18.9% 129.58/s -13-Oct 19:31:37 test186(0) 0.4 sec 4: 16504 of 20355 18.9% 9.00/s -13-Oct 19:31:38 test186 0.5 sec 3: 16501 of 20355 18.9% 6.57/s -13-Oct 19:31:38 test150 0.2 sec 63: 16438 of 20355 19.2% 316.49/s -13-Oct 19:31:38 test239 0.1 sec 14: 16424 of 20355 19.3% 120.74/s -13-Oct 19:31:38 test235 0.0 sec 12: 16412 of 20355 19.4% 306.81/s -13-Oct 19:31:38 test226 0.0 sec 8: 16404 of 20355 19.4% 639.08/s -13-Oct 19:31:38 test223 0.0 sec 2: 16402 of 20355 19.4% 63.90/s -13-Oct 19:31:38 test204 0.1 sec 21: 16381 of 20355 19.5% 151.52/s -13-Oct 19:31:38 test203 0.1 sec 11: 16370 of 20355 19.6% 135.08/s -13-Oct 19:31:38 test183 0.0 sec 12: 16358 of 20355 19.6% 319.30/s -13-Oct 19:31:39 test179 0.1 sec 26: 16332 of 20355 19.8% 177.37/s -13-Oct 19:31:39 test174 0.1 sec 10: 16322 of 20355 19.8% 177.79/s -13-Oct 19:31:39 test155 0.2 sec 48: 16274 of 20355 20.0% 282.53/s -13-Oct 19:31:40 test156 0.7 sec 258: 16016 of 20355 21.3% 359.18/s -13-Oct 19:31:40 test136 0.2 sec 58: 15958 of 20355 21.6% 298.87/s -13-Oct 19:31:40 test02 0.4 sec 181: 15777 of 20355 22.5% 494.60/s -13-Oct 19:31:40 test109 0.1 sec 12: 15765 of 20355 22.5% 100.04/s -13-Oct 19:31:40 test109 0.0 sec 1: 15764 of 20355 22.6% 297.35/s -13-Oct 19:31:40 test04 0.1 sec 21: 15743 of 20355 22.7% 201.56/s -13-Oct 19:31:40 test207 0.0 sec 1: 15742 of 20355 22.7% 255.62/s -13-Oct 19:31:40 test221 0.0 sec 2: 15740 of 20355 22.7% 259.00/s -13-Oct 19:31:40 test162 0.1 sec 5: 15735 of 20355 22.7% 75.45/s -13-Oct 19:31:42 test159 1.5 sec 135: 15600 of 20355 23.4% 90.37/s -13-Oct 19:31:42 test09 0.0 sec 5: 15595 of 20355 23.4% 494.02/s -13-Oct 19:31:42 test132 0.1 sec 8: 15587 of 20355 23.4% 84.66/s -13-Oct 19:31:48 test141 5.6 sec 543: 15044 of 20355 26.1% 97.00/s -13-Oct 19:31:48 testc2(1,1) 0.4 sec 45: 14999 of 20355 26.3% 110.21/s -13-Oct 19:31:48 test214 0.0 sec 3: 14996 of 20355 26.3% 227.26/s -13-Oct 19:31:48 test213 0.0 sec 4: 14992 of 20355 26.3% 391.58/s -13-Oct 19:31:51 test206 2.7 sec 265: 14727 of 20355 27.6% 99.67/s -13-Oct 19:31:51 test212 0.1 sec 10: 14717 of 20355 27.7% 113.83/s -13-Oct 19:31:51 test128 0.3 sec 53: 14664 of 20355 28.0% 151.52/s -13-Oct 19:31:51 test82 0.1 sec 18: 14646 of 20355 28.0% 199.79/s -13-Oct 19:31:52 test229 1.0 sec 7: 14639 of 20355 28.1% 7.16/s -13-Oct 19:31:53 test144 0.6 sec 2: 14637 of 20355 28.1% 3.35/s -13-Oct 19:32:15 test14 22.1 sec 725: 13912 of 20355 31.7% 32.82/s -13-Oct 19:32:25 test180 9.8 sec 133: 13779 of 20355 32.3% 13.63/s -13-Oct 19:32:28 test236 3.6 sec 73: 13706 of 20355 32.7% 20.35/s -13-Oct 19:32:31 test232 2.8 sec 22: 13684 of 20355 32.8% 7.99/s -13-Oct 19:32:49 test228 17.5 sec 37: 13647 of 20355 33.0% 2.11/s -13-Oct 19:34:48 test154 119.8 sec 1503: 12144 of 20355 40.3% 12.55/s -13-Oct 19:35:04 test238 15.3 sec 70: 12074 of 20355 40.7% 4.56/s -13-Oct 19:35:52 test151b 47.8 sec 144: 11930 of 20355 41.4% 3.01/s -13-Oct 19:35:55 test184 3.1 sec 39: 11891 of 20355 41.6% 12.48/s -13-Oct 19:36:08 test191 13.0 sec 20: 11871 of 20355 41.7% 1.54/s -13-Oct 19:36:59 test188 51.8 sec 194: 11677 of 20355 42.6% 3.74/s -13-Oct 19:37:00 test237 0.7 sec 16: 11661 of 20355 42.7% 21.98/s -13-Oct 19:37:05 test224 5.2 sec 24: 11637 of 20355 42.8% 4.58/s -13-Oct 19:37:08 test196 2.5 sec 11: 11626 of 20355 42.9% 4.44/s -13-Oct 19:37:14 test209 5.7 sec 20: 11606 of 20355 43.0% 3.48/s -13-Oct 19:37:32 test104 18.6 sec 40: 11566 of 20355 43.2% 2.15/s -13-Oct 19:37:40 test189 7.7 sec 1: 11565 of 20355 43.2% 0.13/s -13-Oct 19:38:52 test194 71.9 sec 8: 11557 of 20355 43.2% 0.11/s -13-Oct 19:39:08 test76 15.9 sec 18: 11539 of 20355 43.3% 1.13/s -13-Oct 19:39:46 test244 38.4 sec 17: 11522 of 20355 43.4% 0.44/s -[malloc debugging turned off] -13-Oct 19:39:46 test201 0.0 sec 5: 11517 of 20355 43.4% 688.33/s -13-Oct 19:39:46 test225 0.1 sec 5: 11512 of 20355 43.4% 34.82/s -13-Oct 19:39:46 test170 0.1 sec 1: 11511 of 20355 43.4% 13.06/s -13-Oct 19:39:47 test176 0.1 sec 5: 11506 of 20355 43.5% 58.50/s -13-Oct 19:39:47 test208 0.0 sec 5: 11501 of 20355 43.5% 295.25/s -13-Oct 19:39:47 test216 0.1 sec 3: 11498 of 20355 43.5% 35.58/s -13-Oct 19:39:54 test142 7.3 sec 630: 10868 of 20355 46.6% 86.80/s -13-Oct 19:39:54 test137 0.1 sec 5: 10863 of 20355 46.6% 34.16/s -13-Oct 19:39:54 test139 0.4 sec 2: 10861 of 20355 46.6% 5.48/s -13-Oct 19:39:55 test145 0.2 sec 10: 10851 of 20355 46.7% 60.08/s -13-Oct 19:39:55 test172 0.1 sec 3: 10848 of 20355 46.7% 39.22/s -13-Oct 19:39:55 test148 0.5 sec 6: 10842 of 20355 46.7% 13.11/s -13-Oct 19:39:56 test157 0.6 sec 13: 10829 of 20355 46.8% 20.31/s -13-Oct 19:39:57 test182 1.0 sec 9: 10820 of 20355 46.8% 9.07/s -13-Oct 19:39:57 test108 0.5 sec 1: 10819 of 20355 46.8% 2.20/s -13-Oct 19:39:58 test130 0.9 sec 26: 10793 of 20355 47.0% 27.42/s -13-Oct 19:39:58 test124 0.2 sec 3: 10790 of 20355 47.0% 16.67/s -13-Oct 19:39:58 test138 0.0 sec 1: 10789 of 20355 47.0% 20.03/s -13-Oct 19:40:03 test227 4.9 sec 27: 10762 of 20355 47.1% 5.55/s -13-Oct 19:40:35 test125 32.2 sec 627: 10135 of 20355 50.2% 19.50/s -13-Oct 19:41:51 test234 76.0 sec 69: 10066 of 20355 50.5% 0.91/s -13-Oct 19:42:44 test242 52.0 sec 77: 9989 of 20355 50.9% 1.48/s -13-Oct 19:42:45 test173 1.3 sec 11: 9978 of 20355 51.0% 8.41/s -13-Oct 19:42:48 test200 3.3 sec 10: 9968 of 20355 51.0% 3.00/s -13-Oct 19:42:48 test197 0.1 sec 1: 9967 of 20355 51.0% 7.68/s -13-Oct 19:42:50 test84 1.4 sec 18: 9949 of 20355 51.1% 12.73/s -13-Oct 19:43:04 test19b 13.8 sec 57: 9892 of 20355 51.4% 4.14/s -13-Oct 19:43:13 test19b 9.2 sec 5: 9887 of 20355 51.4% 0.54/s -13-Oct 19:43:13 test133 0.4 sec 2: 9885 of 20355 51.4% 5.24/s -13-Oct 19:43:17 test80 3.8 sec 12: 9873 of 20355 51.5% 3.14/s -13-Oct 19:43:38 test151 20.8 sec 73: 9800 of 20355 51.9% 3.50/s -13-Oct 19:43:56 test23 18.6 sec 88: 9712 of 20355 52.3% 4.73/s -13-Oct 19:43:58 test135 1.9 sec 7: 9705 of 20355 52.3% 3.71/s -13-Oct 19:44:28 test160 29.3 sec 25: 9680 of 20355 52.4% 0.85/s -13-Oct 19:44:33 test54 5.9 sec 20: 9660 of 20355 52.5% 3.41/s -13-Oct 19:44:35 test129 1.2 sec 7: 9653 of 20355 52.6% 5.63/s -13-Oct 19:44:37 test69 2.2 sec 3: 9650 of 20355 52.6% 1.34/s -13-Oct 19:46:12 test230 94.9 sec 104: 9546 of 20355 53.1% 1.10/s -13-Oct 19:56:55 test74 643.5 sec 5796: 3750 of 20355 81.6% 9.01/s -13-Oct 20:01:06 test127 250.4 sec 1606: 2144 of 20355 89.5% 6.41/s -13-Oct 20:01:09 test19 3.6 sec 12: 2132 of 20355 89.5% 3.35/s -13-Oct 20:01:13 test11 3.7 sec 3: 2129 of 20355 89.5% 0.81/s -13-Oct 20:01:42 test160 29.3 sec 4: 2125 of 20355 89.6% 0.14/s -13-Oct 20:01:45 test215 2.8 sec 1: 2124 of 20355 89.6% 0.35/s -13-Oct 20:02:03 test193 17.8 sec 5: 2119 of 20355 89.6% 0.28/s -13-Oct 20:03:23 test195 80.1 sec 36: 2083 of 20355 89.8% 0.45/s -13-Oct 20:03:31 test233 7.8 sec 1: 2082 of 20355 89.8% 0.13/s -13-Oct 20:03:57 test243 26.4 sec 7: 2075 of 20355 89.8% 0.27/s -13-Oct 20:04:07 test29 9.5 sec 2: 2073 of 20355 89.8% 0.21/s -13-Oct 20:04:08 testc2(0,0) 1.3 sec 9: 2064 of 20355 89.9% 7.06/s -13-Oct 20:04:09 testc4(0) 0.6 sec 4: 2060 of 20355 89.9% 6.86/s -13-Oct 20:04:27 testc7(0) 18.4 sec 3: 2057 of 20355 89.9% 0.16/s -13-Oct 20:04:33 testcc(1) 5.8 sec 1: 2056 of 20355 89.9% 0.17/s -13-Oct 20:04:41 test187 8.3 sec 3: 2053 of 20355 89.9% 0.36/s -13-Oct 20:04:47 test192 5.7 sec 1: 2052 of 20355 89.9% 0.17/s -13-Oct 20:05:07 test181 20.0 sec 13: 2039 of 20355 90.0% 0.65/s -13-Oct 20:06:42 test185 95.5 sec 11: 2028 of 20355 90.0% 0.12/s -13-Oct 20:06:58 test53 16.0 sec 4: 2024 of 20355 90.1% 0.25/s -13-Oct 20:07:48 test17 50.1 sec 28: 1996 of 20355 90.2% 0.56/s -13-Oct 20:15:23 test231 454.6 sec 295: 1701 of 20355 91.6% 0.65/s -13-Oct 20:28:18 test10 774.8 sec 793: 908 of 20355 95.5% 1.02/s -13-Oct 20:38:26 test75b 608.0 sec 860: 48 of 20355 99.8% 1.41/s -13-Oct 20:39:58 test21b 92.2 sec 26: 22 of 20355 99.9% 0.28/s -13-Oct 20:41:10 testca(1) 72.2 sec 5: 17 of 20355 99.9% 0.07/s -13-Oct 20:43:04 test81 113.4 sec 1: 16 of 20355 99.9% 0.01/s -13-Oct 20:50:15 test18 431.1 sec 16: all 20355 full 100% 0.04/s -[malloc debugging turned back on] diff --git a/Tcov/log_Oct20.txt b/Tcov/log_Oct20.txt new file mode 100644 index 0000000000..1af9524356 --- /dev/null +++ b/Tcov/log_Oct20.txt @@ -0,0 +1,141 @@ + +---------------------------------------------- [malloc] [cover] +20-Oct 21:21:18 test246 9.2 sec 374: 19981 of 20355 1.8% 40.87/s +20-Oct 21:21:19 test01 1.3 sec 1975: 18006 of 20355 11.5% 1579.29/s +20-Oct 21:21:19 test245 0.2 sec 47: 17959 of 20355 11.8% 295.47/s +20-Oct 21:21:19 test199 0.0 sec 17: 17942 of 20355 11.9% 3497.22/s +20-Oct 21:21:20 test83 0.1 sec 21: 17921 of 20355 12.0% 257.10/s +20-Oct 21:21:20 test210 0.0 sec 7: 17914 of 20355 12.0% 1843.56/s +20-Oct 21:21:20 test165 0.0 sec 12: 17902 of 20355 12.1% 1205.30/s +20-Oct 21:21:20 test219 0.1 sec 11: 17891 of 20355 12.1% 136.75/s +20-Oct 21:21:20 test241 0.3 sec 16: 17875 of 20355 12.2% 61.76/s +20-Oct 21:21:20 test220 0.1 sec 66: 17809 of 20355 12.5% 490.14/s +20-Oct 21:21:20 test211 0.0 sec 26: 17783 of 20355 12.6% 529.87/s +20-Oct 21:21:20 test202 0.2 sec 33: 17750 of 20355 12.8% 199.48/s +20-Oct 21:21:22 test152 1.3 sec 1127: 16623 of 20355 18.3% 889.46/s +20-Oct 21:21:22 test222 0.1 sec 6: 16617 of 20355 18.4% 73.63/s +20-Oct 21:21:22 test240 0.4 sec 42: 16575 of 20355 18.6% 117.36/s +20-Oct 21:21:22 test186 0.5 sec 67: 16508 of 20355 18.9% 126.05/s +20-Oct 21:21:23 test186(0) 0.4 sec 4: 16504 of 20355 18.9% 9.62/s +20-Oct 21:21:23 test186 0.4 sec 3: 16501 of 20355 18.9% 6.69/s +20-Oct 21:21:24 test150 0.2 sec 63: 16438 of 20355 19.2% 339.52/s +20-Oct 21:21:24 test239 0.1 sec 14: 16424 of 20355 19.3% 116.85/s +20-Oct 21:21:24 test235 0.0 sec 12: 16412 of 20355 19.4% 306.66/s +20-Oct 21:21:24 test226 0.0 sec 8: 16404 of 20355 19.4% 687.23/s +20-Oct 21:21:24 test223 0.0 sec 2: 16402 of 20355 19.4% 62.70/s +20-Oct 21:21:24 test204 0.2 sec 21: 16381 of 20355 19.5% 136.99/s +20-Oct 21:21:24 test203 0.1 sec 11: 16370 of 20355 19.6% 141.36/s +20-Oct 21:21:24 test183 0.0 sec 12: 16358 of 20355 19.6% 335.34/s +20-Oct 21:21:24 test179 0.1 sec 26: 16332 of 20355 19.8% 183.85/s +20-Oct 21:21:24 test174 0.0 sec 10: 16322 of 20355 19.8% 216.13/s +20-Oct 21:21:24 test155 0.2 sec 48: 16274 of 20355 20.0% 287.50/s +20-Oct 21:21:25 test156 0.7 sec 258: 16016 of 20355 21.3% 359.93/s +20-Oct 21:21:25 test136 0.2 sec 58: 15958 of 20355 21.6% 282.59/s +20-Oct 21:21:26 test02 0.4 sec 181: 15777 of 20355 22.5% 491.14/s +20-Oct 21:21:26 test109 0.1 sec 12: 15765 of 20355 22.5% 151.35/s +20-Oct 21:21:26 test109 0.0 sec 1: 15764 of 20355 22.6% 289.86/s +20-Oct 21:21:26 test04 0.1 sec 21: 15743 of 20355 22.7% 204.52/s +20-Oct 21:21:26 test207 0.0 sec 1: 15742 of 20355 22.7% 326.26/s +20-Oct 21:21:26 test221 0.0 sec 2: 15740 of 20355 22.7% 286.90/s +20-Oct 21:21:26 test162 0.1 sec 5: 15735 of 20355 22.7% 94.53/s +20-Oct 21:21:28 test159 1.5 sec 135: 15600 of 20355 23.4% 87.19/s +20-Oct 21:21:28 test09 0.0 sec 5: 15595 of 20355 23.4% 851.06/s +20-Oct 21:21:28 test132 0.1 sec 8: 15587 of 20355 23.4% 84.07/s +20-Oct 21:21:33 test141 5.7 sec 543: 15044 of 20355 26.1% 95.41/s +20-Oct 21:21:34 testc2(1,1) 0.4 sec 46: 14998 of 20355 26.3% 112.83/s +20-Oct 21:21:34 test214 0.0 sec 3: 14995 of 20355 26.3% 203.05/s +20-Oct 21:21:34 test213 0.0 sec 4: 14991 of 20355 26.4% 382.74/s +20-Oct 21:21:36 test206 2.6 sec 265: 14726 of 20355 27.7% 101.13/s +20-Oct 21:21:37 test212 0.1 sec 10: 14716 of 20355 27.7% 107.90/s +20-Oct 21:21:37 test128 0.4 sec 53: 14663 of 20355 28.0% 122.35/s +20-Oct 21:21:37 test82 0.1 sec 18: 14645 of 20355 28.1% 203.39/s +20-Oct 21:21:38 test229 1.1 sec 7: 14638 of 20355 28.1% 6.27/s +20-Oct 21:21:39 test144 0.6 sec 2: 14636 of 20355 28.1% 3.51/s +20-Oct 21:22:01 test14 22.3 sec 724: 13912 of 20355 31.7% 32.48/s +20-Oct 21:22:11 test180 10.2 sec 133: 13779 of 20355 32.3% 13.01/s +20-Oct 21:22:15 test236 3.7 sec 73: 13706 of 20355 32.7% 19.69/s +20-Oct 21:22:18 test232 2.6 sec 22: 13684 of 20355 32.8% 8.47/s +20-Oct 21:22:35 test228 17.7 sec 37: 13647 of 20355 33.0% 2.09/s +20-Oct 21:24:38 test154 122.8 sec 1503: 12144 of 20355 40.3% 12.24/s +20-Oct 21:24:54 test238 15.6 sec 70: 12074 of 20355 40.7% 4.50/s +20-Oct 21:25:43 test151b 49.6 sec 144: 11930 of 20355 41.4% 2.90/s +20-Oct 21:25:46 test184 3.0 sec 39: 11891 of 20355 41.6% 12.84/s +20-Oct 21:25:59 test191 13.1 sec 20: 11871 of 20355 41.7% 1.53/s +20-Oct 21:26:52 test188 52.8 sec 194: 11677 of 20355 42.6% 3.67/s +20-Oct 21:26:53 test237 0.8 sec 16: 11661 of 20355 42.7% 21.15/s +20-Oct 21:26:58 test224 5.2 sec 24: 11637 of 20355 42.8% 4.64/s +20-Oct 21:27:01 test196 2.4 sec 11: 11626 of 20355 42.9% 4.55/s +20-Oct 21:27:06 test209 5.8 sec 20: 11606 of 20355 43.0% 3.47/s +20-Oct 21:27:25 test104 18.9 sec 40: 11566 of 20355 43.2% 2.11/s +20-Oct 21:27:33 test189 7.8 sec 1: 11565 of 20355 43.2% 0.13/s +20-Oct 21:28:47 test194 73.4 sec 8: 11557 of 20355 43.2% 0.11/s +20-Oct 21:29:03 test76 16.3 sec 18: 11539 of 20355 43.3% 1.11/s +20-Oct 21:29:42 test244 38.7 sec 17: 11522 of 20355 43.4% 0.44/s +[malloc debugging turned off] +20-Oct 21:29:42 test201 0.0 sec 5: 11517 of 20355 43.4% 1296.68/s +20-Oct 21:29:42 test225 0.1 sec 5: 11512 of 20355 43.4% 34.46/s +20-Oct 21:29:42 test170 0.1 sec 1: 11511 of 20355 43.4% 12.21/s +20-Oct 21:29:42 test176 0.1 sec 5: 11506 of 20355 43.5% 59.14/s +20-Oct 21:29:42 test208 0.0 sec 5: 11501 of 20355 43.5% 270.04/s +20-Oct 21:29:42 test216 0.1 sec 3: 11498 of 20355 43.5% 33.22/s +20-Oct 21:29:49 test142 7.4 sec 630: 10868 of 20355 46.6% 85.65/s +20-Oct 21:29:50 test137 0.2 sec 5: 10863 of 20355 46.6% 31.24/s +20-Oct 21:29:50 test139 0.4 sec 2: 10861 of 20355 46.6% 5.49/s +20-Oct 21:29:50 test145 0.2 sec 10: 10851 of 20355 46.7% 56.72/s +20-Oct 21:29:50 test172 0.1 sec 3: 10848 of 20355 46.7% 39.24/s +20-Oct 21:29:51 test148 0.5 sec 6: 10842 of 20355 46.7% 13.11/s +20-Oct 21:29:51 test157 0.7 sec 13: 10829 of 20355 46.8% 18.17/s +20-Oct 21:29:52 test182 1.0 sec 9: 10820 of 20355 46.8% 9.07/s +20-Oct 21:29:53 test108 0.4 sec 1: 10819 of 20355 46.8% 2.36/s +20-Oct 21:29:54 test130 1.0 sec 26: 10793 of 20355 47.0% 27.36/s +20-Oct 21:29:54 test124 0.2 sec 3: 10790 of 20355 47.0% 17.39/s +20-Oct 21:29:54 test138 0.0 sec 1: 10789 of 20355 47.0% 21.51/s +20-Oct 21:29:59 test227 5.0 sec 27: 10762 of 20355 47.1% 5.39/s +20-Oct 21:30:31 test125 32.2 sec 627: 10135 of 20355 50.2% 19.50/s +20-Oct 21:31:49 test234 78.1 sec 69: 10066 of 20355 50.5% 0.88/s +20-Oct 21:32:42 test242 52.9 sec 77: 9989 of 20355 50.9% 1.46/s +20-Oct 21:32:44 test173 1.3 sec 11: 9978 of 20355 51.0% 8.61/s +20-Oct 21:32:47 test200 3.5 sec 10: 9968 of 20355 51.0% 2.89/s +20-Oct 21:32:47 test197 0.1 sec 1: 9967 of 20355 51.0% 7.56/s +20-Oct 21:32:49 test84 1.5 sec 18: 9949 of 20355 51.1% 12.27/s +20-Oct 21:33:03 test19b 14.1 sec 57: 9892 of 20355 51.4% 4.04/s +20-Oct 21:33:13 test19b 9.8 sec 5: 9887 of 20355 51.4% 0.51/s +20-Oct 21:33:13 test133 0.4 sec 2: 9885 of 20355 51.4% 5.05/s +20-Oct 21:33:17 test80 3.8 sec 12: 9873 of 20355 51.5% 3.13/s +20-Oct 21:33:38 test151 21.4 sec 73: 9800 of 20355 51.9% 3.41/s +20-Oct 21:33:57 test23 18.7 sec 88: 9712 of 20355 52.3% 4.72/s +20-Oct 21:33:59 test135 1.9 sec 7: 9705 of 20355 52.3% 3.71/s +20-Oct 21:34:29 test160 30.5 sec 25: 9680 of 20355 52.4% 0.82/s +20-Oct 21:34:35 test54 5.9 sec 20: 9660 of 20355 52.5% 3.39/s +20-Oct 21:34:36 test129 1.3 sec 7: 9653 of 20355 52.6% 5.59/s +20-Oct 21:34:39 test69 2.1 sec 3: 9650 of 20355 52.6% 1.40/s +20-Oct 21:36:14 test230 95.9 sec 104: 9546 of 20355 53.1% 1.08/s +20-Oct 21:47:01 test74 646.1 sec 5796: 3750 of 20355 81.6% 8.97/s +20-Oct 21:51:16 test127 255.6 sec 1606: 2144 of 20355 89.5% 6.28/s +20-Oct 21:51:20 test19 3.6 sec 12: 2132 of 20355 89.5% 3.36/s +20-Oct 21:51:23 test11 3.7 sec 3: 2129 of 20355 89.5% 0.82/s +20-Oct 21:51:54 test160 30.6 sec 4: 2125 of 20355 89.6% 0.13/s +20-Oct 21:51:57 test215 2.8 sec 1: 2124 of 20355 89.6% 0.36/s +20-Oct 21:52:15 test193 17.9 sec 5: 2119 of 20355 89.6% 0.28/s +20-Oct 21:53:38 test195 82.9 sec 36: 2083 of 20355 89.8% 0.43/s +20-Oct 21:53:45 test233 7.8 sec 1: 2082 of 20355 89.8% 0.13/s +20-Oct 21:54:12 test243 26.7 sec 7: 2075 of 20355 89.8% 0.26/s +20-Oct 21:54:21 test29 9.4 sec 2: 2073 of 20355 89.8% 0.21/s +20-Oct 21:54:23 testc2(0,0) 1.3 sec 9: 2064 of 20355 89.9% 6.85/s +20-Oct 21:54:23 testc4(0) 0.7 sec 4: 2060 of 20355 89.9% 6.12/s +20-Oct 21:54:42 testc7(0) 18.8 sec 3: 2057 of 20355 89.9% 0.16/s +20-Oct 21:54:48 testcc(1) 5.9 sec 1: 2056 of 20355 89.9% 0.17/s +20-Oct 21:54:57 test187 8.4 sec 3: 2053 of 20355 89.9% 0.36/s +20-Oct 21:55:02 test192 5.8 sec 1: 2052 of 20355 89.9% 0.17/s +20-Oct 21:55:23 test181 20.3 sec 13: 2039 of 20355 90.0% 0.64/s +20-Oct 21:56:59 test185 96.0 sec 11: 2028 of 20355 90.0% 0.11/s +20-Oct 21:57:15 test53 16.3 sec 4: 2024 of 20355 90.1% 0.25/s +20-Oct 21:58:06 test17 50.8 sec 28: 1996 of 20355 90.2% 0.55/s +20-Oct 22:05:48 test231 462.4 sec 295: 1701 of 20355 91.6% 0.64/s +20-Oct 22:19:01 test10 792.4 sec 793: 908 of 20355 95.5% 1.00/s +20-Oct 22:29:16 test75b 615.7 sec 860: 48 of 20355 99.8% 1.40/s +20-Oct 22:30:50 test21b 93.6 sec 26: 22 of 20355 99.9% 0.28/s +20-Oct 22:32:01 testca(1) 71.4 sec 5: 17 of 20355 99.9% 0.07/s +20-Oct 22:33:55 test81 113.6 sec 1: 16 of 20355 99.9% 0.01/s +20-Oct 22:41:14 test18 439.2 sec 16: all 20355 full 100% 0.04/s +[malloc debugging turned back on] diff --git a/Test/test128.m b/Test/test128.m index 2bd79b2855..8d6fc014cb 100644 --- a/Test/test128.m +++ b/Test/test128.m @@ -43,6 +43,30 @@ S = sparse (m,n) ; X = sparse (rand (m,n)) ; +% test the workaround for the GB_COMPILER_MSC_2019 bug in the +% Microsoft C compiler +A.class = 'single complex' ; +B.class = 'single complex' ; +T.matrix = sparse (m,n) ; +T.class = 'single complex' ; +GrB.burble (1) ; +for B_hyper = 0:1 + for A_hyper = 0:1 + A.is_hyper = A_hyper ; + B.is_hyper = B_hyper ; + C1 = GB_spec_Matrix_eWiseUnion(T, [ ], [ ], 'first', A, 1, B, 2, [ ]) ; + C4 = GB_mex_Matrix_eWiseUnion (T, [ ], [ ], 'first', A, 1, B, 2, [ ]) ; + GB_spec_compare (C1, C4) ; + C1 = GB_spec_Matrix_eWiseUnion(T, [ ], [ ], 'second', A, 1, B, 2, [ ]) ; + C4 = GB_mex_Matrix_eWiseUnion (T, [ ], [ ], 'second', A, 1, B, 2, [ ]) ; + GB_spec_compare (C1, C4) ; + end +end +GrB.burble (0) ; + +A.class = 'double' ; +B.class = 'double' ; + for B_hyper = 0:1 for A_hyper = 0:1 A.is_hyper = A_hyper ; diff --git a/alternative/Makefile b/alternative/Makefile index 7b39ddd8f3..ab61c3c138 100644 --- a/alternative/Makefile +++ b/alternative/Makefile @@ -21,7 +21,7 @@ default: library # This version info must match ../CMakeLists.txt VER1 = 7 VER2 = 3 -VER3 = 0 +VER3 = 1 # pick your compiler: CC = gcc diff --git a/rmm_wrap/CMakeLists.txt b/rmm_wrap/CMakeLists.txt index 3fc0ade50e..74d87ba965 100644 --- a/rmm_wrap/CMakeLists.txt +++ b/rmm_wrap/CMakeLists.txt @@ -43,7 +43,7 @@ include_directories(${CMAKE_CURRENT_BINARY_DIR}/external_includes/rmm/include) add_library(rmm_wrap rmm_wrap.cpp rmm_wrap.hpp rmm_wrap.h) -SET_TARGET_PROPERTIES (rmm_wrap PROPERTIES +set_target_properties (rmm_wrap PROPERTIES VERSION ${GraphBLAS_VERSION_MAJOR}.${GraphBLAS_VERSION_MINOR}.${GraphBLAS_VERSION_SUB} SOVERSION ${GraphBLAS_VERSION_MAJOR} C_STANDARD_REQUIRED 11