ストリーミングマルチプロセッサ数

ストリーミングマルチプロセッサ数

GTS 250 にストリーミング マルチプロセッサ (SM) がいくつあるかを知るにはどうすればよいですか?

答え1

SDKをダウンロードしてdeviceQueryを実行できます

CUDASDK_32/C/bin/linux/リリース/デバイスクエリ

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

そしてこの行を見てください:

 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

答え2

GTS 250 には 16 個の SM と SM あたり 8 個のコアがあり、合計 128 個の CUDA コアがあります。 このウィキペディアのページすべての GeForce デバイスのコア数が記載されています。GT200 シリーズ プロセッサの場合、コア数を 8 で割ると SM の数が得られます。

答え3

これは 12 年前の投稿ですが、最近、sm_GPU を見つける際に同様の混乱が生じました。

今後の参考までに、__nvcc_device_query.exe(Windows の場合) を実行すると、CUDA がインストールされているディレクトリの下にある Linux でも同様のものがあり、binフォルダー内に番号が表示されることがわかりました。

関連情報