必須・オプション依存ライブラリ¶
FrontISTR のビルドに必要なライブラリと,機能を拡張するオプションのライブラリを説明する.各ライブラリのインストール手順は各ライブラリのドキュメントを参照されたい.
必須依存ライブラリ¶
以下のツール・ライブラリは FrontISTR のビルドに必須である.
| ライブラリ | バージョン要件 | 用途 |
|---|---|---|
| CMake | ≥ 3.13.4 | ビルドシステム |
| C/C++/Fortran コンパイラ | — | ソースコードのコンパイル |
| MPI | — | 並列通信ライブラリ(OpenMPI, IntelMPI など) |
オプション依存ライブラリ¶
以下のライブラリはオプションであり,必要な機能に応じてビルド時に有効化できる.対応する CMake オプションは CMake によるビルド手順 を参照.
| ライブラリ | CMake オプション | 用途 | 入手先 |
|---|---|---|---|
| METIS (v5) | WITH_METIS | グラフ分割による領域分割 | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS | 並列直接法ソルバー | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL | 直接法ソルバー(PARDISO),BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK | 数値線形代数(条件数推定) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML | AMG 前処理 | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER | メッシュ細分化 | FrontISTR ダウンロードページ |
| REVOCAP_Coupler | WITH_REVOCAP | 連成解析 | FrontISTR ダウンロードページ |
| NetCDF | WITH_NETCDF | Exodus II 形式での出力 | Unidata |
| Doxygen | WITH_DOC | API ドキュメント生成 | Doxygen.nl |
GPU ビルドに必要な追加ツール¶
FrontISTR の GPU 化は OpenACC を用いて実装されており,現時点では NVIDIA HPC SDK を用いた構成での動作確認が行われている.GPU ビルドには上記の必須ライブラリに加えて以下のツールが必要である.
| ツール | 用途 | 入手先 |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | OpenACC GPU オフロードのコンパイル | NVIDIA |
GPU 向けのビルド手順の詳細(非対応ライブラリの扱いを含む)は GPU を用いたビルド を参照.