Pustaka kebergantungan wajib dan pilihan¶
Halaman ini menerangkan pustaka yang diperlukan untuk membina FrontISTR dan pustaka pilihan yang meluaskan fungsinya. Untuk arahan pemasangan setiap pustaka, rujuk dokumentasi pustaka tersebut.
Pustaka kebergantungan wajib¶
Alat dan pustaka berikut diperlukan untuk membina FrontISTR.
| Pustaka | Keperluan versi | Kegunaan |
|---|---|---|
| CMake | ≥ 3.13.4 | Sistem binaan |
| Pengkompil C/C++/Fortran | — | Mengkompil kod sumber |
| MPI | — | Pustaka komunikasi selari (OpenMPI, IntelMPI dan lain-lain) |
Pustaka kebergantungan pilihan¶
Pustaka berikut adalah pilihan dan boleh didayakan semasa binaan mengikut fungsi yang diperlukan. Untuk pilihan CMake yang berkaitan, lihat Prosedur binaan dengan CMake.
| Pustaka | Pilihan CMake | Kegunaan | Sumber |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS | Penguraian domain melalui pembahagian graf | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS | Penyelesai terus selari | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL | Penyelesai terus (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK | Algebra linear berangka (anggaran nombor keadaan) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML | Prasyarat AMG | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER | Penghalusan mesh | Halaman muat turun FrontISTR |
| REVOCAP_Coupler | WITH_REVOCAP | Analisis gandingan | Halaman muat turun FrontISTR |
| NetCDF | WITH_NETCDF | Output dalam format Exodus II | Unidata |
| Doxygen | WITH_DOC | Penjanaan dokumentasi API | Doxygen.nl |
Alat tambahan yang diperlukan untuk binaan GPU¶
Pecutan GPU FrontISTR dilaksanakan menggunakan OpenACC, dan pada masa ini operasi telah disahkan dalam konfigurasi yang menggunakan NVIDIA HPC SDK. Selain pustaka wajib di atas, alat berikut diperlukan untuk binaan GPU.
| Alat | Kegunaan | Sumber |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | Mengkompil offload GPU OpenACC | NVIDIA |
Untuk butiran prosedur binaan GPU, termasuk pengendalian pustaka yang tidak disokong, lihat Binaan menggunakan GPU.