25

I know I can get the compute capabilty by just visiting this official cuda page, or this wiki page.
But I dont know how I am supposed to find the sm of my card. Is this short for shader model? or shared memory? or none of them?

Hossein
  • 765

4 Answers4

12

You should just use your compute capability from the page you linked to. For example, if your compute capability is 6.1 us sm_61 and compute_61.

SM stands for "streaming multiprocessor". The arguments are set in this confusing looking way because they are used as arguments for nvcc where the compute_XX sets the architecture for a virtual (intermediate) code representation and sm_XX sets the architecture for the real representation. Unless you have a good reason, you should set both of these to the same thing.

2

You can use this page to find your GPU "Compute Capability": https://developer.nvidia.com/cuda-gpus Use it for both "compute_xy" and "sm_xy"

Arash
  • 21
1

Since version 11.6 of the Cuda Toolkit you can run:

nvidia-smi --query-gpu=compute_cap --format=csv
user74094
  • 366
0

In order to get more information about your graphics card you could use the Geeks3D GPU Caps Viewer (Alternative). It's similar to GPU-Z but does provide some additional information that might prove useful. Like whenever a card is CUDA/OpenCL/Vulkan compatible.

In addition it has some more in-depth information for each of those things. For CUDA the Compute Capability and Shader Clock might be interesting for you?

Seth
  • 9,393