Software configuration
During this course, you will use a cluster of computer to run experiments. This platform is managed by Albator.
SSH configuration
Creating an ssh key
First, you need an ssh key. If you don't have one, generate it with:
This generates a pair of ssh keys that consist of:
- /home/student/.ssh/id_rsa: a private key (that you should never share !)
- /home/student/.ssh/id_rsa.pub: a public key (that you can share)
ssh config
Slurm
In order to arbitrate access of many students to the computing resources, we use the SLURM job scheduler. This allows you to run a program on a set of computing resource without being disturbed by other students.
My first slurm job
To submit a slurm job, you first need to connect to arcadia-slurm-controller:
You can now run the hostname command through slurm by running:
The srun command asks slurm to allocate computing resources and run a command. In this example, we srun with several parameters:
- --account=csc_5001 is used so that the cluster admimnistrators know the resource usage of the different groups of students
- --partition=starfighter asks for computing resources on the starfighter cluster
- --time=00:10:00 specifies the duration of the job (10 minutes). If the command takes more than this duration, it will be automatically killed by Slurm
- --cpus-per-task=8 specify the number of requested CPUs
- hostname is the command to run on the allocated computing resource. This command simply prints the hostname of the machine
You may specify other options to srun, including:
- -o output_file redirects the command stdout to a file
- -N 5 asks for 5 different compute node (useful for running MPI programs)
- -n 20 runs 20 differents processes (useful for running MPI programs)
- --pty bash requests an interactive shell (useful for debugging !)
- -gres=gpu:1 ask for a GPU