ADF/AMS
Overview
We have a number of installs of ADF and AMS on the CSF. Details below.
Restrictions on use
Three PIs/research groups are licensed to use this software on the CSF:
Steve Liddle
Nikolas Kaltsoyannis
Michael Baker
Only members of the above groups may use the software and only the versions for which they are licensed.
To get access please email its-ri-team@manchester.ac.uk copying the relevant PI.
License restrictions
The license may limit how many cores/tokens can be in use at any one time. If you or other colleagues have jobs running that mean this limit has been reached, then your jobs will queue until enough licenses (and other resources, e.g. cores) become available.
Set up procedure
Load one of the following modulefiles appropriate to your group:
module load apps/binapps/adf/2017.114-sl # Steve Liddle Group. module load apps/binapps/adf/2024.106-nk # Nik Kaltsoyannis Group. module load apps/binapps/adf/2023.105-nk # Nik Kaltsoyannis Group. # Max no. of license tokens available between all versions = 32 module load apps/binapps/adf/2023.104-mb # Michael Baker Group . # Max no. of license tokens available = 32
We now recommend loading modulefiles within your jobscript so that you have a full record of how the job was run. See the example jobscript below for how to do this. Alternatively, you may load modulefiles on the login node and let the job inherit these settings.
Running the application
Please do not run ADF on the login node. Jobs should be submitted to the compute nodes via batch.
Serial batch job submission
To run a job create a directory with the relevant input files in it.
In the same directory create a batch submission script (which will load the modulefile in the jobscript) using gedit , for example:
#!/bin/bash --login #SBATCH -p multicore #SBATCH -t 1-0 # A limit to 1 day (of a maximum of 7 days). #SBATCH -L adflic_nk:1 # This line is essential. # If necessary replace nk with the appropriate PI initials (sl, nk, mb). # The no. must be 1. module purge module load apps/binapps/adf/2022.103-nk # Or the appropriate modulefile for your PI/group ams <run.in >run.out
#!/bin/bash --login #$ -cwd # Job will run from the current directory #$ -l adflic_nk=1 # This line is essential. # If necessary replace nk with the appropriate PI initials (sl, nk, mb). # The no. must be 1. module load apps/binapps/adf/2022.103-nk # Or the appropriate modulefile for your PI/group adf -n $NSLOTS < run.in > run.out ## OR for versions 2020 and above, use the ams command as below. ams -n $NSLOTS < run.in > run.out
Note 1: You can replace in the above command with another component if you wish, for example gennbo6
, adfnbo
. Make sure that if specific parameters are required you also specify these.
Note 2: The variable $NSLOTS
will automatically be set to 1 core.
To submit the job use this command
sbatch scriptname
qsub scriptname
where scriptname is the name of your jobscript.
Parallel batch job submission
To run a job create a directory with the relevant input files in it.
In the same directory create a batch submission script (which will load the modulefile in the jobscript) using gedit , for example:
#!/bin/bash --login #SBATCH -p multicore #SBATCH -t 1-0 # A limit to 1 day (of a maximum of 7 days). #SBATCH -n 4 # Allocate space of 4 tasks (a domain of 2--32). #SBATCH -L adflic_nk:4 # This line is essential. # If necessary replace nk with the appropriate PI initials (sl, nk, mb). # The no. must match the no. you ask for on the -n line. module purge module load apps/binapps/adf/2022.103-nk ams <run.in >run.out
#!/bin/bash --login #$ -cwd # Job will run from the current directory # NO -V line - we load modulefiles in the jobscript #$ -pe smp.pe 4 # REQUEST CORES. SET A NUMBER BETWEEN 2 and 32. #$ -l adflic_nk=4 # This line is essential. # If necessary replace nk with the appropriate PI initials (sl, nk, mb). # The no. must match the no. you ask for on the smp.pe line. module load apps/binapps/adf/2022.103-nk adf -n $NSLOTS < run.in > run.out ## OR for versions 2020 and higher use the ams command as below. ams -n $NSLOTS < run.in > run.out
Submit the jobscript using:
sbatch scriptname
qsub scriptname
where scriptname is the name of your jobscript.
Note 1: You can replace in the above command with another component if you wish, for example gennbo6
adfnbo
. Make sure that if specific parameters are required you also specify these. Not all components will be able to use more than one core, check the official ADF documentation for mroe information.
Note 2: The variable $NSLOTS
will automatically be set to the number of cores you have specified against #$ -l smp.pe
Note 3: When using the Amsterdam Modelling Suite (AMS) driver, the command will detect the number of available tasks and start as many processes. To limit this count, pass a value between 1 and $SLURM_NTASKS
.
To submit the job use this command
sbatch jobscript
qsub jobscript
where jobscript
is the name of the file that contains your jobscript.
Interactive jobs
Sometimes you may wish to run some short steps without resorting to a batch job. For that try an interactive job – this requests some resources on a compute node and runs commands there for you. For example the following uses adf2aim to process the relevant file in your current directory:
salloc -p interactive -t 60 -L adflic_nk:1 module load apps/binapps/adf/2022.103-nk srun adf2aim
module load apps/binapps/adf/2022.103-nk qrsh -l short -V -cwd adf2aim
Further info
Updates
None.