Serial and small parallel jobs, called fractional, run on the gpil partition and use the same QoS, typically nf for regular users in the Atos HPCF service. For ECS users, they will run on the ecs partition on queue ef.
These are the default queue and partition. They will be used if no directives are specified.
See man sbatch
or https://slurm.schedmd.com/sbatch.html for the complete set of options that may be used to configure a job.
ECS users
All examples here are using the nf queue, which is available to users of the HPCF service. If using ECS, you should submit the job to the ef queue instead
Submitting a serial job
A serial job will not use more than one cpu, so it is intended for non-threaded non-MPI applications. This is the default type of job if no settings are specified in the job.
Submitting the script above with sbatch
would just configure the job with the default settings, including the output and error files being named slurm-<jobid>.out
and slurm-<jobid>.err
on the current directory. A more complete serial job with some changes on the configuration would be the following:
This would name the job "test", set a wall clock time limit of 10 minutes and a memory limit of 100 MiB. The working directory would be set to /scratch... (to be changed by the actual value of the directory), and the output would be sent to /scratch/.../test-serial.%N.%j.out, with %N being the name of the node running the job and %j the job ID.
Submitting a fractional job
Fractional jobs are small parallel jobs that will share the same GPIL node with other jobs. This is intended for small threaded applications or small MPI executions.
Threaded application
If you want to run a threaded application, you should allow for as many cpus as threads you want to spawn with the cpus-per-task
option
Small MPI or multiprocess application
For small (up to few tens of tasks) MPI or multiprocess runs, you may run using the fractional QoS as well.
To spawn an MPI application you must use srun
The example above would run a 16 task MPI application
Small hybrid application
For small (up to few tens of CPUS) hybrid (MPI + multithreaded) runs, you may run using the fractional QoS as well.
To spawn an MPI application you must use srun
The following example woud run a small hybrid MPI + OpenMP application, spawning 4 MPI tasks with 4 threads each one of them.