nVidia がなぜこのようなタイプのグラフィック カード (この場合は GT730) の構成を提供しているのか疑問に思います。
それはわかっていますbandwidth = Memory clock x Memory interface width
が、メモリ構成や CUDA コアについてはどうでしょうか? それらはどこで機能するのでしょうか?
- なぜ 64 ビット バージョンには 2GB あって 1GB ないのか不思議です (128 ビット バージョンには 1GB あります)。
- GDDR5 バージョンには 1GB があって、2GB がないのはなぜでしょうか? (DDR3 バージョンには 2GB があります)。
- GDDR5 バージョンが 64 ビットで、128 ビットではないのはなぜでしょうか? (DDR3 バージョンは 128 ビットです)。
また、64 ビット 4GB のパフォーマンスは 128 ビット 2GB カードと同じでしょうか? または、64 ビット 2GB バージョンのパフォーマンスは 128 ビット 1GB カードと同じでしょうか?
答え1
なぜ 64 ビット バージョンには 2GB あって、1GB ないのか疑問に思います。 >128 ビット バージョンには 1GB あります。
これはほぼ間違いなく、GPU に 2 つのメモリ コントローラーがあるためです。
それぞれ 1 GB のメモリを使用できる 2 つの 64 ビット チャネル、または 1 つの 1 GB メモリ領域を使用できる 1 つの 128 ビット チャネルのいずれかを利用できます。
GDDR5 バージョンには 1GB あって、2GB ないのはなぜでしょうか? >DDR3 バージョンには 2GB あります。
おそらく、GDDR5 によって提供される追加の帯域幅には、GPU で内部多重化が必要となり、メモリ チャネルが 1 つに制限されるためです。本当の理由は、GPU 設計者と Nvidia 自身にしかわかりません。
また、64 ビット 4GB のパフォーマンスは 128 ビット 2GB カードと同じでしょうか? または、64 ビット 2GB のパフォーマンスは 128 ビット 1GB カードと同じでしょうか?
いいえ。メモリの「ビット数」は、利用可能な有効なメモリ帯域幅に影響します。メモリ インターフェイス幅のすぐ下の図をご覧ください。
グラフィックス タスクはメモリに大きく依存する傾向があり、メモリ帯域幅が広いほどパフォーマンスは向上します。ただし、メモリは少ないが帯域幅は広いカードよりも、帯域幅は狭いがメモリは多いカードの方がパフォーマンスが向上するタスクもあります。
あなたは、(率直に言って)非常に劣ったいくつかのカードを比較していますが、それらの間でパフォーマンスに大きな違いが見られるとは到底思えません。
理由としては、製品の差別化とそれが可能だからです。
答え2
CUDA コアは、GPU に存在するマルチプロセッサの数、ALU レーンの数、および ALU レーンの幅に基づいて計算されます。
GeForce GT 730 (DDR3、64 ビット バージョン) の場合:
(2 multiprocessors * 192 64-bit ALU lanes) = 384 CUDA cores
メモリ帯域幅も、GPU 上のマルチプロセッサの数に基づいて計算されます。
(2 multiprocessors * 800 MHz) = 1600 MHz effective
このデバイスでは、単精度浮動小数点演算は倍精度よりも 24 倍高速です。これはバス幅とマルチプロセッサの数によって変わる可能性がありますが、現時点では比較できるものがありません。