Comment puis-je connaître la capacité de calcul et le sm de ma carte graphique?

15

Je sais que je peux obtenir la capacité de calcul en visitant simplement cette page officielle de cuda ou cette page wiki .
Mais je ne sais pas comment je suis censé retrouver la smcarte. Est-ce court pour shader model? ou shared memory? ou aucun d'entre eux?

Rika
la source
Où sur l'une de ces deux pages Web parle-t-on de «sm»? Le contexte est tout
carpii
J'essaie de compiler caffe, et pour la partie cuda, il a besoin de deux informations, l'une est calculée et l'autre est sm, comme ceci `<! - Définissez l'architecture CUDA adaptée à votre GPU. La définition d'une architecture appropriée est importante pour minimiser votre temps d'exécution et de compilation. -> ` <CudaArchitecture>compute_52,sm_52;compute_35,sm_35;compute_30,sm_30</CudaArchitecture>
Rika
1
ça dit aussi sm ici: devblogs.nvidia.com/parallelforall/… Je ne sais pas si c'est la même chose, ou changer indépendamment?
Rika
2
peut-être que cela aidera docs.nvidia.com/cuda/cuda-c-programming-guide/… D'après ce que je comprends, compute_ * dicte la «capacité de calcul» que vous ciblez, et SM décide de l'architecture SM minimale (matériel). Dans ce cas, SM ne fait référence ni au «modèle de shader» ni à la «mémoire partagée», mais au Streaming Multiprocessor. Je ne sais pas pourquoi quelqu'un définirait compute_ * différent de sm_ *.
carpii
1
Voir aussi cela, il montre quelles API sont disponibles sur chaque version «Architecture SM prise en charge» - docs.nvidia.com/cuda/cuda-samples/…
carpii

Réponses:

4

Vous devez simplement utiliser votre capacité de calcul à partir de la page à laquelle vous êtes lié. Par exemple, si votre capacité de calcul est de 6,1, utilisez us sm_61 et compute_61.

SM signifie «streaming multiprocesseur». Les arguments sont définis de cette manière confuse car ils sont utilisés comme arguments pour nvcc où compute_XX définit l'architecture pour une représentation de code virtuelle (intermédiaire) et sm_XX définit l'architecture pour la représentation réelle. Sauf si vous avez une bonne raison, vous devez définir les deux sur la même chose.

Lukas Biewald
la source
Qu'est-ce que la GeForce RTX 2070 alors? Il n'est pas répertorié.
mathtick
0

Vous pouvez utiliser cette page pour trouver votre "capacité de calcul" GPU: https://developer.nvidia.com/cuda-gpus Utilisez-le pour "compute_xy" et "sm_xy"

Arash
la source
Merci je l'apprécie, mais ils ne sont pas forcément les mêmes, il y a des gpus qui ont une capacité de calcul relativement élevée, mais un très faible sm! quelqu'un a posté des informations à ce sujet dans la section cm de la question, sm fait référence à une API spécifique prise en charge par la carte graphique. et j'ai moi-même rencontré exactement la même chose!
Rika
0

Pour obtenir plus d'informations sur votre carte graphique, vous pouvez utiliser la visionneuse de casquettes GPU Geeks3D ( alternative ). C'est similaire à GPU-Z mais fournit des informations supplémentaires qui pourraient s'avérer utiles. Comme chaque fois qu'une carte est compatible CUDA / OpenCL / Vulkan.

De plus, il contient des informations plus approfondies pour chacune de ces choses. Pour CUDA, la capacité de calcul et l'horloge de shader pourraient être intéressantes pour vous?

Uğur Gümüşhan
la source
2
Pouvez-vous développer un peu votre réponse? Le simple fait de mentionner un produit n'explique pas vraiment comment réaliser la solution. Il est préférable d'inclure des instructions sur la façon d'utiliser le produit pour résoudre le problème, ou au moins de décrire ce qui fait du produit une bonne solution. De bons conseils pour recommander des logiciels ici: meta.superuser.com/questions/5329/… . Merci. De la file d'attente d'examen LQP
fixer1234
@ fixer1234 c'est la réponse parfaite, je ne joue pas à votre jeu de gouvernance. Veuillez ne pas me déranger. Modifiez ou supprimez tout ce que vous voulez.
Uğur Gümüşhan
4
Ce n'est pas une réponse parfaite.
DavidPostill
1
Veuillez lire Comment puis-je recommander un logiciel pour obtenir des conseils sur la façon de recommander un logiciel. Vous devez fournir au moins un lien, des informations supplémentaires sur le logiciel lui-même et la façon dont il peut être utilisé pour résoudre le problème dans la question.
DavidPostill
@ ِ DavidPostill: Ce n'est pas le cas, un hit a été donné dans les commentaires, et contrairement à gpuz, cela fournit plus d'informations sur le problème, mais cela n'a pas résolu mon problème, mais je pensais que c'était mieux que rien. il donne au moins quelques indices sur le problème.
Rika