3. OpenSTFの高速化
3.1 ベンチマーク問題
3.1.1 ベンチマーク問題
図3-1-1のベンチマーク問題を計算し、その計算時間を測定します。
誘電体のブロックの両側を電極ではさんだモデルで、セル数=600x600x600です。
以下これをbenchmark600と呼びます。
計算時間の主要部(SOR法の反復計算)は以下の式で評価されます。
計算時間 ∝ Nx x Ny x Nz x 反復回数
ここで比例定数はハードウェアと高速化技術で決まる定数です。
なお、計算時間は全体の計算時間を示します。
すなわち計算の主要部以外に、並列化できない前処理と後処理を含みます。

図3-1-1 ベンチマーク問題(benchmark600)
3.1.2 テスト環境
計算時間はFOCUSスパコン[9]の以下のシステムで測定します。
- Fシステム
- CPU : Intel Xeon E5-2698v4 (20コア, 40スレッド) x2 / ノード
- ノード数 : 62 (うちGPU搭載2ノード)
- CPUメモリー : 128GB / ノード
- GPU : NVIDIA Tesla P100 (3584コア, 16GB) x1 / ノード
- OS : Linux
- コンパイラー : GCC 6.3.0
- MPI : OpenMPI 2.1.1
- CUDA : 9.2
- ネットワーク : InfiniBand FDR 56Gbps
- Vシステム
- 機種 : NEC SX-Aurora TSUBASA A100-1 (1VE)
- ノード数 : 2
- メモリー : 48GB / VE
- OS : Linux
- コンパイラー : NEC C/C++
- MPI : NEC MPI
- ネットワーク : InfiniBand FDR 56Gbps
- Wシステム
- 機種 : NEC SX-Aurora TSUBASA A300-8 (8VE)
- ノード数 : 1
- メモリー : 48GB / VE
- OS : Linux
- コンパイラー : NEC C/C++
- MPI : NEC MPI
- ネットワーク :
- Xシステム
- 機種 : Fujitsu Supercomputer PRIMEHPC FX700
- ノード数 : 6
- メモリー : 32GB / ノード
- OS : Linux
- コンパイラー : Fujitsu C/C++ Compiler
- MPI : Fujitsu C/C++ Compiler
- ネットワーク : InfiniBand EDR 100Gbps