How can I know about compute capability and sm of my Graphics card?

42,460

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.

Share:
42,460

Related videos on Youtube

Hossein
Author by

Hossein

For the love of God, do not downvote new comers! help them kindly so they can feel a apart of this community!

Updated on September 18, 2022

Comments

  • Hossein
    Hossein almost 2 years

    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?

    • carpii
      carpii about 8 years
      Where on either of those two web pages does it talk about 'sm'? Context is everything
    • Hossein
      Hossein about 8 years
      I'm trying to compile caffe, and for the cuda part it needs two pieces of information, one is compute and the other is sm, like this ` <!-- Set CUDA architecture suitable for your GPU. Setting proper architecture is important to mimize your run and compile time. -->` <CudaArchitecture>compute_52,sm_52;compute_35,sm_35;compute_‌​30,sm_30</CudaArchit‌​ecture>
    • Hossein
      Hossein about 8 years
      it also says sm here : devblogs.nvidia.com/parallelforall/… I dont know if they are the same thing, or change independently ?
    • carpii
      carpii about 8 years
      maybe this will help docs.nvidia.com/cuda/cuda-c-programming-guide/… From what I understand compute_* dictates the 'Compute Capability' you are targetting, and SM decides the minimum SM Architecture (hardware). SM in this case refers to neither 'shader model' or 'shared memory', but to Streaming Multiprocessor. I'm not sure why anyone would set compute_* different to sm_*.
    • carpii
      carpii about 8 years
      See this also, it shows what APIs are available on each 'Supported SM Architecture' version - docs.nvidia.com/cuda/cuda-samples/…
  • fixer1234
    fixer1234 almost 8 years
    Can you expand your answer a bit? Just mentioning a product doesn't really explain how to accomplish the solution. It's better to include some instructions on how to use the product to solve the problem, or at least describe what makes the product a good solution. Good guidance on recommending software here: meta.superuser.com/questions/5329/…. Thanks. From LQP review queue
  • Uğur Gümüşhan
    Uğur Gümüşhan almost 8 years
    @fixer1234 this is the perfect answer, I'm not playing your governing game. Please don't disturb me. Edit or delete anything you want.
  • DavidPostill
    DavidPostill almost 8 years
    It's not a perfect answer.
  • DavidPostill
    DavidPostill almost 8 years
    Please read How do I recommend software for some tips as to how you should go about recommending software. You should provide at least a link, some additional information about the software itself, and how it can be used to solve the problem in the question.
  • Hossein
    Hossein almost 8 years
    @ِDavidPostill: Its not, a hit was given in the comments, and this unlike gpuz does provide some more information about the issue, However that didnt solve my problem, but I thought its better than nothing. it atleast gives some hints to the problem.
  • Uğur Gümüşhan
    Uğur Gümüşhan almost 8 years
    @Hossein tell me more about your actual problem i may be able to help
  • Hossein
    Hossein almost 8 years
    @ugurGumushan: Thanks, I was actually looking for for a way to find out what sm, a specific card supports. the compute capability is reported in nvidia site, but the supported sm is not.
  • Hossein
    Hossein over 7 years
    Thanks I appreciate it, but they are not necessarily the same, there are gpus which have a relatively high compute capability, but a very low sm! someone posted some info on this in the cm section of the question, sm actually refers to specific API which the graphics card supports. and I myself encountered the same exact thing!
  • ku_thai
    ku_thai over 5 years
    What is the GeForce RTX 2070 then? It is not listed.