Actions

Difference between revisions of "GPU Nodes"

From Montana Tech High Performance Computing

(Created page with "Nodes 20 and 21 have three NVIDIA Tesla K20 Graphical Processing Unit (GPU) accelerators and 128 GB of RAM. Normal jobs will be assigned to these nodes only when all other co...")
 
Line 10: Line 10:
  
 
One option is to request the specific node:
 
One option is to request the specific node:
: msub -l nodes=n21 ....  
+
 
 +
: <code>msub -l nodes=n21 .... </code>
  
 
The preferred method is to request a gpunode:
 
The preferred method is to request a gpunode:
: msub -l nodes=1:ppn=16,feature=gpunode  (If 16 processors on the node are needed, recall defaults is 1).
+
 
 +
: <code>msub -l nodes=1:ppn=16,feature=gpunode</code> (If 16 processors on the node are needed, recall defaults is 1).
  
 
In a job script, the request would look something like:
 
In a job script, the request would look something like:
: #!/bin/sh
+
: <code style=display:block>#!/bin/sh<br>#PBS -l nodes=1:ppn=2<br>#PBS -l feature=gpunode<br>#PBS -N GPUJob<br>#PBS -d /home/mtech/''username/working_dir''<br>#PBS -S /bin/bash<br>...</code>
: #PBS -l nodes=1:ppn=2
+
If interactive access is needed to test and debug your CUDA code:
: #PBS -l feature=gpunode
 
: #PBS -N GPUJob
 
: #PBS -d /home/mtech/''username/working_dir''
 
: #PBS -S /bin/bash
 
: ...
 
  
If interactive access is needed to test and debug your CUDA code:
+
: <code>msub -I -l feature=gpunode</code>
: msub -I -l feature=gpunode
 
  
 
(note that is upper case i and a lower case L)
 
(note that is upper case i and a lower case L)

Revision as of 15:13, 15 September 2017

Nodes 20 and 21 have three NVIDIA Tesla K20 Graphical Processing Unit (GPU) accelerators and 128 GB of RAM.

Normal jobs will be assigned to these nodes only when all other compute nodes are in use.

CUDA

CUDA is the NVIDIA programming language for Graphical Processing Units (GPUs).

Accessing GPU nodes

To request a GPU node can be done via the resource list flag (-l [resource list]).

One option is to request the specific node:

msub -l nodes=n21 ....

The preferred method is to request a gpunode:

msub -l nodes=1:ppn=16,feature=gpunode (If 16 processors on the node are needed, recall defaults is 1).

In a job script, the request would look something like:

#!/bin/sh
#PBS -l nodes=1:ppn=2
#PBS -l feature=gpunode
#PBS -N GPUJob
#PBS -d /home/mtech/username/working_dir
#PBS -S /bin/bash
...

If interactive access is needed to test and debug your CUDA code:

msub -I -l feature=gpunode

(note that is upper case i and a lower case L)