User Tools

Site Tools


gpu

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
gpu [2017/10/10 18:58]
root
gpu [2017/10/10 20:21]
root
Line 12: Line 12:
 If you reset mode with ''​-c {0-2}'',​ please reset ''​-c 3''​ at the end of the job. If you reset mode with ''​-c {0-2}'',​ please reset ''​-c 3''​ at the end of the job.
  
-Users may select either a half node (ppn=4 on 8 core and ppn=8 on 16 core), a quarter K80 node (ppn=6 on 24 core), or a full node (ppn=the number of CPU cores). ​ One of the following conditions is required to select a full node:(1) use multiple GPUs; or (2) use more than half the main memory. Jobs that take up a full node and don't meet these conditions are subject to cancellation. If your program takes the number of GPUs as an input, remember that K80s in the condo nodes are essentially each two K20X in a single package, so the operating system sees 4 GPUs out of two K80s.+Most CUDA programs follow one of three programming models: 
 +(1) often older programs assume a single GPU and ignore cudasetdevice(),​ so devices=1;​ 
 +(2) some programs count the available GPUs and use them all, and devices=all;​ 
 +(3) MPI programs often match a single GPU with a single MPI process (who may also be CPU multi-threaded),​ so devices=MPI processes per node. 
 + 
 +You should select your CPU cores accordingly to get a known number of GPUs. Users may select either a half node (ppn=4 on 8 core and ppn=8 on 16 core), a quarter ​or half K80 node (ppn=6 ​pr 12 on 24 core), or a full node (ppn=the number of CPU cores). ​ One of the following conditions is required to select a full node:(1) use multiple GPUs; or (2) use more than half the main memory. Jobs that take up a full node and don't meet these conditions are subject to cancellation. If your program takes the number of GPUs as an input, remember that K80s in the condo nodes are essentially each two K20X in a single package, so the operating system sees 4 GPUs out of two K80s.
  
 There is a system script on each gpu node which detects the available unused GPU devices by calling ''​nvidia-smi''​ and parsing the output. This script can be called, below in backticks, and supplied to the environment variable CUDA_VISIBLE_DEVICES to set the devices for your program: There is a system script on each gpu node which detects the available unused GPU devices by calling ''​nvidia-smi''​ and parsing the output. This script can be called, below in backticks, and supplied to the environment variable CUDA_VISIBLE_DEVICES to set the devices for your program:
gpu.txt · Last modified: 2017/10/10 20:21 by root