Skip to content

Commit

Permalink
Use hpc-stack libraries in ufs-s2s-model (#191)
Browse files Browse the repository at this point in the history
  • Loading branch information
binli2337 authored Sep 22, 2020
1 parent dacb820 commit 94a4cc6
Show file tree
Hide file tree
Showing 16 changed files with 17,186 additions and 15,753 deletions.
2 changes: 1 addition & 1 deletion conf/configure.fv3.hera.intel
Original file line number Diff line number Diff line change
Expand Up @@ -181,5 +181,5 @@ LDFLAGS += $(LIBS)
ifdef InNemsMakefile
FFLAGS += $(ESMF_INC)
CPPFLAGS += -traditional
EXTLIBS = $(NCEPLIBS) $(ESMF_LIB) $(LDFLAGS) $(NETCDF_LIB)
EXTLIBS = $(NCEPLIBS) $(ESMF_F90LINKPATHS) $(ESMF_LIB) $(LDFLAGS) $(NETCDF_LIB)
endif
4 changes: 2 additions & 2 deletions conf/configure.fv3.orion.intel
Original file line number Diff line number Diff line change
Expand Up @@ -39,7 +39,7 @@ include $(ESMFMKFILE)
ESMF_INC = $(ESMF_F90COMPILEPATHS)

NEMSIOINC = -I$(NEMSIO_INC)
NCEPLIBS = $(POST_LIB) $(NEMSIO_LIB) $(G2_LIB4) $(G2TMPL_LIB) $(BACIO_LIB4) $(SP_LIBd) $(W3EMC_LIBd) $(W3NCO_LIBd) $(CRTM_LIB) $(JASPER_LIB) -lpng -lz
NCEPLIBS = $(POST_LIB) $(NEMSIO_LIB) $(G2_LIB4) $(G2TMPL_LIB) $(BACIO_LIB4) $(SP_LIBd) $(W3EMC_LIBd) $(W3NCO_LIBd) $(CRTM_LIB) $(JASPER_ROOT)/lib64/libjasper.a -lpng -lz

##############################################
# Need to use at least GNU Make version 3.81 #
Expand Down Expand Up @@ -184,5 +184,5 @@ LDFLAGS += $(LIBS)
ifdef InNemsMakefile
FFLAGS += $(ESMF_INC)
CPPFLAGS += -traditional
EXTLIBS = $(NCEPLIBS) $(ESMF_LIB) $(LDFLAGS) $(NETCDF_LIB)
EXTLIBS = $(NCEPLIBS) $(ESMF_F90LINKPATHS) $(ESMF_LIB) $(LDFLAGS) $(NETCDF_LIB)
endif
4 changes: 2 additions & 2 deletions conf/configure.fv3.wcoss_dell_p3
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ include $(ESMFMKFILE)
ESMF_INC = $(ESMF_F90COMPILEPATHS)

NEMSIOINC = -I$(NEMSIO_INC)
NCEPLIBS = $(POST_LIB) $(NEMSIO_LIB) $(G2_LIB4) $(G2TMPL_LIB) $(BACIO_LIB4) $(SP_LIBd) $(W3EMC_LIBd) $(W3NCO_LIBd) $(CRTM_LIB) $(JASPER_LIB) -lpng -lz
NCEPLIBS = $(POST_LIB) $(NEMSIO_LIB) $(G2_LIB4) $(G2TMPL_LIB) $(BACIO_LIB4) $(SP_LIBd) $(W3EMC_LIBd) $(W3NCO_LIBd) $(CRTM_LIB) $(JASPER_ROOT)/lib64/libjasper.a -lpng -lz

##############################################
# Need to use at least GNU Make version 3.81 #
Expand Down Expand Up @@ -168,5 +168,5 @@ LDFLAGS += $(LIBS)
ifdef InNemsMakefile
FFLAGS += $(ESMF_INC)
CPPFLAGS += -traditional
EXTLIBS = $(NCEPLIBS) $(ESMF_LIB) $(LDFLAGS)
EXTLIBS = $(NCEPLIBS) $(ESMF_F90LINKPATHS) $(ESMF_LIB) $(LDFLAGS)
endif
77 changes: 29 additions & 48 deletions modulefiles/hera.intel/fv3
Original file line number Diff line number Diff line change
@@ -1,60 +1,41 @@
#%Module######################################################################
##
## NEMS FV3 Prerequisites: Hera/Intel
#%Module

proc ModulesHelp {} {
puts stderr "\tcit - loads modules required for building and running FV3 under NEMS on Hera/Intel"
puts stderr "\tcit - loads modules required for building and running UFS Model on Hera/Intel"
}

module-whatis "loads NEMS FV3 prerequisites for Hera/Intel"
module-whatis "loads UFS Model prerequisites for Hera/Intel"

##
## load contrib environment
## load slurm utils (arbitrary.pl layout.pl)
##
module use -a /contrib/sutils/modulefiles
module use /contrib/sutils/modulefiles
module load sutils

##
## load programming environment
## this typically includes compiler, MPI and job scheduler
##
module load intel/18.0.5.274
module load impi/2018.0.4

##
## NCEP libraries
##
module use -a /scratch2/NCEPDEV/nwprod/NCEPLIBS/cmake/install/NCEPLIBS/modules
module load bacio/2.4.0
module load crtm_dev/2.3.0
module load g2/3.4.0
module load g2tmpl/1.9.0
module load ip/3.3.0
module load nceppost/dceca26
module load nemsio/2.5.1
module load sp/2.3.0
module load w3emc/2.7.0
module load w3nco/2.4.0

module load gfsio/1.4.0
module load sfcio/1.4.0
module load sigio/2.3.0

##
## load ESMF library for above compiler / MPI combination
## use pre-compiled EMSF library for above compiler / MPI combination
##
module use -a /scratch1/NCEPDEV/nems/emc.nemspara/soft/modulefiles
module load netcdf_parallel/4.7.4.release
module load esmf/8.1.0bs27
module load hdf5_parallel/1.10.6.release

##
## load cmake
##
module load cmake/3.16.1
setenv CMAKE_C_COMPILER mpiicc
setenv CMAKE_CXX_COMPILER mpiicpc
setenv CMAKE_Fortran_COMPILER mpiifort
setenv CMAKE_Platform hera.intel

module use /scratch2/NCEPDEV/nwprod/hpc-stack/libs/hpc-stack/v1.0.0-beta1/modulefiles/stack

module load hpc/1.0.0-beta1
module load hpc-intel/18.0.5.274
module load hpc-impi/2018.0.4

module load jasper/2.0.15
module load zlib/1.2.11
module load png/1.6.35

module load hdf5/1.10.6
module load netcdf/4.7.4
module load esmf/8_1_0_beta_snapshot_27

module load bacio/2.4.1
module load crtm/2.3.0
module load g2/3.4.1
module load g2tmpl/1.9.1
module load ip/3.3.3
module load nceppost/dceca26
module load nemsio/2.5.2
module load sp/2.3.3
module load w3emc/2.7.3
module load w3nco/2.4.1
77 changes: 29 additions & 48 deletions modulefiles/hera.intel/fv3_debug
Original file line number Diff line number Diff line change
@@ -1,60 +1,41 @@
#%Module######################################################################
##
## NEMS FV3 Prerequisites: Hera/Intel
#%Module

proc ModulesHelp {} {
puts stderr "\tcit - loads modules required for building and running FV3 under NEMS on Hera/Intel"
puts stderr "\tcit - loads modules required for building and running UFS Model on Hera/Intel"
}

module-whatis "loads NEMS FV3 prerequisites for Hera/Intel"
module-whatis "loads UFS Model prerequisites for Hera/Intel"

##
## load contrib environment
## load slurm utils (arbitrary.pl layout.pl)
##
module use -a /contrib/sutils/modulefiles
module use /contrib/sutils/modulefiles
module load sutils

##
## load programming environment
## this typically includes compiler, MPI and job scheduler
##
module load intel/18.0.5.274
module load impi/2018.0.4

##
## NCEP libraries
##
module use -a /scratch2/NCEPDEV/nwprod/NCEPLIBS/cmake/install/NCEPLIBS/modules
module load bacio/2.4.0
module load crtm_dev/2.3.0
module load g2/3.4.0
module load g2tmpl/1.9.0
module load ip/3.3.0
module load nceppost/dceca26
module load nemsio/2.5.1
module load sp/2.3.0
module load w3emc/2.7.0
module load w3nco/2.4.0

module load gfsio/1.4.0
module load sfcio/1.4.0
module load sigio/2.3.0

##
## load ESMF library for above compiler / MPI combination
## use pre-compiled EMSF library for above compiler / MPI combination
##
module use -a /scratch1/NCEPDEV/nems/emc.nemspara/soft/modulefiles
module load netcdf_parallel/4.7.4.release
module load esmf/8.1.0bs27g
module load hdf5_parallel/1.10.6.release

##
## load cmake
##
module load cmake/3.16.1
setenv CMAKE_C_COMPILER mpiicc
setenv CMAKE_CXX_COMPILER mpiicpc
setenv CMAKE_Fortran_COMPILER mpiifort
setenv CMAKE_Platform hera.intel

module use /scratch2/NCEPDEV/nwprod/hpc-stack/libs/hpc-stack/v1.0.0-beta1/modulefiles/stack

module load hpc/1.0.0-beta1
module load hpc-intel/18.0.5.274
module load hpc-impi/2018.0.4

module load jasper/2.0.15
module load zlib/1.2.11
module load png/1.6.35

module load hdf5/1.10.6
module load netcdf/4.7.4
module load esmf/8_1_0_beta_snapshot_27-debug

module load bacio/2.4.1
module load crtm/2.3.0
module load g2/3.4.1
module load g2tmpl/1.9.1
module load ip/3.3.3
module load nceppost/dceca26
module load nemsio/2.5.2
module load sp/2.3.3
module load w3emc/2.7.3
module load w3nco/2.4.1
83 changes: 28 additions & 55 deletions modulefiles/orion.intel/fv3
Original file line number Diff line number Diff line change
@@ -1,67 +1,40 @@
#%Module######################################################################
##
## NEMS FV3 Prerequisites: Orion/Intel
#%Module

proc ModulesHelp {} {
puts stderr "\tcit - loads modules required for building and running FV3 under NEMS on Orion/Intel"
puts stderr "\tcit - loads modules required for building and running UFS Model on Orion/Intel"
}

module-whatis "loads NEMS FV3 prerequisites for Orion/Intel"
module-whatis "loads UFS Model prerequisites for Orion/Intel"

##
## load contrib environment
## load noaatools (slurm utils (arbitrary.pl layout.pl))
##
module load contrib noaatools

##
## load programming environment
## this typically includes compiler, MPI and job scheduler
##
module load intel/2018
module load impi/2018

##
## NCEP libraries
##
module use -a /apps/contrib/NCEPLIBS/orion/cmake/install/NCEPLIBS/modules
module load bacio/2.4.0
module load crtm_dev/2.3.0
module load g2/3.4.0
module load g2tmpl/1.9.0
module load ip/3.3.0
module load nceppost/dceca26
module load nemsio/2.5.1
module load sp/2.3.0
module load w3emc/2.7.0
module load w3nco/2.4.0
module load cmake/3.17.3
setenv CMAKE_C_COMPILER mpiicc
setenv CMAKE_CXX_COMPILER mpiicpc
setenv CMAKE_Fortran_COMPILER mpiifort
setenv CMAKE_Platform orion.intel

module load gfsio/1.4.0
module load sfcio/1.4.0
module load sigio/2.3.0
module use /apps/contrib/NCEP/libs/hpc-stack/v1.0.0-beta1/modulefiles/stack

module use /apps/contrib/NCEPLIBS/orion/modulefiles
module load jasper/1.900.2
module load png/1.2.44
module load z/1.2.6
module load hpc/1.0.0-beta1
module load hpc-intel/2018.4
module load hpc-impi/2018.4

##
## load ESMF library for above compiler / MPI combination
## use pre-compiled EMSF library for above compiler / MPI combination
##
module use /apps/contrib/NCEPLIBS/lib/modulefiles
module load netcdfp/4.7.4.release
module load esmflocal/8.1.0.27bs.release
module load jasper/2.0.15
module load zlib/1.2.11
module load png/1.6.35

###
### load Python 3
#module load python/3.7.5
module load hdf5/1.10.6
module load netcdf/4.7.4
module load esmf/8_1_0_beta_snapshot_27

##
## load cmake
##
module load cmake/3.15.4
setenv CMAKE_C_COMPILER mpiicc
setenv CMAKE_CXX_COMPILER mpiicpc
setenv CMAKE_Fortran_COMPILER mpiifort
setenv CMAKE_Platform orion.intel
module load bacio/2.4.1
module load crtm/2.3.0
module load g2/3.4.1
module load g2tmpl/1.9.1
module load ip/3.3.3
module load nceppost/dceca26
module load nemsio/2.5.2
module load sp/2.3.3
module load w3emc/2.7.3
module load w3nco/2.4.1
Loading

0 comments on commit 94a4cc6

Please sign in to comment.