Skip to content

Commit

Permalink
Merge pull request #637 from DrTimothyAldenDavis/dev2
Browse files Browse the repository at this point in the history
readme for openmp; remove "set ( CMAKE_MACOSX_RPATH TRUE )" from all cmake scripts
  • Loading branch information
DrTimothyAldenDavis authored Dec 25, 2023
2 parents 6d37f2a + e152ca7 commit 109ccc7
Show file tree
Hide file tree
Showing 8 changed files with 38 additions and 30 deletions.
1 change: 0 additions & 1 deletion CSparse/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -48,7 +48,6 @@ if ( WIN32 )
add_compile_definitions ( _CRT_SECURE_NO_WARNINGS )
endif ( )

set ( CMAKE_MACOSX_RPATH TRUE )
include ( GNUInstallDirs )

if ( NOT CMAKE_BUILD_TYPE )
Expand Down
2 changes: 0 additions & 2 deletions Example/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,6 @@ if ( WIN32 )
set ( CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS true )
endif ( )

set ( CMAKE_MACOSX_RPATH TRUE )

option ( BUILD_SHARED_LIBS "OFF: do not build shared libraries. ON (default): build shared libraries" ON )
option ( BUILD_STATIC_LIBS "OFF: do not build static libraries. ON (default): build static libraries" ON )

Expand Down
1 change: 0 additions & 1 deletion GraphBLAS/cmake_modules/SuiteSparsePolicy.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@ if ( WIN32 )
add_compile_definitions ( _CRT_SECURE_NO_WARNINGS )
endif ( )

set ( CMAKE_MACOSX_RPATH TRUE )
enable_language ( C )
include ( GNUInstallDirs )

Expand Down
2 changes: 0 additions & 2 deletions LAGraph/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -38,8 +38,6 @@

cmake_minimum_required ( VERSION 3.20 ) # LAGraph can be built stand-alone

set ( CMAKE_MACOSX_RPATH TRUE )

# version of LAGraph
set ( LAGraph_DATE "Dec 30, 2023" )
set ( LAGraph_VERSION_MAJOR 1 CACHE STRING "" FORCE )
Expand Down
1 change: 0 additions & 1 deletion LAGraph/cmake_modules/SuiteSparsePolicy.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@ if ( WIN32 )
add_compile_definitions ( _CRT_SECURE_NO_WARNINGS )
endif ( )

set ( CMAKE_MACOSX_RPATH TRUE )
enable_language ( C )
include ( GNUInstallDirs )

Expand Down
30 changes: 19 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -811,34 +811,42 @@ build type). The static libraries will not be built (since

If `ON`, OpenMP is used if it is available. Default: `OFF`.

UMFPACK, CHOLMOD, SPQR, and GraphBLAS will be slow if OpenMP is not used.
GraphBLAS, LAGraph, and ParU will be slow if OpenMP is not used.
Other packages (UMFPACK, CHOLMOD, SPQR) may use OpenMP in the BLAS/LAPACK,
which is essential for performance.

Note that BLAS and LAPACK may still use OpenMP internally; if you wish to
disable OpenMP in an entire application, select a single-threaded
BLAS/LAPACK.

WARNING: GraphBLAS may not be thread-safe if built without OpenMP (see the
User Guide for details).
WARNING: GraphBLAS may not be thread-safe if built without OpenMP or pthreads
(see the User Guide for details).

* `SUITESPARSE_CONFIG_USE_OPENMP`:

If `ON`, `SuiteSparse_config` uses OpenMP is used if it is available.
Default: `SUITESPARSE_USE_OPENMP`.
It is not essential and only used to let `SuiteSparse_time` call `omp_get_wtime`.

* `CHOLMOD_USE_OPENMP`:

If `ON`, OpenMP is used in CHOLMOD if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in CHOLMOD if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `GRAPHBLAS_USE_OPENMP`:

If `ON`, OpenMP is used in GraphBLAS if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in GraphBLAS if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `LAGRAPH_USE_OPENMP`:

If `ON`, OpenMP is used in LAGraph if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in LAGraph if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `PARU_USE_OPENMP`:

If `ON`, OpenMP is used in ParU if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in ParU if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `SUITESPARSE_DEMOS`:

Expand Down
30 changes: 19 additions & 11 deletions SuiteSparse_config/Config/README.md.in
Original file line number Diff line number Diff line change
Expand Up @@ -811,34 +811,42 @@ build type). The static libraries will not be built (since

If `ON`, OpenMP is used if it is available. Default: `OFF`.

UMFPACK, CHOLMOD, SPQR, and GraphBLAS will be slow if OpenMP is not used.
GraphBLAS, LAGraph, and ParU will be slow if OpenMP is not used.
Other packages (UMFPACK, CHOLMOD, SPQR) may use OpenMP in the BLAS/LAPACK,
which is essential for performance.

Note that BLAS and LAPACK may still use OpenMP internally; if you wish to
disable OpenMP in an entire application, select a single-threaded
BLAS/LAPACK.

WARNING: GraphBLAS may not be thread-safe if built without OpenMP (see the
User Guide for details).
WARNING: GraphBLAS may not be thread-safe if built without OpenMP or pthreads
(see the User Guide for details).

* `SUITESPARSE_CONFIG_USE_OPENMP`:

If `ON`, `SuiteSparse_config` uses OpenMP is used if it is available.
Default: `SUITESPARSE_USE_OPENMP`.
It is not essential and only used to let `SuiteSparse_time` call `omp_get_wtime`.

* `CHOLMOD_USE_OPENMP`:

If `ON`, OpenMP is used in CHOLMOD if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in CHOLMOD if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `GRAPHBLAS_USE_OPENMP`:

If `ON`, OpenMP is used in GraphBLAS if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in GraphBLAS if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `LAGRAPH_USE_OPENMP`:

If `ON`, OpenMP is used in LAGraph if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in LAGraph if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `PARU_USE_OPENMP`:

If `ON`, OpenMP is used in ParU if it is available. Default:
`SUITESPARSE_USE_OPENMP`.
If `ON`, OpenMP is used in ParU if it is available.
Default: `SUITESPARSE_USE_OPENMP`.

* `SUITESPARSE_DEMOS`:

Expand Down
1 change: 0 additions & 1 deletion SuiteSparse_config/cmake_modules/SuiteSparsePolicy.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -112,7 +112,6 @@ if ( WIN32 )
add_compile_definitions ( _CRT_SECURE_NO_WARNINGS )
endif ( )

set ( CMAKE_MACOSX_RPATH TRUE )
enable_language ( C )
include ( GNUInstallDirs )

Expand Down

0 comments on commit 109ccc7

Please sign in to comment.