Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

You can check the versions installed in Gadi with a module query:

Code Block
languagebash
$ module avail cuda

We normally recommend using the latest version available and always recommend to specify the version number with the module command:

Code Block
languagebash
$ module load cuda/11.4.1

...

An example PBS job submission script named cuda_job.sh is provided below. It requests 48 CPU cores, 4 GPUs, 350 GiB memory, and 400 GiB local disk on a compute node on Gadi from the gpuvolta queue for its exclusive access for 30 minutes against the project a00. It also requests the system to enter the working directory once the job is started. This script should be saved in the working directory from which the analysis will be done. To change the number of CPU cores, memory, or jobfs required, simply modify the appropriate PBS resource requests at the top of the job scrip files according to the information available at https://opus.nci.org.au/display/Help/Queue+Structure. Note that if your application does not work in parallel, setting the number of CPU cores to 1 and changing the memory and jobfs accordingly is required to prevent the compute resource waste.

Code Block
languagebash
#!/bin/bash

#PBS -P a00
#PBS -q gpuvolta
#PBS -l ncpus=48
#PBS -l ngpus=4
#PBS -l mem=350GB
#PBS -l jobfs=400GB
#PBS -l walltime=00:30:00
#PBS -l wd

# Load modules, always specify version number.
module load cuda/11.4.1
module load openmpi/4.1.0

# Must include `#PBS -l storage=scratch/ab12+gdata/yz98` if the job
# needs access to `/scratch/ab12/` and `/g/data/yz98/`. Details on:
# https://opus.nci.org.au/display/Help/PBS+Directives+Explained.

# Run application
# The following will run 1 MPI process per GPU and there are 4
# GPUs in each GPU node.
mpirun -np $PBS_NGPUS --map-by ppr:1:numa <your CUDA exe>

To run the job you would use the PBS command:

Code Block
languagebash
$ qsub cuda_job.sh