Professional Documents
Culture Documents
Matching SM Architectures (CUDA Arch and CUDA Gencode) For Various NVIDIA Cards - Blame Arnon
Matching SM Architectures (CUDA Arch and CUDA Gencode) For Various NVIDIA Cards - Blame Arnon
Home About me
IT
overheard
haskell
Blame Arnon
GPUs
gcc
Databases
SQream DB
Uncategorized
Network Security
Talks
Below are the supported sm variations and sample cards from that generation
Matching SM architectures (CUDA
arch and CUDA gencode) for various
Supported on CUDA 7 and later NVIDIA cards
Fermi (CUDA 3.2 and later, deprecated from CUDA 9): Posted by Arnon Shimoni
SM20 or SM_20, compute_30 – Older cards such as GeForce 400, 500, 600, GT-630
http://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/ 1/4
5/11/2018 Matching SM architectures (CUDA arch and CUDA gencode) for various NVIDIA cards - Blame Arnon
SM52 or SM_52, compute_52 – Quadro M6000 , GeForce 900, GTX-970, GTX-980, GTX Titan X
SM61 or SM_61, compute_61 – GTX 1080, GTX 1070, GTX 1060, GTX 1050, GTX 1030, Titan Xp,
Tesla P40, Tesla P4
Sample flags
According to NVIDIA:
The arch= clause of the -gencode= command-line option to nvcc specifies the front-end
compilation target and must always be a PTX version. The code= clause specifies the back-
end compilation target and can either be cubin or PTX or both. Only the back-end target
version(s) specified by the code= clause will be retained in the resulting binary; at least one
must be PTX to provide Volta compatibility.
1. -arch=sm_30 \
2. -gencode=arch=compute_20,code=sm_20 \
3. -gencode=arch=compute_30,code=sm_30 \
4. -gencode=arch=compute_50,code=sm_50 \
5. -gencode=arch=compute_52,code=sm_52 \
6. -gencode=arch=compute_52,code=compute_52
Sample flags for generation on CUDA 8 for maximum compatibility:
1. -arch=sm_30 \
2. -gencode=arch=compute_20,code=sm_20 \
3. -gencode=arch=compute_30,code=sm_30 \
4. -gencode=arch=compute_50,code=sm_50 \
5. -gencode=arch=compute_52,code=sm_52 \
6. -gencode=arch=compute_60,code=sm_60 \
7. -gencode=arch=compute_61,code=sm_61 \
8. -gencode=arch=compute_61,code=compute_61
Sample flags for generation on CUDA 9 for maximum compatibility. Note the removed SM_20:
1. -arch=sm_30 \
2. -gencode=arch=compute_30,code=sm_30 \
3. -gencode=arch=compute_50,code=sm_50 \
4. -gencode=arch=compute_52,code=sm_52 \
5. -gencode=arch=compute_60,code=sm_60 \
6. -gencode=arch=compute_61,code=sm_61 \
7. -gencode=arch=compute_62,code=sm_62 \
8. -gencode=arch=compute_70,code=sm_70 \
9. -gencode=arch=compute_70,code=compute_70
Leave a Reply
http://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/ 2/4
5/11/2018 Matching SM architectures (CUDA arch and CUDA gencode) for various NVIDIA cards - Blame Arnon
Up Next
http://arnon.dk/matching-sm-architectures-arch-and-gencode-for-various-nvidia-cards/ 4/4