コンテンツにスキップ

[Advance/NeuralMD Pro] 32GPU搭載クラウドにおけるベンチマーク#

Neural Network力場を用いた、LAMMPSによる分子動力学計算のベンチマークを32個のGPUを搭載したクラウド上で実施しました。 本事例では、以前のMat3raにおけるベンチマークで用いた硫化物リチウムイオン伝導体Li10GeP2S12の21600原子系スーパーセルモデルに加えて、同一組成の98000原子系スーパーセルモデルについても計算を行いました。

計算機環境#

本事例で使用した計算機の1ノードあたりのスペックを以下に示します。本事例で使用した計算機には4つのノードが搭載されています。

  • CPU:AMD EPYC 7J13 (64cores, 2.55GHz) x2
  • メモリ:2048GB
  • GPU:NVIDIA A100 ×8
  • ストレージ:120GB NVMe + 27.2TB NVMe SSD (7.68TB ×4)
  • ネットワーク:2 ×50Gbps + 16×100Gbps RDMA
  • コンパイラ:Intel oneAPI 2021.7.1
  • MPIライブラリ:OpenMPI 4.1.3
  • 行列演算ライブラリ:Intel MKL 2022.2.1
  • CUDA:11.4

計算機環境の用意・使用にあたっては、HPCシステムズ様にご協力いただきました。

ベンチマーク結果#

計算条件および計算結果は下表の通りです。今回用いたマシンでは、1ノードあたり最大8個のGPUが使用可能です。MPI並列数に関しては、1つのGPUにつき4つのMPIプロセスが起動されるよう設定しました。また、全ての計算においてOpenMPスレッド数は1としました。MD計算は100ステップ行い、時間刻み幅は0.5 fsとしました。また、同様の分子動力学シミュレーションを1 ns間実施するのに要する日数を計算結果から算出し、下表に記載しました。

                           GPU × 1 GPU × 2 GPU × 4 GPU × 8 GPU × 16 GPU × 24 GPU × 32
ノード数 1 1 1 1 2 3 4
MPI
プロセス数
4 8 16 32 64 96 128
計算時間(sec)
(21600原子)
15.35 7.84 4.16 2.29 1.41 1.14 1.03
計算時間(sec)
(98000原子)
69.12 35.64 18.08 9.84 4.97 3.42 2.63
day/ns
(21600原子)
3.55 1.82 0.96 0.53 0.33 0.26 0.24
day/ns
(98000原子)
16.00 8.25 4.19 2.28 1.15 0.79 0.61


また、以前のMat3raにおけるベンチマークの結果得られた、AWSにおいてCPU (Intel Xeon Platinum/72core) を1つ用いた場合の計算速度を1とした相対計算速度を下図に示します。ただし、98000原子系についてはAWSにおいて計算を行っていないため、計算時間が原子数に比例することを仮定してCPU × 1の場合の計算速度を算出し、それを基準として相対計算速度を算出しました。下図からは、クラウドの32個のGPUを使用することにより約260倍の高速化を達成できていることがわかります。

さらに、GPU × 1の場合の計算速度を1とした相対計算速度を、21600原子系及び98000原子系のそれぞれについて下図に示します。また、並列効率が理想的な場合の相対速度についてもプロットを行いました。21600原子系ではGPUデバイス数が増えるにつれて並列効率が下がっていますが、98000原子系ではGPUデバイス数が32でも十分な高速化が実現できていることがわかります。GPUデバイスを32個使用した場合、各GPUに割り当てられる原子数が21600原子系では約700原子、98000原子系では約3000原子となっており、前者に比べて後者では1GPUあたりの原子数が十分大きいため並列性能を維持できていると考えられます。

今回のベンチマークでは、Neural Network力場を用いた1 nsの分子動力学計算を10万原子程度の系に対して実施する場合でも、クラウド環境の32個のGPUを使用すれば15時間程度で計算を実行できることがわかりました。多数のGPUを搭載したクラウド環境を使用することで、より現実に近いモデルでのシミュレーションを短い計算時間で高精度に実行できることが期待されます。

関連ページ#