『問題解決型』ハードウェアメーカー
ファナティック
-
- ファナティックの特長 ファナティックの特長
- /
- 製品&ソリューション 製品&ソリューション
- /
- 導入事例 導入事例
- /
- 最新ニュース 最新ニュース
- /
- ファナティックレポート ファナティックレポート
- /
- サポート サポート
- /
- 会社案内 会社案内
- /
- 採用情報 採用情報
2022.01.14 ベンチマークレポート
今回は、NVIDIA RTX A6000(以下A6000)を2基使用し、NVLink Bridgeで接続することにより、どのような影響があるのか、改めて調査しました。
基本的な情報取得を含め、各種パフォーマンス評価の結果をレポートします。
今回は、NVIDIA RTX A6000(以下A6000)を2基使用し、NVLink Bridgeで接続することにより、どのような影響があるのか、改めて調査しました。
基本的な情報取得を含め、各種パフォーマンス評価の結果を紹介させていただきます。
・ハードウェア
項目 | 品名 | 数量 |
CASE | Supermicro CSE-746BTS-R2K20BP | 1 |
M/B | Supermicro M12SWA-TF | 1 |
CPU | AMD Threadripper Pro 3995WX | 1 |
MEMORY | DDR4-3200 32GB Registerd/ECC | 8 |
GPU | NVIDIA RTX A6000 | 2 |
・ソフトウェア
項目 | バージョン |
OS | Ubuntu 20.04.3 |
Driver | 470.74 |
CUDA | 11.4 |
Docker | 2110-tf1-py3 |
②GPU間の接続方法の確認(nvidia-smi topo -m)
・NVLinkなし
・NVLinkあり
③対向GPUの確認(nvidia-smi nvlink -R)
①のBus-Id情報から、各Linkとも対向のGPUとなっていることがわかります。
④Linkの帯域確認(nvidia-smi nvlink -s)
カタログスペックにて、NVLinkの帯域幅は、「双方向:112.5 GB/s」とありますので、14.062 x 8 = 112.496GB/sとなり、スペック通り機能していることがわかります。
⑤機能確認(nvidia-smi nvlink -c)
Link単位での機能を確認することができます。
まずは、CUDAのsamplesに収録されている「p2pBandwidthLatencyTest」にて、レイテンシおよび帯域幅の評価を行い、比較しました。
・レイテンシ(µs)
項目 | NVLinkなし | NVLinkあり | 対比 |
GPU0⇒GPU0 | 1.64 | 1.68 | 102% |
GPU0⇒GPU1 | 1.44 | 1.39 | 97% |
GPU1⇒GPU0 | 1.44 | 1.34 | 93% |
GPU1⇒GPU1 | 1.58 | 1.59 | 101% |
・帯域幅(双方向、GB/s)
項目 | NVLinkなし | NVLinkあり | 対比(あり/なし) |
GPU0⇒GPU0 | 676.55 | 669.88 | 99% |
GPU0⇒GPU1 | 52 | 101.73 | 196% |
GPU1⇒GPU0 | 52.02 | 101.96 | 196% |
GPU1⇒GPU1 | 677.43 | 677.73 | 100% |
帯域については、NVLinkありの状態において、双方向で100GB/s超となり、なしの状態と比較すると、約2倍の帯域幅を使用できる状態となっています。また、レイテンシについても、向上していることが確認できます。
他のレポートと同様、Tensorflowによる評価を実施しました。
こちらの評価に関しては、NVLinkあり/なしで、大きな差は見られませんでした。演算に要する時間が大半を占め、GPU間通信の影響が出難いためと考えられます。
先のベンチマーク結果から、GPU間の通信量を増やすことによって、NVLinkの優位性が見られると考え、「nccl-test」を用いて評価しました。
・nccl-test
https://github.com/NVIDIA/nccl-tests
1MB~8192MBまで、サイズを変更しながら、時間および帯域幅の推移をまとめたものが以下となります。
8192MBの評価結果を抜粋したものが以下となります。
項目 | NVLinkなし | NVLinkあり | 対比 |
時間(送信) | 420771 | 180960 | 43% |
時間(受信) | 420455 | 180931 | 43% |
帯域幅(送信) | 20.41 | 47.47 | 233% |
帯域幅(受信) | 20.43 | 47.48 | 232% |
時間に関しては、128MBを超えたあたりから、NVLinkあり/なしの差が広がることがわかります。
8192MBの評価では、NVLinkなしに対し、NVLinkありでは、片側あたり約43%の時間で処理が完了しています。
帯域幅では、NVLinkなしの場合、早々に上限に達するのに対し、NVLinkありの場合は、緩やかに上昇していることがわかります。
8192MBの評価では、NVLinkなしに対し、NVLinkありでは、片側あたり約230%の帯域を使用しています。
これらの内容から、通信量が大きくなるほど、NVLinkが有効であると言えます。
GPU間の通信において、NVLinkがどのように影響するのかを評価しました。
今回の評価で、通信量が多くなるもしくは、通信の頻度が高くなると、NVLinkが有効となることがお分かりいただけたのではないでしょうか。
また、NVLinkの特徴として、メモリ空間を共有できることが挙げられます。
RTX A6000を2基、NVLinkなしの状態で使用されている場合、GPU 1基あたりのメモリ容量は、48GBとなります。
NVLinkを使用することで、メモリ容量は倍の96GBまで扱うことができるようになります。
GPU 1基に搭載されているメモリ容量より、大きいデータを扱うようなケースでは、NVLinkを導入することで、パフォーマンスの向上が見込まれます。
GPU 2基を搭載して、有効に活用したいとお考えの際は、是非当社までお問い合わせ下さい。