como posso saber quantos multiprocessadores de streaming (SM) tenho no meu GTS 250?
Responder1
Você pode baixar o SDK e executar deviceQuery
CUDASDK_32/C/bin/linux/release/deviceQuery
Device 0: "Tesla S2050"
CUDA Driver Version: 3.10
CUDA Runtime Version: 3.10
CUDA Capability Major/Minor version number: 2.0
Total amount of global memory: 2817982464 bytes
E veja esta linha:
Multiprocessors x Cores/MP = Cores: 14 (MP) x 32 (Cores/MP) = 448 (Cores)
Total amount of constant memory: 65536 bytes
Total amount of shared memory per block: 49152 bytes
Total number of registers available per block: 32768
Warp size: 32
Maximum number of threads per block: 1024
Maximum sizes of each dimension of a block: 1024 x 1024 x 64
Maximum sizes of each dimension of a grid: 65535 x 65535 x 1
Maximum memory pitch: 2147483647 bytes
Texture alignment: 512 bytes
Clock rate: 1.15 GHz
Concurrent copy and execution: Yes
Run time limit on kernels: No
Integrated: No
Support host page-locked memory mapping: Yes
Compute mode: Default (multiple host threads can use this device simultaneously)
Concurrent kernel execution: Yes
Device has ECC support enabled: Yes
deviceQuery, CUDA Driver = CUDART, CUDA Driver Version = 3.10, CUDA Runtime Version = 3.10, NumDevs = 1, Device = Tesla S2050
Responder2
O GTS 250 possui 16 SMs e 8 núcleos por SM, totalizando 128 núcleos CUDA. Esta página da Wikipédiatem contagens de núcleos para todos os dispositivos GeForce. Para processadores da série GT200, dividir o número de núcleos por 8 fornece o número de SMs.
Responder3
Esta é uma postagem de 12 anos, no entanto, recentemente tive uma confusão semelhante ao encontrar o sm_
da minha GPU.
Para referência futura, descobri que se você executar o __nvcc_device_query.exe
(para windows), um semelhante deve ser também para Linux no diretório instalado CUDA, e na bin
pasta você obterá o número.