forked from NCAR/fv3atm
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Update cmake config to support new NCEP libraries (imported targets) …
…on Tier-2 platforms (NOAA-EMC#177) - updates the modulefiles and cmake configurations for Tier-2 platforms in order to work with the new NCEP libraries (imported targets) - cleans up cmake configurations (AVX2 flags, DEBUG and REPRO mode) and declares SIMDMULTIARCH flags as a real alternative to the AVX2 flags - removes old build targets cheyenne.intel-mpi and supermuc-phase2.intel - clean up of build.sh
- Loading branch information
Showing
32 changed files
with
1,027 additions
and
5,799 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
Submodule NEMS
updated
9 files
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,37 +1 @@ | ||
message("") | ||
message("Setting configuration for $ENV{CMAKE_Platform}") | ||
message("") | ||
|
||
get_filename_component (C_COMPILER_NAME ${CMAKE_C_COMPILER} NAME) | ||
get_filename_component (CXX_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME) | ||
get_filename_component (Fortran_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME) | ||
message("C compiler: ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} (${C_COMPILER_NAME})") | ||
message("CXX compiler: ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION} (${CXX_COMPILER_NAME})") | ||
message("Fortran compiler: ${CMAKE_Fortran_COMPILER_ID} ${CMAKE_Fortran_COMPILER_VERSION} (${Fortran_COMPILER_NAME})") | ||
message("") | ||
|
||
option(DEBUG "Enable DEBUG mode" OFF) | ||
option(REPRO "Enable REPRO mode" OFF) | ||
option(VERBOSE "Enable VERBOSE mode" OFF) | ||
option(32BIT "Enable 32BIT (single precision arithmetic in dycore)" OFF) | ||
option(OPENMP "Enable OpenMP threading" ON) | ||
option(AVX2 "Enable AVX2 instruction set" OFF) | ||
option(QUAD_PRECISION "Enable QUAD_PRECISION (for certain grid metric terms in dycore)" ON) | ||
option(MULTI_GASES "Enable MULTI_GASES" OFF) | ||
|
||
option(INLINE_POST "Enable inline post" OFF) | ||
|
||
include( cmake/${CMAKE_Fortran_COMPILER_ID}.cmake ) | ||
|
||
set(NEMSIO_INC $ENV{NEMSIO_INC}) | ||
set(POST_INC $ENV{POST_INC}) | ||
set(NCEP_LIBS $ENV{POST_LIB} $ENV{NEMSIO_LIB} $ENV{G2_LIB4} $ENV{G2TMPL_LIB} $ENV{BACIO_LIB4} $ENV{SP_LIBd} $ENV{W3EMC_LIBd} $ENV{W3NCO_LIBd} $ENV{CRTM_LIB} $ENV{PNG_LIB} $ENV{JASPER_LIB} $ENV{Z_LIB}) | ||
|
||
set(ESMF_MOD ${ESMF_F90COMPILEPATHS}) | ||
set(ESMF_LIBS "${ESMF_F90ESMFLINKRPATHS} ${ESMF_F90ESMFLINKPATHS} ${ESMF_F90ESMFLINKLIBS}") | ||
|
||
set(NETCDF_INC_DIR $ENV{NETCDF}/include) | ||
set(NETCDF_LIBDIR $ENV{NETCDF}/lib) | ||
set(NETCDF_LIBS -L$ENV{NETCDF}/lib -lnetcdff -lnetcdf) | ||
|
||
message("") | ||
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE) |
This file was deleted.
Oops, something went wrong.
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,37 +1 @@ | ||
message("") | ||
message("Setting configuration for $ENV{CMAKE_Platform}") | ||
message("") | ||
|
||
get_filename_component (C_COMPILER_NAME ${CMAKE_C_COMPILER} NAME) | ||
get_filename_component (CXX_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME) | ||
get_filename_component (Fortran_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME) | ||
message("C compiler: ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} (${C_COMPILER_NAME})") | ||
message("CXX compiler: ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION} (${CXX_COMPILER_NAME})") | ||
message("Fortran compiler: ${CMAKE_Fortran_COMPILER_ID} ${CMAKE_Fortran_COMPILER_VERSION} (${Fortran_COMPILER_NAME})") | ||
message("") | ||
|
||
option(DEBUG "Enable DEBUG mode" OFF) | ||
option(REPRO "Enable REPRO mode" OFF) | ||
option(VERBOSE "Enable VERBOSE mode" OFF) | ||
option(32BIT "Enable 32BIT (single precision arithmetic in dycore)" OFF) | ||
option(OPENMP "Enable OpenMP threading" ON) | ||
option(AVX2 "Enable AVX2 instruction set" ON) | ||
option(QUAD_PRECISION "Enable QUAD_PRECISION (for certain grid metric terms in dycore)" ON) | ||
option(MULTI_GASES "Enable MULTI_GASES" OFF) | ||
|
||
option(INLINE_POST "Enable inline post" OFF) | ||
|
||
include( cmake/${CMAKE_Fortran_COMPILER_ID}.cmake ) | ||
|
||
set(NEMSIO_INC $ENV{NEMSIO_INC}) | ||
set(POST_INC $ENV{POST_INC}) | ||
set(NCEP_LIBS $ENV{POST_LIB} $ENV{NEMSIO_LIB} $ENV{G2_LIB4} $ENV{G2TMPL_LIB} $ENV{BACIO_LIB4} $ENV{SP_LIBd} $ENV{W3EMC_LIBd} $ENV{W3NCO_LIBd} $ENV{CRTM_LIB} $ENV{PNG_LIB} $ENV{JASPER_LIB} $ENV{Z_LIB}) | ||
|
||
set(ESMF_MOD ${ESMF_F90COMPILEPATHS}) | ||
set(ESMF_LIBS "${ESMF_F90ESMFLINKRPATHS} ${ESMF_F90ESMFLINKPATHS} ${ESMF_F90ESMFLINKLIBS}") | ||
|
||
set(NETCDF_INC_DIR $ENV{NETCDF}/include) | ||
set(NETCDF_LIBDIR $ENV{NETCDF}/lib) | ||
set(NETCDF_LIBS -L$ENV{NETCDF}/lib -lnetcdff -lnetcdf) | ||
|
||
message("") | ||
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE) |
This file was deleted.
Oops, something went wrong.
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 @@ | ||
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE) |
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,2 +1 @@ | ||
set(AVX2 OFF CACHE BOOL "Enable AVX2 instruction set" FORCE) | ||
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE) |
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,46 +1,3 @@ | ||
message("") | ||
message("Setting configuration for $ENV{CMAKE_Platform}") | ||
message("") | ||
|
||
get_filename_component (C_COMPILER_NAME ${CMAKE_C_COMPILER} NAME) | ||
get_filename_component (CXX_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME) | ||
get_filename_component (Fortran_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME) | ||
message("C compiler: ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} (${C_COMPILER_NAME})") | ||
message("CXX compiler: ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION} (${CXX_COMPILER_NAME})") | ||
message("Fortran compiler: ${CMAKE_Fortran_COMPILER_ID} ${CMAKE_Fortran_COMPILER_VERSION} (${Fortran_COMPILER_NAME})") | ||
message("") | ||
|
||
option(DEBUG "Enable DEBUG mode" OFF) | ||
option(REPRO "Enable REPRO mode" OFF) | ||
option(VERBOSE "Enable VERBOSE mode" OFF) | ||
option(32BIT "Enable 32BIT (single precision arithmetic in dycore)" OFF) | ||
option(OPENMP "Enable OpenMP threading" ON) | ||
option(AVX2 "Enable AVX2 instruction set" OFF) | ||
option(QUAD_PRECISION "Enable QUAD_PRECISION (for certain grid metric terms in dycore)" ON) | ||
option(MULTI_GASES "Enable MULTI_GASES" OFF) | ||
|
||
option(INLINE_POST "Enable inline post" OFF) | ||
|
||
include( cmake/${CMAKE_Fortran_COMPILER_ID}.cmake ) | ||
|
||
message("AVX2 is ENABLED on Jet (multi-target executable)") | ||
string (REPLACE "-xHOST" "-axSSE4.2,AVX,CORE-AVX2" CMAKE_Fortran_FLAGS "${CMAKE_Fortran_FLAGS}") | ||
string (REPLACE "-xHOST" "-axSSE4.2,AVX,CORE-AVX2" CMAKE_C_FLAGS "${CMAKE_C_FLAGS}") | ||
# For CCPP | ||
option(SIMDMULTIARCH "Enable multi-target SIMD instruction sets" ON) | ||
|
||
string(REPLACE "-i_dynamic" "-shared-intel" | ||
CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS | ||
"${CMAKE_SHARED_LIBRARY_LINK_Fortran_FLAGS}") | ||
|
||
set(NEMSIO_INC $ENV{NEMSIO_INC}) | ||
set(NCEP_LIBS $ENV{NEMSIO_LIB} $ENV{BACIO_LIB4} $ENV{SP_LIBd} $ENV{W3EMC_LIBd} $ENV{W3NCO_LIBd}) | ||
|
||
set(ESMF_MOD ${ESMF_F90COMPILEPATHS}) | ||
set(ESMF_LIBS "${ESMF_F90ESMFLINKRPATHS} ${ESMF_F90ESMFLINKPATHS} ${ESMF_F90ESMFLINKLIBS}") | ||
|
||
set(NETCDF_INC_DIR $ENV{NETCDF}/include) | ||
set(NETCDF_LIBDIR $ENV{NETCDF}/lib) | ||
set(NETCDF_LIBS -L$ENV{NETCDF}/lib -lnetcdff -lnetcdf) | ||
|
||
message("") | ||
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE) | ||
set(AVX2 OFF CACHE BOOL "Enable AVX2 instruction set" FORCE) | ||
set(SIMDMULTIARCH ON CACHE BOOL "Enable multi-target SIMD instruction sets" FORCE) |
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,46 +1,6 @@ | ||
message("") | ||
message("Setting configuration for $ENV{CMAKE_Platform}") | ||
message("") | ||
set(INLINE_POST ON CACHE BOOL "Enable inline post" FORCE) | ||
|
||
get_filename_component (C_COMPILER_NAME ${CMAKE_C_COMPILER} NAME) | ||
get_filename_component (CXX_COMPILER_NAME ${CMAKE_CXX_COMPILER} NAME) | ||
get_filename_component (Fortran_COMPILER_NAME ${CMAKE_Fortran_COMPILER} NAME) | ||
message("C compiler: ${CMAKE_C_COMPILER_ID} ${CMAKE_C_COMPILER_VERSION} (${C_COMPILER_NAME})") | ||
message("CXX compiler: ${CMAKE_CXX_COMPILER_ID} ${CMAKE_CXX_COMPILER_VERSION} (${CXX_COMPILER_NAME})") | ||
message("Fortran compiler: ${CMAKE_Fortran_COMPILER_ID} ${CMAKE_Fortran_COMPILER_VERSION} (${Fortran_COMPILER_NAME})") | ||
message("") | ||
|
||
option(DEBUG "Enable DEBUG mode" OFF) | ||
option(REPRO "Enable REPRO mode" OFF) | ||
option(VERBOSE "Enable VERBOSE mode" OFF) | ||
option(32BIT "Enable 32BIT (single precision arithmetic in dycore)" OFF) | ||
# OpenMP broken for clang compiler | ||
if(CMAKE_CXX_COMPILER_ID MATCHES "Clang*") | ||
option(OPENMP "Enable OpenMP threading" OFF) | ||
else() | ||
option(OPENMP "Enable OpenMP threading" ON) | ||
if(${CMAKE_C_COMPILER_ID} MATCHES "^(Clang|AppleClang)$") | ||
set(OPENMP OFF CACHE BOOL "Enable OpenMP threading" FORCE) | ||
endif() | ||
option(AVX2 "Enable AVX2 instruction set" OFF) | ||
option(QUAD_PRECISION "Enable QUAD_PRECISION (for certain grid metric terms in dycore)" ON) | ||
option(MULTI_GASES "Enable MULTI_GASES" OFF) | ||
|
||
option(INLINE_POST "Enable inline post" OFF) | ||
|
||
include( cmake/${CMAKE_Fortran_COMPILER_ID}.cmake ) | ||
|
||
set(NEMSIO_INC $ENV{NEMSIO_INC}) | ||
set(POST_INC $ENV{POST_INC}) | ||
set(NCEP_LIBS $ENV{POST_LIB} $ENV{NEMSIO_LIB} $ENV{G2_LIB4} $ENV{G2TMPL_LIB} $ENV{BACIO_LIB4} $ENV{SP_LIBd} $ENV{W3EMC_LIBd} $ENV{W3NCO_LIBd} $ENV{CRTM_LIB} $ENV{PNG_LIB} $ENV{JASPER_LIB} $ENV{Z_LIB}) | ||
|
||
set(ESMF_MOD ${ESMF_F90COMPILEPATHS}) | ||
set(ESMF_LIBS "${ESMF_F90ESMFLINKRPATHS} ${ESMF_F90ESMFLINKPATHS} ${ESMF_F90ESMFLINKLIBS}") | ||
|
||
set(NETCDF_INC_DIR $ENV{NETCDF}/include) | ||
set(NETCDF_LIBDIR $ENV{NETCDF}/lib) | ||
set(NETCDF_LIBS -L$ENV{NETCDF}/lib -lnetcdff -lnetcdf) | ||
|
||
set(MKL_DIR $ENV{MKL_DIR}) | ||
set(MKL_INC $ENV{MKL_INC}) | ||
set(MKL_LIB $ENV{MKL_LIB}) | ||
|
||
message("") |
Oops, something went wrong.