|
|
|
[[_TOC_]]
|
|
|
|
|
|
## Connection on the front end
|
|
## Connection on the front end
|
|
|
|
|
|
Access to the front end is done via an ssh connection:
|
|
Access to the front end is done via an ssh connection:
|
... | @@ -15,4 +17,25 @@ To effectuate interactive executions of your GPU codes on compute nodes with GPU |
... | @@ -15,4 +17,25 @@ To effectuate interactive executions of your GPU codes on compute nodes with GPU |
|
- or to directly execute your code on the GPU partition.
|
|
- or to directly execute your code on the GPU partition.
|
|
- The `salloc` command to reserve GPU resources which allows you to do more than one execution consecutively.
|
|
- The `salloc` command to reserve GPU resources which allows you to do more than one execution consecutively.
|
|
|
|
|
|
However, if the computations require a large amount of GPU resources (in number of cores, memory, or elapsed time), it is necessary to submit a batch job. |
|
However, if the computations require a large amount of GPU resources (in number of cores, memory, or elapsed time), it is necessary to submit a batch job.
|
|
\ No newline at end of file |
|
|
|
|
|
## Obtaining a terminal on a GPU compute node
|
|
|
|
|
|
|
|
It is possible to open a terminal directly on an accelerated compute node on which the resources have been reserved for you (here, 1 GPU on the default gpu partition) by using the following command:
|
|
|
|
|
|
|
|
$ srun --pty --ntasks=1 --cpus-per-task=10 --gres=gpu:1 --hint=nomultithread [--other-options] bash
|
|
|
|
|
|
|
|
Comments:
|
|
|
|
|
|
|
|
An interactive terminal is obtained with the --pty option.
|
|
|
|
The reservation of physical cores is assured with the --hint=nomultithread option (no hyperthreading).
|
|
|
|
The memory allocated for the job is proportional to the number of requested CPU cores . For example, if you request 1/4 of the cores of a node, you will have access to 1/4 of its memory. On the default gpu partition, the --cpus-per-task=10 option allows reserving 1/4 of the node memory per GPU. On the gpu_p2 partition (--partition=gpu_p2), you need to specify --cpus-per-task=3 to reserve 1/8 of the node memory per GPU, and thus be coherent with the node configuration. You may consult our documentation on this subject: Memory allocation on GPU partitions.
|
|
|
|
--other-options contains the usual Slurm options for job configuration (--time=, etc.): See the documentation on batch submission scripts in the index section Execution/Commands of a GPU code.
|
|
|
|
The reservations have all the resources defined in Slurm by default, per partition and per QoS (Quality of Service). You can modify the limits of them by specifying another partition and/or QoS as detailed in our documentation about the partitions and QoS.
|
|
|
|
For multi-project users and those having both CPU and GPU hours, it is necessary to specify on which project account (project hours allocation) to count the computing hours of the job as explained in our documentation about computing hours management.
|
|
|
|
We strongly recommend that you consult our documentation detailing computing hours management on Jean Zay to ensure that the hours consumed by your jobs are deducted from the correct allocation.
|
|
|
|
|
|
|
|
The terminal is operational after the resources have been granted:
|
|
|
|
|
|
|
|
$ srun --pty --ntasks=1 --cpus-per-task=10 --gres=gpu:1 --hint=nomultithread bash
|
|
|
|
|