User Tools

Site Tools


setup_auto_ec-earth_to_run_in_a_new_cluster

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
setup_auto_ec-earth_to_run_in_a_new_cluster [2017/03/07 17:29]
pechevar
setup_auto_ec-earth_to_run_in_a_new_cluster [2017/03/09 11:27] (current)
pechevar
Line 1: Line 1:
 === Setup Auto-EC-Earth to run in a new cluster === === Setup Auto-EC-Earth to run in a new cluster ===
 +
 +I use as an example the Finis Terrae II setup.
 +
 +== Add an new entry in .ssh/config ==
 +<code>
 +Host finisterrae2 
 +        HostName ft2.cesga.es
 +        User cns31364
 +        IdentityFile ~/.ssh/id_rsa
 +        ForwardX11 yes
 +</code>
 + 
 +== Add an new entry in platforms_EXPID.conf ==
 +<code bash>
 +[finisterrae2]
 +# Queue type. Options: ps, SGE, LSF, SLURM, PBS, eceaccess
 +TYPE = SLURM
 +HOST = finisterrae2
 +PROJECT = cns31
 +ADD_PROJECT_TO_HOST = false
 +USER = cns31364
 +SCRATCH_DIR = /mnt/lustre/scratch/home/res/cns31/cns31364/
 +TEST_SUITE = True
 +QUEUE = thinnodes
 +</code>
 +
 +== Add a new platform ==
 +
 +You can use  <code> module show YYY </code> To get the paths of the libraries
 +
 +<code xml /esnas/autosubmit/a0hd/proj/auto-ecearth3/sources/sources/config-build.xml>
 +...
 +<Platform name="finisterrae2-intel-intelmpi">
 +         <Description>
 +             HOST:        ft2.cesga.es
 +             ARCH:        linux_x86_64
 +             CPU MODEL:   24-core Intel Xeon E5-2680 v3 (Haswell) @ 2.5GHz
 +             MAINTAINER:  Joan Lopez de la Franca [joan.lopez@bsc.es]
 +             COMPILER:    i-compilers (icc+ifort, 17.0.1)
 +             MPI:         Intel MPI
 +             BLAS/LAPACK: Intel MKL
 +         </Description>
 + 
 +         <Parameter name="ECEARTH_SRC_DIR">
 +             <Description>Base directory for EC-Earth sources</Description>
 +             <Type>PATH</Type>
 +             <Value>/mnt/lustre/scratch/home/res/cns31/${USER}/${exp_name}/${PROJECT_DEST}/sources/sources</Value>
 +         </Parameter>
 + 
 +         <Parameter name="MPI_BASE_DIR">
 +             <Description>MPI base directory</Description>
 +             <Type>PATH</Type>
 +             <Value>/opt/cesga/intel/impi/5.1.3.223</Value>
 +         </Parameter>
 + 
 +         <Parameter name="MPI_INC_SUBDIR">
 +             <Description>MPI include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>include64</Value>
 +         </Parameter>
 + 
 +         <Parameter name="MPI_LIB_SUBDIR">
 +             <Description>MPI lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>lib64</Value>
 +         </Parameter>
 + 
 +         <Parameter name="MPI_LIBS_WITHOUT_L">
 +             <Description>MPI libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value>mpi mpiif mpigi</Value>
 +         </Parameter>
 + 
 +         <Parameter name="LAPACK_BASE_DIR">
 +             <Description>LAPACK base directory</Description>
 +             <Type>PATH</Type>
 +             <Value>/opt/cesga/intel/compilers_and_libraries_2016.3.210/linux/mkl</Value>
 +         </Parameter>
 + 
 +         <Parameter name="LAPACK_LIB_SUBDIR">
 +             <Description>LAPACK lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>lib/intel64</Value>
 +         </Parameter>
 + 
 +         <Parameter name="LAPACK_LIBS_WITHOUT_L">
 +             <Description>LAPACK libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value>mkl_intel_lp64 mkl_core mkl_sequential</Value>
 +         </Parameter>
 + 
 +         <Parameter name="NETCDF_BASE_DIR">
 +             <Description>NetCDF base directory</Description>
 +             <Type>PATH</Type>
 +             <Value>/opt/cesga/netcdf-fortran/4.4.3/intel/2016/impi/5.1</Value>
 +         </Parameter>
 + 
 +         <Parameter name="NETCDF_INC_SUBDIR">
 +             <Description>NetCDF include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>include</Value>
 +         </Parameter>
 + 
 +         <Parameter name="NETCDF_LIB_SUBDIR">
 +             <Description>NetCDF lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>lib</Value>
 +         </Parameter>
 + 
 +         <Parameter name="NETCDF_LIBS_WITHOUT_L">
 +             <Description>NetCDF libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value>netcdff netcdf</Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBAPI_BASE_DIR">
 +             <Description>GRIB API base directory</Description>
 +             <Type>PATH</Type>
 +             <Value>/opt/cesga/grib_api/1.14.5/intel/2016</Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBAPI_INC_SUBDIR">
 +             <Description>GRIB API include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>include</Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBAPI_LIB_SUBDIR">
 +             <Description>GRIB API lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>lib</Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBAPI_LIBS_WITHOUT_L">
 +             <Description>GRIB_API libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value>grib_api_f90 grib_api</Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBEX_BASE_DIR">
 +             <Description>GRIBEX base directory</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBEX_LIB_SUBDIR">
 +             <Description>GRIBEX lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="GRIBEX_LIBS_WITHOUT_L">
 +             <Description>GRIBEX libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value>gribexR64</Value>
 +         </Parameter>
 + 
 +         <Parameter name="JPEG_BASE_DIR">
 +             <Description>JPEG base directory</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="JPEG_INC_SUBDIR">
 +             <Description>JPEG include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="JPEG_LIB_SUBDIR">
 +             <Description>JPEG lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="JPEG_LIBS_WITHOUT_L">
 +             <Description>JPEG libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="SZIP_BASE_DIR">
 +             <Description>SZIP base directory</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="SZIP_INC_SUBDIR">
 +             <Description>SZIP include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="SZIP_LIB_SUBDIR">
 +             <Description>SZIP lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="SZIP_LIBS_WITHOUT_L">
 +             <Description>SZIP libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF4_BASE_DIR">
 +             <Description>HDF4 base directory</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF4_INC_SUBDIR">
 +             <Description>HDF4 include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF4_LIB_SUBDIR">
 +             <Description>HDF4 lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF4_LIBS_WITHOUT_L">
 +             <Description>HDF4 libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF5_BASE_DIR">
 +             <Description>HDF5 base directory</Description>
 +             <Type>PATH</Type>
 +             <Value>/opt/cesga/hdf5/1.8.16/intel/2016/impi/5.1</Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF5_INC_SUBDIR">
 +             <Description>HDF5 include directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>include</Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF5_LIB_SUBDIR">
 +             <Description>HDF5 lib directory relative to base dir</Description>
 +             <Type>PATH</Type>
 +             <Value>lib</Value>
 +         </Parameter>
 + 
 +         <Parameter name="HDF5_LIBS_WITHOUT_L">
 +             <Description>HDF5 libraries (without -l prefix)</Description>
 +             <Type>STRING</Type>
 +             <Value>hdf5_hl hdf5 z</Value>
 +         </Parameter>
 + 
 +         <Parameter name="MAKE">
 +             <Description>Make command (GNU make >3.81 needed!)</Description>
 +             <Type>STRING</Type>
 +             <Value>make</Value>
 +         </Parameter>
 + 
 +         <Parameter name="FC">
 +             <Description>F90 Compiler</Description>
 +             <Type>STRING</Type>
 +             <Value>ifort</Value>
 +         </Parameter>
 + 
 +         <Parameter name="FFLAGS">
 +             <Description>General F90 flags for compiling</Description>
 +             <Type>STRING</Type>
 +             <Value>-O2 -fp-model precise -xHost -g -traceback -r8</Value>
 +         </Parameter>
 + 
 +         <Parameter name="FFLAGS_FREEFORM">
 +             <Description>Allow for free format Fortran</Description>
 +             <Type>STRING</Type>
 +             <Value>-free</Value>
 +         </Parameter>
 + 
 +         <Parameter name="FFLAGS_FIXEDFORM">
 +             <Description>Expect fixed Fortran format</Description>
 +             <Type>STRING</Type>
 +             <Value>-fixed</Value>
 +         </Parameter>
 + 
 +         <Parameter name="FFLAGS_FPP_PREFIX">
 +             <Description>Fortran preprocessor flag prefix</Description>
 +             <Type>STRING</Type>
 +             <Value>-D</Value>
 +         </Parameter>
 + 
 +         <Parameter name="CC">
 +             <Description>C Compiler</Description>
 +             <Type>STRING</Type>
 +             <Value>icc</Value>
 +         </Parameter>
 + 
 +         <Parameter name="CFLAGS">
 +             <Description>General C flags for compiling</Description>
 +             <Type>STRING</Type>
 +             <Value>-O2 -fp-model precise -xHost -g -traceback</Value>
 +         </Parameter>
 + 
 +         <Parameter name="CFLAGS_CPP_PREFIX">
 +             <Description>C preprocessor flag prefix</Description>
 +             <Type>STRING</Type>
 +             <Value>-D</Value>
 +         </Parameter>
 + 
 +         <Parameter name="CXX">
 +             <Description>C++ Compiler</Description>
 +             <Type>STRING</Type>
 +             <Value>icc</Value>
 +         </Parameter>
 + 
 +         <Parameter name="LD">
 +             <Description>Linker</Description>
 +             <Type>STRING</Type>
 +             <Value>ifort</Value>
 +         </Parameter>
 + 
 +         <Parameter name="LDFLAGS">
 +             <Description>General flags for linking</Description>
 +             <Type>STRING</Type>
 +             <Value>-O2 -fp-model precise -xHost -g -traceback</Value>
 +         </Parameter>
 + 
 +         <Parameter name="AR">
 +             <Description>Command for building libraries from object files (usually ar)</Description>
 +             <Type>STRING</Type>
 +             <Value>ar</Value>
 +         </Parameter>
 + 
 +         <Parameter name="ARFLAGS">
 +             <Description>Flags for library building command (When using ar: include u)</Description>
 +             <Type>STRING</Type>
 +             <Value>curv</Value>
 +         </Parameter>
 + 
 +         <Parameter name="ARFLAGS_EXTRACT">
 +             <Description>Flags for library building command (When using ar: include u)</Description>
 +             <Type>STRING</Type>
 +             <Value>p</Value>
 +         </Parameter>
 + 
 +         <Parameter name="CPP">
 +             <Description>C preprocessor command</Description>
 +             <Type>STRING</Type>
 +             <Value>cpp</Value>
 +         </Parameter>
 + 
 +         <Parameter name="FPP">
 +             <Description>C preprocessor command</Description>
 +             <Type>STRING</Type>
 +             <Value>fpp</Value>
 +         </Parameter>
 + 
 +         <Parameter name="CPPFLAGS">
 +             <Description>C preprocessor flags</Description>
 +             <Type>STRING</Type>
 +             <Value>-P -C</Value>
 +         </Parameter>
 + 
 +         <Parameter name="XIOS_CFLAGS">
 +             <Description>CFLAGS flags for XIOS</Description>
 +             <Type>STRING</Type>
 +             <Value>-ansi -w</Value>
 +         </Parameter>
 + 
 +         <Parameter name="XIOS_ADD_LDFLAGS">
 +             <Description>More LD flags for XIOS</Description>
 +             <Type>STRING</Type>
 +             <Value>-lstdc++</Value>
 +         </Parameter>
 + 
 +         <Parameter name="OASIS_ADD_FFLAGS">
 +             <Description>More F90 flags for Oasis</Description>
 +             <Type>STRING</Type>
 +             <Value>-132 -check pointers -check uninit</Value>
 +         </Parameter>
 + 
 +         <Parameter name="OASIS_ADD_PPDEFS">
 +             <Description>More CPP/FPP macros for Oasis</Description>
 +             <Type>STRING</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="OASIS_ADD_LDFLAGS">
 +             <Description>More LD flags for Oasis</Description>
 +             <Type>STRING</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="NEMO_ADD_FFLAGS">
 +             <Description>More F90 flags for Nemo</Description>
 +             <Type>STRING</Type>
 +             <Value>-check pointers -check uninit -fpe0</Value>
 +         </Parameter>
 + 
 +         <Parameter name="NEMO_ADD_LDFLAGS">
 +             <Description>More LD flags for Nemo</Description>
 +             <Type>STRING</Type>
 +             <Value>-lstdc++</Value>
 +         </Parameter>
 + 
 +         <Parameter name="IFS_PPDEFS">
 +             <Description>Preprocessor defs for IFS sources</Description>
 +             <Type>STRING</Type>
 +             <Value>linux LINUX LITTLE LITTLE_ENDIAN POINTER_64 BLAS</Value>
 +         </Parameter>
 + 
 +         <Parameter name="IFSAUX_ADD_FFLAGS">
 +             <Description>More F90 flags for ifs/ifsaux</Description>
 +             <Type>STRING</Type>
 +             <Value></Value>
 +         </Parameter>
 + 
 +         <Parameter name="MAKEDEPF90">
 +             <Description>F90 dependency generator</Description>
 +             <Type>STRING</Type>
 +             <Value>$(ECEARTH_SRC_DIR)/util/makedepf90/bin/makedepf90</Value>
 +         </Parameter>
 + 
 +     </Platform>
 +     ...
 +</code>
 +
 +
 +== Add in the remote setup script the new platform ==
 +
 +
 +<code bash /esnas/autosubmit/a0hd/proj/auto-ecearth3/templates/common/common.remotesetup>
 +...
 +
 +# Run ec-conf
 +
 +cd ${CURRENT_ROOTDIR}/${PROJNAME}/sources/sources
 +case ${HPCARCH} in
 +  marenostrum3)
 +    util/ec-conf/ec-conf --platform marenostrum3-intel-intelmpi config-build.xml
 + ;;
 +  finisterrae2)
 +    util/ec-conf/ec-conf --platform finisterrae2-intel-intelmpi config-build.xml
 +        ;;
 +  cca-intel)
 +    util/ec-conf/ec-conf --platform cca-intel-mpi config-build.xml
 + ;;
 +  *)
 +    error "Unsupported ec-conf architechture: ${HPCARCH}"
 + ;;
 +esac
 +...
 +</code>
setup_auto_ec-earth_to_run_in_a_new_cluster.1488907750.txt.gz ยท Last modified: 2017/03/07 17:29 by pechevar