Search code examples
cudautilitycompute-capability

What utility/binary can I call to determine an nVIDIA GPU's Compute Capability?


Suppose I have a system with a single GPU installed, and suppose I've also installed a recent version of CUDA.

I want to determine what's the compute capability of my GPU. If I could compile code, that would be easy:

#include <stdio.h>
int main() {
    cudaDeviceProp prop;
    cudaGetDeviceProperties(&prop, 0);
    printf("%d", prop.major * 10 + prop.minor);
}

but - suppose I want to do that without compiling. Can I? I thought nvidia-smi might help me, since its lets you query all sorts of information about devices, but it seems it doesn't let you obtain the compute capability. Maybe there's something else I can do? Maybe something visible via /proc or system logs?

Edit: This is intended to run before a build, on a system which I don't control. So it must have minimal dependencies, run on a command-line and not require root privileges.


Solution

  • We can use

    $ nvidia-smi --query-gpu=compute_cap --format=csv
    

    to get the compute capability:

    compute_cap
    8.6
    

    It is available since cuda tool kit 11.6.