1 | ## (Super)Computer configuration template |
---|
2 | ##--------------------------------------------------- |
---|
3 | |
---|
4 | ## Copy to root, rename it and then fill in according to your (super)computer environment |
---|
5 | ## Rules for completion: undefined variables (=) are mandatory & void variables (='') are optional |
---|
6 | ## Look into other configuration file for examples |
---|
7 | |
---|
8 | |
---|
9 | ## Default settings |
---|
10 | ##--------------------------------------------------- |
---|
11 | # (Super)Computer environment (${TRUS_XIOS} is already defined in the user configuration file) |
---|
12 | TRUS_ENVI=${TRUS_XIOS}/arch/arch-${TRUS_HPCC} |
---|
13 | ## If `module` is available, ${TRUS_ENVI}.env will be sourced |
---|
14 | ## If not (scheduled jobs), it will be ${TRUS_ENVI}.path or finally ${TRUS_ENVI} |
---|
15 | |
---|
16 | ## Comparison command with restart files as argument (think to append $PATH by any way) |
---|
17 | TRUS_CDOD='cdo diffn' |
---|
18 | |
---|
19 | [ -z "${TRUS_NPRO}" ] && TRUS_NPRO= ## Number of compiling processes |
---|
20 | [ -z "${TRUS_TOUT}" ] && TRUS_TOUT= ## Timeout for computation (s) |
---|
21 | |
---|
22 | |
---|
23 | ## (Super)computer environment |
---|
24 | ##--------------------------------------------------- |
---|
25 | ## Job commands will almost always be used with `eval ${TRUS_JXXX}` because |
---|
26 | ## they will certainly need job ID number as argument for working |
---|
27 | TRUS_JSPT= ## Submission script contained ./batch folder, will be copied to testing folder |
---|
28 | TRUS_JSUB= ## Submit a job and get his ID on the fly (assigned to ${TRUS_JIDN}) |
---|
29 | ## ex: `llsubmit ${TRUS_JSPT} | grep -oe '\<[0-9]*\>'` |
---|
30 | TRUS_JSTA= ## Test state of the submitted job (true -> pending/running or false -> completed/crashed) |
---|
31 | ## ex: "llq | grep \${TRUS_JIDN}" |
---|
32 | TRUS_JKIL= ## Kill the submitted job |
---|
33 | ## ex: "llcancel \${TRUS_JIDN}" |
---|
34 | |
---|
35 | ## Computational performances of job (respectively elapsed time, max physical & virtual memory) |
---|
36 | TRUS_JTIM='' ## ex: "grep IdrisMemMPI NEMO_CI_\${TRUS_JIDN} | cut -d, -f1 | awk '{print \$(NF-1),\$NF}" |
---|
37 | TRUS_JPME='' ## ex: "grep IdrisMemMPI NEMO_CI_\${TRUS_JIDN} | cut -d, -f3 | awk '{print \$3 ,\$4 }" |
---|
38 | TRUS_JVME='' ## ex: "grep IdrisMemMPI NEMO_CI_\${TRUS_JIDN} | cut -d, -f2 | awk '{print \$3 ,\$4 }" |
---|
39 | |
---|
40 | TRUS_JINF='' ## Get job informations to fill in a logfile during computation |
---|
41 | ## ex: "llq -x \${TRUS_JIDN}" |
---|
42 | |
---|
43 | ## Compiler (use with `${TRUS_CMPV} --version`) |
---|
44 | TRUS_CMPV='' ## ex: 'ifort'|'gfortran'|'pgfortran'|... |
---|
45 | |
---|
46 | ## Software/libraries (string pattern to match just before the release number in $PATH) |
---|
47 | ## Respectively CDO (Climate Data Operators) / MPI libraries / NetCDF libraries |
---|
48 | TRUS_CDOR='' ## ex: 'cdo/'|'netcdf-utils-' |
---|
49 | TRUS_MPIR='' ## ex: 'intel/impi/'|'bullxmpi/' |
---|
50 | TRUS_CDFR='' ## ex: 'netcdf/'|'netcdf-' |
---|