## (Super)Computer configuration template ##-------------------------------------------------------------------------------- ## Copy/Rename it and fill in according to your environment. ## Rules for completion: ##o Undefined variables (XXX= ) are mandatory ##o Empty variables (XXX='') are optional, default value ## Look into other configuration file for examples. ## Most of the settings can be changed "on-the-fly" from the console to avoid ##+ the creation of several configuration files. ##+ See `./trusting.sh -h` ##-------------------------------------------------------------------------------- ## Default settings ##--------------------------------------------------- # (Super)Computer environment (${TRUST_IO_XIOS} is already defined in the user configuration file) TRUST_JOB_ENV='' ${TRUST_IO_XIOS}/arch/arch-${TRUST_MAIN_HPCC} ## If `module` is available, ${TRUST_JOB_ENV}.env will be sourced ## If not (scheduled jobs), it will be ${TRUST_JOB_ENV}.path or finally ${TRUST_JOB_ENV} ## Comparison command with restart files as argument (think to append $PATH by any way) ='cdo diffn' TRUST_COMPILE_NPROC= ## Number of compiling processes TRUST_JOB_TIMEOUT= ## Timeout for computation (s) ## (Super)computer environment ##--------------------------------------------------- ## Job commands will almost always be used with `eval ${TRUST_JOB_XXX}` because ## they will certainly need job ID number as argument for working TRUST_JOB_SCRIPT= ## Submission script contained ./batch folder, will be copied to testing folder TRUST_JOB_SUBMIT= ## Submit a job and get his ID on the fly (assigned to ${TRUST_JOB_ID}) ## ex: `llsubmit ${TRUST_JOB_SCRIPT} | grep -oe '\<[0-9]*\>'` TRUST_JOB_STATE= ## Test state of the submitted job (true -> pending/running or false -> completed/crashed) ## ex: "llq | grep \${TRUST_JOB_ID}" TRUST_JOB_KILL= ## Kill the submitted job ## ex: "llcancel \${TRUST_JOB_ID}" ## Computational performances of job (respectively elapsed time, max physical & virtual memory) TRUST_JOB_TIME='' ## ex: "grep IdrisMemMPI NEMO_CI_\${TRUST_JOB_ID} | cut -d, -f1 | awk '{print \$(NF-1),\$NF}" TRUST_JOB_RAM_P='' ## ex: "grep IdrisMemMPI NEMO_CI_\${TRUST_JOB_ID} | cut -d, -f3 | awk '{print \$3 ,\$4 }" TRUST_JOB_RAM_V='' ## ex: "grep IdrisMemMPI NEMO_CI_\${TRUST_JOB_ID} | cut -d, -f2 | awk '{print \$3 ,\$4 }" TRUST_JOB_INFO='' ## Get job informations to fill in a logfile during computation ## ex: "llq -x \${TRUST_JOB_ID}" ## Compiler (use with `${TRUST_COMPILE_FORTRAN} --version`) TRUST_COMPILE_FORTRAN='' ## ex: 'ifort'|'gfortran'|'pgfortran'|... ## Software/libraries (string pattern to match just before the release number in $PATH) ## Respectively CDO (Climate Data Operators) / MPI libraries / NetCDF libraries TRUST_IO_CDO='' ## ex: 'cdo/'|'netcdf-utils-' TRUST_COMPILE_MPI='' ## ex: 'intel/impi/'|'bullxmpi/' TRUST_COMPILE_NETCDF='' ## ex: 'netcdf/'|'netcdf-'