HPL実行方法(BM.Standard.E5.192編)
本ドキュメントは、HPCワークロードの実行に最適なベアメタルインスタンス BM.Standard.E5.192 で、標準ベンチマークの HPL を実行する方法を解説します。
本ドキュメントで解説する HPL の実行は、AMDの HPL 実装である AMD Zen HPL optimized for AMD EPYC processors (本ドキュメントで使用するバージョンは2023_07_18)を OpenMPI (本ドキュメントで使用するバージョンは4.1.1)と共に使用します。
HPL を実行するインスタンスは、HPCワークロード向けベアメタルシェイプ BM.Standard.E5.192 1インスタンスとし、OSは Oracle Linux 8を使用します。
以上より、本ドキュメントで解説する HPL 実行は、以下の手順を経て行います。
- BM.Standard.E5.192 のデプロイ
- OpenMPI インストール
- AMD Zen HPL optimized for AMD EPYC processors インストール
- HPL 実行
本ドキュメントは、以下の環境で HPL を実行しており、以下の性能が出ています。
[実行環境]
- シェイプ: BM.Standard.E5.192
- OS: Oracle Linux 8.8
- HPL : AMD Zen HPL optimized for AMD EPYC processors (バージョン2023_07_18)
- MPI: OpenMPI (バージョン4.1.1)
- ノード数: 1
- 問題サイズ(N): 423,168
- ブロックサイズ(NB): 384
- プロセスグリッド(PxQ): 1x2
[実行結果]
- FLOPS: 7,526 GFLOPS
- 所要時間: 6,713秒
本章は、 BM.Standard.E5.192 を1インスタンスデプロイします。
インスタンスのデプロイは、OCIチュートリアル インスタンスを作成する の手順に従い、以下属性のインスタンスを作成します。
- イメージ: Oracle Linux 8
- Shape: BM.Standard.E5.192
本章は、 OpenMPI をインストールします。
以下コマンドを先にデプロイしたインスタンスのopcユーザで実行し、 OpenMPI をインストールします。
$ sudo dnf install -y openmpi openmpi-devel
本章は、 AMD Zen HPL optimized for AMD EPYC processors をインストールします。
ここ から AMD Zen HPL optimized for AMD EPYC processors のtarアーカイブをダウンロードし、任意のディレクトリに展開します。
本章は、 HPL を実行します。
具体的には、以下の作業を実施します。
- numactl1インストール
- HPL 実行
-
以下コマンドをopcユーザで実行し、numactlをインストールします。
$ sudo dnf install -y numactl
-
以下コマンドをopcユーザで実行します。
この HPL 実行は、 2プロセス・プロセス当たり96レッド で実行します。
本ドキュメントの前提となる環境・設定で HPL 実行に要する時間は、2時間弱です。$ module load mpi $ cd amd-zen-hpl-2022_11 $ mpirun -mca btl vader -mca mtl ^ofi --map-by socket:PE=96 -np 2 --bind-to core -x OMP_NUM_THREADS=96 -x OMP_PROC_BIND=close -x OMP_PLACES=cores numactl --localalloc ./xhpl
-
HPL実行時にnumactlを使用するため ↩︎