7

動作のデータレートはcudaMemcpy、CPUからGPUまで実行するために割り当てられたPCI-e 3.0(または2.0)レーンの数に大きく影響されます。2つのGPUを含むNvidiaデバイスでPCI-eレーンがどのように使用されるのか知りたいです。

Nvidiaには、1つのPCI-eデバイスに2つのGPUを搭載した製品がいくつかあります。例えば:

  • GTX 590には、2つのFermiGF110GPUが含まれています
  • GTX 690には、2つのKeplerGK104GPUが含まれています

PCI-e 16多くの新しいグラフィックカードと同様に、これらのデバイスはスロットにマウントされます。GPUを1つだけ含むカードの場合、GPUは16のPCI-eレーンを使用できます。

2つのGPUを含むデバイス(GTX 690など)があり、GPUの1つだけでコンピューティングジョブを実行している場合、16のPCI-eレーンすべてが使用されている1つのGPUにサービスを提供できますか?


これをアスキーアートとして表示するには...

[ GTX690(2x GF110)] ------16PCI-eレーン----- [ CPU ]


CPUがそれぞれ1つのGPUを持つ2つのカードに接続されている場合については話していません。(次の図のように)

[ GTX670(1x GK104)] ------PCI-eレーン----- [ CPU ] ------PCI-eレーン----- [ GTX670(1x GK104)]

4

1 に答える 1

9

GTX 690は、PLX PCIe Gen 3ブリッジチップを使用して、2つのGK104GPUをホストPCIeバスに接続します。ホストからPLXデバイスへ、およびPLXデバイスから各GPUへの完全なx16接続があります(PLXデバイスには合計48レーンがあります)。したがって、1つのGPUのみを使用する場合、そのGPUに対してほぼ完全なx16帯域幅を実現できます。これは、 bandwidthTestを使用して調べることができますこれはCUDAサンプルに含まれています。bandbandTestは単一のGPU(カード上にある2つのうち、これはコマンドラインオプションで選択可能)を対象とし、システムに応じてほぼ完全な帯域幅が表示されるはずです。システムがGen3対応の場合、PCIe x16 Gen 3の全帯域幅が表示されます(--memory = pinnedオプションを使用することを忘れないでください)。これは特定のシステムによって異なりますが、6GB /秒よりかなり北にあるはずです(おそらく9〜11GB /秒の範囲)。システムがGen2対応の場合、4〜6GB/秒の範囲で何かが表示されるはずです。GTX 590についても同様のことが言えますが、これはGen2のみのデバイスであり、異なるブリッジチップを使用しています。bandwidthTestの結果は、ルートポートといずれかのGPUの間に完全なx16論理パスが存在することを確認します。もちろんフリーランチはありません、

于 2012-10-20T01:01:20.973 に答える