-
Notifications
You must be signed in to change notification settings - Fork 543
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Add SCOTCH library for geographical domain decomposition (#849)
Co-authored-by: JessicaMeixner-NOAA <[email protected]> Co-authored-by: Matthew Masarik <[email protected]> Co-authored-by: Ty Hesser <[email protected]>
- Loading branch information
1 parent
a4fc630
commit ea0de58
Showing
29 changed files
with
262 additions
and
51 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,84 @@ | ||
message(STATUS "Searching for PTSCOTCHparmetis library ...") | ||
find_library(ptscotchparmetis_lib NAMES libptscotchparmetisv3.a HINTS ENV SCOTCH_PATH PATH_SUFFIXES lib) | ||
find_path(ptscotchparmetis_inc parmetis.h HINTS ENV SCOTCH_PATH PATH_SUFFIXES include) | ||
|
||
message(STATUS "Searching for SCOTCH library ...") | ||
find_library(scotch_lib NAMES libscotch.a HINTS ENV SCOTCH_PATH PATH_SUFFIXES lib) | ||
find_path(scotch_inc scotch.h HINTS ENV SCOTCH_PATH PATH_SUFFIXES include) | ||
|
||
message(STATUS "Searching for PTSCOTCH library ...") | ||
find_library(ptscotch_lib NAMES libptscotch.a HINTS ENV SCOTCH_PATH PATH_SUFFIXES lib) | ||
find_path(ptscotch_inc ptscotch.h HINTS ENV SCOTCH_PATH PATH_SUFFIXES include) | ||
|
||
message(STATUS "Searching for SCOTCHerr library ...") | ||
find_library(scotcherr_lib NAMES libscotcherr.a HINTS ENV SCOTCH_PATH PATH_SUFFIXES lib) | ||
find_path(scotcherr_inc scotch.h HINTS ENV SCOTCH_PATH PATH_SUFFIXES include) | ||
|
||
message(STATUS "Searching for PTSCOTCHerr library ...") | ||
find_library(ptscotcherr_lib NAMES libptscotcherr.a HINTS ENV SCOTCH_PATH PATH_SUFFIXES lib) | ||
find_path(ptscotcherr_inc ptscotch.h HINTS ENV SCOTCH_PATH PATH_SUFFIXES include) | ||
|
||
add_library(PTSCOTCHparmetis::PTSCOTCHparmetis STATIC IMPORTED) | ||
add_library(SCOTCH::SCOTCH STATIC IMPORTED) | ||
add_library(PTSCOTCH::PTSCOTCH STATIC IMPORTED) | ||
add_library(SCOTCHerr::SCOTCHerr STATIC IMPORTED) | ||
add_library(PTSCOTCHerr::PTSCOTCHerr STATIC IMPORTED) | ||
|
||
set_target_properties(SCOTCH::SCOTCH PROPERTIES | ||
IMPORTED_LOCATION "${scotch_lib}" | ||
INTERFACE_INCLUDE_DIRECTORIES "${scotch_inc}") | ||
|
||
set_target_properties(SCOTCHerr::SCOTCHerr PROPERTIES | ||
IMPORTED_LOCATION "${scotcherr_lib}" | ||
INTERFACE_INCLUDE_DIRECTORIES "${scotcherr_inc}") | ||
|
||
set_target_properties(PTSCOTCH::PTSCOTCH PROPERTIES | ||
IMPORTED_LOCATION "${ptscotch_lib}" | ||
INTERFACE_INCLUDE_DIRECTORIES "${ptscotch_inc}") | ||
|
||
set_target_properties(PTSCOTCHerr::PTSCOTCHerr PROPERTIES | ||
IMPORTED_LOCATION "${ptscotcherr_lib}" | ||
INTERFACE_INCLUDE_DIRECTORIES "${ptscotcherr_inc}") | ||
|
||
set_target_properties(PTSCOTCHparmetis::PTSCOTCHparmetis PROPERTIES | ||
IMPORTED_LOCATION "${ptscotchparmetis_lib}" | ||
INTERFACE_INCLUDE_DIRECTORIES "${ptscotchparmetis_inc}") | ||
|
||
|
||
## Interfaces and links | ||
target_link_libraries(PTSCOTCHparmetis::PTSCOTCHparmetis INTERFACE PTSCOTCH::PTSCOTCH PTSCOTCHerr::PTSCOTCHerr SCOTCH::SCOTCH) | ||
|
||
|
||
## Finalize find_package | ||
include(FindPackageHandleStandardArgs) | ||
|
||
find_package_handle_standard_args( | ||
${CMAKE_FIND_PACKAGE_NAME} | ||
REQUIRED_VARS scotch_lib | ||
scotch_inc) | ||
|
||
find_package_handle_standard_args( | ||
${CMAKE_FIND_PACKAGE_NAME} | ||
REQUIRED_VARS ptscotch_lib | ||
ptscotch_inc) | ||
|
||
find_package_handle_standard_args( | ||
${CMAKE_FIND_PACKAGE_NAME} | ||
REQUIRED_VARS scotcherr_lib | ||
scotcherr_inc) | ||
|
||
find_package_handle_standard_args( | ||
${CMAKE_FIND_PACKAGE_NAME} | ||
REQUIRED_VARS ptscotcherr_lib | ||
ptscotcherr_inc) | ||
|
||
find_package_handle_standard_args( | ||
${CMAKE_FIND_PACKAGE_NAME} | ||
REQUIRED_VARS ptscotchparmetis_lib | ||
ptscotchparmetis_inc) | ||
|
||
message(STATUS "Found SCOTCH: ${scotch_lib}") | ||
message(STATUS "Found PTSCOTCH: ${ptscotch_lib}") | ||
message(STATUS "Found SCOTCHerr: ${scotcherr_lib}") | ||
message(STATUS "Found PTSCOTCHerr: ${ptscotcherr_lib}") | ||
message(STATUS "Found PTSCOTCHparmetis: ${ptscotchparmetis_lib}") |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
NOGRB PDLIB SCRIP SCRIPNC TRKNC DIST MPI PR3 UQ FLX0 LN1 ST4 STAB0 NL1 BT4 DB1 MLIM TR0 BS0 IC2 IS2 REF1 IG1 WNT2 WNX1 RWND CRT1 CRX1 TIDE O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 | ||
NOGRB PDLIB METIS SCRIP SCRIPNC TRKNC DIST MPI PR3 UQ FLX0 LN1 ST4 STAB0 NL1 BT4 DB1 MLIM TR0 BS0 IC2 IS2 REF1 IG1 WNT2 WNX1 RWND CRT1 CRX1 TIDE O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
NOGRB TRKNC DIST MPI MLIM PR3 UQ FLX1 PDLIB LN1 ST1 STAB0 NL1 BT4 DB0 TR0 BS0 IS0 IC0 REF0 WNT2 WNX1 CRT1 CRX1 O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 | ||
NOGRB TRKNC DIST MPI MLIM PR3 UQ FLX1 PDLIB SCOTCH LN1 ST1 STAB0 NL1 BT4 DB0 TR0 BS0 IS0 IC0 REF0 WNT2 WNX1 CRT1 CRX1 O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
NOGRB PDLIB TRKNC DIST MPI PR3 UQ FLX0 LN1 ST4 STAB0 NL1 BT1 DB1 MLIM TR0 BS0 WNT1 WNX1 IC0 IS0 REF0 RWND CRT1 CRX1 O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 | ||
NOGRB PDLIB SCOTCH TRKNC DIST MPI PR3 UQ FLX0 LN1 ST4 STAB0 NL1 BT1 DB1 MLIM TR0 BS0 WNT1 WNX1 IC0 IS0 REF0 RWND CRT1 CRX1 O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
NOGRB PDLIB TRKNC DIST MPI PR3 UQ FLX0 LN1 ST4 STAB0 NL1 BT4 DB1 TR0 BS0 IC0 IS0 REF1 WNT2 WNX1 RWND CRT1 CRX1 TIDE O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 | ||
NOGRB PDLIB SCOTCH TRKNC DIST MPI PR3 UQ FLX0 LN1 ST4 STAB0 NL1 BT4 DB1 TR0 BS0 IC0 IS0 REF1 WNT2 WNX1 RWND CRT1 CRX1 TIDE O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
NOGRB TRKNC DIST MPI SCRIP MLIM PR3 UQ FLX0 PDLIB LN1 ST4 STAB0 NL1 BT4 DB1 TR0 BS0 IS0 IC0 REF0 WNT2 WNX1 RWND CRT1 CRX1 O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 | ||
NOGRB TRKNC DIST MPI SCRIP MLIM PR3 UQ FLX0 PDLIB SCOTCH LN1 ST4 STAB0 NL1 BT4 DB1 TR0 BS0 IS0 IC0 REF0 WNT2 WNX1 RWND CRT1 CRX1 O0 O1 O2 O2a O2b O2c O3 O4 O5 O6 O7 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,4 +1,4 @@ | ||
# Continuous Integration | ||
WW3 uses Github Actions for continuous integration. | ||
|
||
This directory contains a Spack environment file to build library dependencies such as NetCDF, ESMF, ParMETIS, and g2. | ||
This directory contains a Spack environment file to build library dependencies such as NetCDF, ESMF, ParMETIS, SCOTCH and g2. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -6,6 +6,7 @@ spack: | |
specs: | ||
- [email protected]~shared | ||
- [email protected]~shared | ||
- [email protected]+mpi+metis~shared | ||
- [email protected]~dap | ||
- [email protected] | ||
- [email protected] | ||
|
@@ -15,4 +16,4 @@ spack: | |
- [email protected]~pio~pnetcdf~xerces | ||
view: true | ||
concretizer: | ||
unify: true | ||
unify: when_possible |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -7,6 +7,7 @@ spack: | |
specs: | ||
- [email protected]~shared | ||
- [email protected]~shared | ||
- [email protected]+mpi+metis~shared | ||
- [email protected]~dap | ||
- [email protected] | ||
- [email protected] | ||
|
@@ -17,4 +18,4 @@ spack: | |
- intel-oneapi-mpi %intel | ||
view: true | ||
concretizer: | ||
unify: true | ||
unify: when_possible |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.