diff --git a/content/guides/submitting_jobs/submitting_cuda_or_openacc_jobs.md b/content/guides/submitting_jobs/submitting_cuda_or_openacc_jobs.md index eab255f31fabd50e1f099492142220c12d9e363a..4b34235e4dca0cd0cd3a200b68033e6fc77c1d38 100644 --- a/content/guides/submitting_jobs/submitting_cuda_or_openacc_jobs.md +++ b/content/guides/submitting_jobs/submitting_cuda_or_openacc_jobs.md @@ -5,7 +5,7 @@ description = "How to submit GPU (CUDA/OpenACC) jobs on HCC resources." ### Available GPUs -Crane has four types of GPUs available in the **gpu** partition. The +Crane has four types of GPUs available in the `gpu` partition. The type of GPU is configured as a SLURM feature, so you can specify a type of GPU in your job resource requirements if necessary. @@ -46,6 +46,13 @@ a feature. To run on K40 GPUs for example: --partition=gpu --gres=gpu --constraint=gpu_k40 {{< /highlight >}} +{{% notice info %}} +You may request multiple GPUs by changing the` --gres` value to +-`-gres=gpu:2`. Note that this value is **per node**. For example, +`--nodes=2 --gres=gpu:2 `will request 2 nodes with 2 GPUs each, for a +total of 4 GPUs. +{{% /notice %}} + The GPU memory feature may be used to specify a GPU RAM amount either independent of architecture, or in combination with it. For example, using @@ -54,20 +61,17 @@ For example, using {{< /highlight >}} will request a GPU with 16GB of RAM, independent of the type of card (K20, K40, P100, etc.). You may also -request both a GPU type _and_ memory amount using the `&` operator. For example, +request both a GPU type _and_ memory amount using the `&` operator (single quotes are used because `&` is a special character). +For example, {{< highlight batch >}} ---partition=gpu --gres=gpu --constraint=gpu_32gb&gpu_v100 +--partition=gpu --gres=gpu --constraint='gpu_32gb&gpu_v100' {{< /highlight >}} will request a V100 GPU with 32GB RAM. - -{{% notice info %}} -You may request multiple GPUs by changing the` --gres` value to --`-gres=gpu:2`. Note that this value is **per node**. For example, -`--nodes=2 --gres=gpu:2 `will request 2 nodes with 2 GPUs each, for a -total of 4 GPUs. +{{% notice warning %}} +You must verify the GPU type and memory combination is valid based on the [available GPU types.]({{< relref "submitting_cuda_or_openacc_jobs/#available-gpus" >}}). Requesting a nonexistent combination will cause your job to be rejected with a `Requested node configuration is not available` error. {{% /notice %}} ### Compiling