Examples
Batch system examples
We have made a few examples of how to use the batch system, both from the command line and through a batch submit file.
We have made a few examples of how to use the batch system, both from the command line and through a batch submit file.
Intel Xeon Phi x200, codename Knights Landing (KNL), is second generation MIC architecture product from Intel. At HPC2N 36 nodes, as a part of Kebnekaise, are equipped with Intel Xeon Phi 7250 CPUs. See our description of Intel Knight Landing for more information about the nodes.
At a high level there are three key aspects to achieving code performance on KNL:
NOTE: your project need to have time on the GPU nodes to use them, as they are considered a separate resource now. To use them you use the SLURM command mentioned below. For V100s there is no specific partition you need to give, but there is for the A100s - see below.
We have two types of GPU cards available on Kebnekaise, NVIDIA Tesla V100 (Volta) and NVIDIA A100 (Ampere).
To request GPU resources one has to include a GRES in the submit file. The general format is:
A basic example | Two jobs simultaneously | Separate output/error files | MPI jobs | Multiple parallel jobs sequentially | Multiple parallel jobs simultaneously
A job can be given the constraint that it only starts after another job has finished.
In the following example, we have two Jobs, A and B. We want Job B to start after Job A has successfully completed.
First we start Job A by submitting it
$ sbatch <jobA.sh>
Making note of the assigned job ID for Job A, we then submit Job B with the added condition that it only starts after Job A has successfully completed:
To cancel a job, use scancel. You need the running or pending jobid. It is only the job's owner and SLURM administrators that can cancel jobs.
$ scancel <jobid> To cancel all your jobs (running and pending) you can run $ scancel -u <username> You get the job id when you submit the job. |
To see status of partitions and nodes, use
$ sinfo
To get the status of all SLURM jobs
$ squeue
To only view the jobs in the largemem partition on Kebnekaise
$ queue -p largemem
Get the status of an individual job
$ scontrol show job <jobid>
#!/bin/bash # Example with 4 tasks and 28 cores per task for MPI+OpenMP # # Project/Account #SBATCH -A hpc2n-1234-56 # # Number of MPI tasks #SBATCH -n 4 # # Number of cores per task #SBATCH -c 28 # # Runtime of this jobs is less then 12 hours. #SBATCH --time=12:00:00 # # Clear the environment from any previously loaded modules module purge > /dev/null 2>&1 # Load the module environment suitable for the job module load foss/2019a
#!/bin/bash # Example with 28 cores for OpenMP # # Project/Account #SBATCH -A hpc2n-1234-56 # # Number of cores #SBATCH -c 28 # # Runtime of this jobs is less then 12 hours. #SBATCH --time=12:00:00 # # Clear the environment from any previously loaded modules module purge > /dev/null 2>&1 # Load the module environment suitable for the job module load foss/2019a # Set OMP_NUM_THREADS to the same value as -c # with a fallback in case it isn't set.