Skip to content

Commit

Permalink
Merge pull request #821 from DrTimothyAldenDavis/dev2
Browse files Browse the repository at this point in the history
sync with dev2 (target date, GraphBLAS 9.3.0)
  • Loading branch information
DrTimothyAldenDavis authored Jun 1, 2024
2 parents bb783e7 + 0648a81 commit c1ea469
Show file tree
Hide file tree
Showing 3,777 changed files with 45,657 additions and 42,430 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
2 changes: 1 addition & 1 deletion CHOLMOD/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
# cmake 3.22 is required to find the BLAS/LAPACK
cmake_minimum_required ( VERSION 3.22 )

set ( CHOLMOD_DATE "Apr XX, 2024" ) # FIXME NOW
set ( CHOLMOD_DATE "June XX, 2024" ) # FIXME NOW
set ( CHOLMOD_VERSION_MAJOR 5 CACHE STRING "" FORCE )
set ( CHOLMOD_VERSION_MINOR 3 CACHE STRING "" FORCE )
set ( CHOLMOD_VERSION_SUB 0 CACHE STRING "" FORCE )
Expand Down
Binary file modified CHOLMOD/Doc/CHOLMOD_UserGuide.pdf
Binary file not shown.
2 changes: 1 addition & 1 deletion CHOLMOD/Doc/ChangeLog
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Apr XX, 2024: version 5.3.0 FIXME NOW
June XX, 2024: version 5.3.0 FIXME NOW

* added cholmod_query: to deterimine at run time which modules
of CHOLMOD have been compiled into the libcholmod.so.
Expand Down
2 changes: 1 addition & 1 deletion CHOLMOD/Doc/cholmod_version.tex
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
% version of SuiteSparse/CHOLMOD
\date{VERSION 5.3.0, Apr XX, 2024}
\date{VERSION 5.3.0, June XX, 2024}
2 changes: 1 addition & 1 deletion CHOLMOD/Include/cholmod.h
Original file line number Diff line number Diff line change
Expand Up @@ -246,7 +246,7 @@
// version control
//------------------------------------------------------------------------------

#define CHOLMOD_DATE "Apr XX, 2024"
#define CHOLMOD_DATE "June XX, 2024"
#define CHOLMOD_MAIN_VERSION 5
#define CHOLMOD_SUB_VERSION 3
#define CHOLMOD_SUBSUB_VERSION 0
Expand Down
2 changes: 1 addition & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -111,7 +111,7 @@ include ( SuiteSparsePolicy )

if ( SUITESPARSE_USE_SYSTEM_GRAPHBLAS )
list ( REMOVE_ITEM SUITESPARSE_ENABLE_PROJECTS "graphblas" )
find_package ( GraphBLAS 9.2.0 REQUIRED )
find_package ( GraphBLAS 9.3.0 REQUIRED )
else ( )
if ( "lagraph" IN_LIST SUITESPARSE_ENABLE_PROJECTS )
# LAGraph requires GraphBLAS.
Expand Down
6 changes: 3 additions & 3 deletions ChangeLog
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
May XX, 2024: version 7.8.0 FIXME NOW
June XX, 2024: version 7.8.0 FIXME NOW

* ParU 1.0.0: first stable release
* CHOLMOD 5.3.0: added cholmod_query, and #define's in cholmod.h,
to query which Modules and features have been configured.
* GraphBLAS 9.2.0: simpler MATLAB install; sanitize environment variables
* GraphBLAS 9.3.0: simpler MATLAB install; sanitize environment variables
* SPQR 4.3.4: changes to reflect updates to CHOLMOD
* SPEX 3.1.1: control Python interface, fix build issues on Mac; this
will likely be replace with SPEX 3.2.0 with additional updates,
Expand All @@ -19,7 +19,7 @@ May XX, 2024: version 7.8.0 FIXME NOW
CSparse 4.3.2
CXSparse 4.4.0
Example 1.8.0 *
GraphBLAS 9.2.0 *
GraphBLAS 9.3.0 *
KLU 2.3.3
LDL 3.3.2
LAGraph 1.1.3
Expand Down
4 changes: 2 additions & 2 deletions Example/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,7 @@ message ( STATUS "MY prefix path: ${CMAKE_PREFIX_PATH}" )
#-------------------------------------------------------------------------------

# cmake inserts the date and version number into Include/my.h:
set ( MY_DATE "Apr XX, 2024" ) # FIXME NOW
set ( MY_DATE "June XX, 2024" ) # FIXME NOW
set ( MY_VERSION_MAJOR 1 )
set ( MY_VERSION_MINOR 8 )
set ( MY_VERSION_PATCH 0 )
Expand Down Expand Up @@ -95,7 +95,7 @@ find_package ( CCOLAMD 3.3.3 REQUIRED )
find_package ( CHOLMOD 5.3.0 REQUIRED )
find_package ( COLAMD 3.3.3 REQUIRED )
find_package ( CXSparse 4.4.0 REQUIRED )
find_package ( GraphBLAS 9.2.0 )
find_package ( GraphBLAS 9.3.0 )
find_package ( KLU 2.3.3 REQUIRED )
find_package ( KLU_CHOLMOD 2.3.3 REQUIRED )
find_package ( LDL 3.3.2 REQUIRED )
Expand Down
4 changes: 2 additions & 2 deletions Example/Include/my_internal.h
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,8 @@
#if ! defined (NO_GRAPHBLAS)
#include "GraphBLAS.h"
#if !defined ( GxB_SUITESPARSE_GRAPHBLAS ) || \
GxB_IMPLEMENTATION < GxB_VERSION (9,2,0)
#error "This library requires SuiteSparse:GraphBLAS 9.2.0 or later"
GxB_IMPLEMENTATION < GxB_VERSION (9,3,0)
#error "This library requires SuiteSparse:GraphBLAS 9.3.0 or later"
#endif
#endif

Expand Down
87 changes: 38 additions & 49 deletions GraphBLAS/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -207,17 +207,35 @@ configure_file ( "Config/README.md.in"
# include directories for both graphblas and the demos
#-------------------------------------------------------------------------------

if ( GRAPHBLAS_COMPACT )
# do not compile the FactoryKernels
include_directories ( Source/Template Source Include Source/Shared
Config xxHash Config lz4 zstd zstd/zstd_subset JITpackage
Source/Factories Demo/Include rmm_wrap Source/JitKernels )
else ( )
include_directories ( Source/Template Source Include Source/Shared
Config xxHash Config lz4 zstd zstd/zstd_subset JITpackage
Source/FactoryKernels
Source/Factories Demo/Include rmm_wrap Source/JitKernels )
endif ( )
include_directories ( ${PROJECT_SOURCE_DIR} Source Include Config
xxHash lz4 zstd zstd/zstd_subset JITpackage Demo/Include rmm_wrap
# include all Source/* folders that have include/ or template/ subfolders:
Source/apply
Source/assign
Source/builder
Source/builtin
Source/callback
Source/concat
Source/convert
Source/ewise
Source/hyper
Source/jit_kernels
Source/math
Source/memory
Source/monoid
Source/mxm
Source/ok
Source/omp
Source/print
Source/reduce
Source/select
Source/split
Source/slice
Source/transpose
Source/type
Source/wait
Source/werk
)

#-------------------------------------------------------------------------------
# compiler options
Expand All @@ -229,50 +247,21 @@ include ( GraphBLAS_compiler_options )
# dynamic graphblas library properties
#-------------------------------------------------------------------------------

# Notes from Sebastien Villemot ([email protected]):
# SOVERSION policy: if a binary compiled against the old version of the shared
# library needs recompiling in order to work with the new version, then a
# SO_VERSION increase # is needed. Otherwise not. Examples of the changes that
# require a SO_VERSION increase:
#
# - a public function or static variable is removed
# - the prototype of a public function changes
# - the integer value attached to a public #define or enum changes
# - the fields of a public structure are modified
#
# Examples of changes that do not require a SO_VERSION increase:
#
# - a new public function or static variable is added
# - a private function or static variable is removed or modified
# - changes in the internals of a structure that is opaque to the calling
# program (i.e. is only a pointer manipulated through public functions of
# the library)
# - a public enum is extended (by adding a new item at the end, but without
# changing the already existing items)
file ( GLOB GRAPHBLAS_SOURCES "PreJIT/*.c" "Config/*.c" "Source/*/*.c" )

if ( NOT GRAPHBLAS_COMPACT )
# compile the FactoryKernels
file ( GLOB GRAPHBLAS_FACTORYKERNELS "FactoryKernels/*.c" )
list ( APPEND GRAPHBLAS_SOURCES ${GRAPHBLAS_FACTORYKERNELS} )
endif ( )

if ( GRAPHBLAS_USE_JIT )
# generate compressed JIT sources
add_subdirectory ( JITpackage )
if ( GRAPHBLAS_COMPACT )
# with the JIT; but do not compile the FactoryKernels
file ( GLOB GRAPHBLAS_SOURCES "Source/*.c" "Config/*.c" "PreJIT/*.c" )
else ( )
# with the JIT and the FactoryKernels
file ( GLOB GRAPHBLAS_SOURCES "Source/*.c" "Config/*.c" "PreJIT/*.c"
"Source/FactoryKernels/*.c" )
endif ( )
# GLOB does not include files that do not yet exist, so prepend
# the GB_JITpackage.c file here:
list ( PREPEND GRAPHBLAS_SOURCES $<TARGET_PROPERTY:GB_JITpackage,GENERATED_FILE> )
else ( )
if ( GRAPHBLAS_COMPACT )
# no JIT, do not compile the FactoryKernels
file ( GLOB GRAPHBLAS_SOURCES "Source/*.c" "Config/*.c" "PreJIT/*.c" )
else ( )
# no JIT, but do compile the FactoryKernels
file ( GLOB GRAPHBLAS_SOURCES "Source/*.c" "Config/*.c" "PreJIT/*.c"
"Source/FactoryKernels/*.c" )
endif ( )
list ( PREPEND GRAPHBLAS_SOURCES
$<TARGET_PROPERTY:GB_JITpackage,GENERATED_FILE> )
endif ( )

if ( BUILD_SHARED_LIBS )
Expand Down
27 changes: 9 additions & 18 deletions GraphBLAS/CUDA/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,29 +38,20 @@ set_target_properties ( GraphBLAS_CUDA PROPERTIES
C_STANDARD 11
C_STANDARD_REQUIRED ON )

# find rmm_wrap, the malloc/calloc/realloc/free wrapper for the Rapids
# memory manager
set ( RMM_WRAP_INCLUDES "../rmm_wrap" )

message ( STATUS "RMM_WRAP_INCLUDES: ${RMM_WRAP_INCLUDES}" )
set ( GRAPHBLAS_CUDA_INCLUDES
${RMM_WRAP_INCLUDES}
../Source
../Source/Shared
../Source/Template
../Source/Factories
Template
../Include
../CUDA )

message ( STATUS "GraphBLAS CUDA includes: ${GRAPHBLAS_CUDA_INCLUDES}" )

#-------------------------------------------------------------------------------
# GraphBLAS_CUDA properties
#-------------------------------------------------------------------------------

target_include_directories ( GraphBLAS_CUDA PRIVATE
${GRAPHBLAS_CUDA_INCLUDES})
${PROJECT_SOURCE_DIR}
${PROJECT_SOURCE_DIR}/../
include
../Include
../rmm_wrap
../Source
../Source/builtin
)

set_target_properties ( GraphBLAS_CUDA PROPERTIES POSITION_INDEPENDENT_CODE ON )
set_target_properties ( GraphBLAS_CUDA PROPERTIES CUDA_SEPARABLE_COMPILATION ON )
# FIXME: use SUITESPARSE_CUDA_ARCHITECTURES
Expand Down
17 changes: 4 additions & 13 deletions GraphBLAS/CUDA/GB_cuda.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,23 +11,14 @@
#ifndef GB_CUDA_HPP
#define GB_CUDA_HPP

extern "C"
{
#include "GB_dev.h"
#include "GB_compiler.h"
#include "GB_cpu_features.h"
#include "GB_warnings.h"
}

#include "GraphBLAS_cuda.hpp"
#include "CUDA/include/GraphBLAS_cuda.hpp"

extern "C"
{
#include <cassert>
#include <cmath>
#include "GB.h"
#include "GB_stringify.h"
#include "GB_iceil.h"
#include "jitifyer/GB_stringify.h"
}

// Finally, include the CUDA definitions
Expand All @@ -40,8 +31,8 @@ extern "C"
#include <stdint.h>
#include <stdio.h>

#include "GB_cuda_error.hpp"
#include "GB_cuda_timer.hpp"
#include "CUDA/include/GB_cuda_error.hpp"
#include "CUDA/include/GB_cuda_timer.hpp"

//------------------------------------------------------------------------------
// prefetch and memadvise
Expand Down
1 change: 0 additions & 1 deletion GraphBLAS/CUDA/GB_cuda_AxB.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
#define GB_CUDA_AXB_H

#include "GB_cuda.hpp"
#include "GB_hash.h"

GrB_Info GB_cuda_AxB_dot3_jit
(
Expand Down
1 change: 0 additions & 1 deletion GraphBLAS/CUDA/GB_cuda_apply_binop_branch.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
#include "GraphBLAS_cuda.hpp"
#include "GB_cuda.hpp"

bool GB_cuda_apply_binop_branch
Expand Down
3 changes: 1 addition & 2 deletions GraphBLAS/CUDA/GB_cuda_apply_unop_branch.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
#include "GraphBLAS_cuda.hpp"
#include "GB_cuda.hpp"

bool GB_cuda_apply_unop_branch
Expand All @@ -16,4 +15,4 @@ bool GB_cuda_apply_unop_branch
return false ;
}
return true ;
}
}
1 change: 0 additions & 1 deletion GraphBLAS/CUDA/GB_cuda_colscale_branch.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
#include "GraphBLAS_cuda.hpp"
#include "GB_cuda.hpp"

bool GB_cuda_colscale_branch
Expand Down
1 change: 0 additions & 1 deletion GraphBLAS/CUDA/GB_cuda_rowscale_branch.cpp
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
#include "GraphBLAS_cuda.hpp"
#include "GB_cuda.hpp"

bool GB_cuda_rowscale_branch
Expand Down
4 changes: 0 additions & 4 deletions GraphBLAS/CUDA/GB_cuda_upscale_identity.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,6 @@
// scaling up the 1-byte and 2-byte cases to 4-bytes.

#include "GB_cuda.hpp"
extern "C"
{
#include "GB_binop.h"
}

void GB_cuda_upscale_identity
(
Expand Down
77 changes: 0 additions & 77 deletions GraphBLAS/CUDA/Template/GB_h_subset.cuh

This file was deleted.

Loading

0 comments on commit c1ea469

Please sign in to comment.