Обавезне и опционе зависности¶
Ова страница описује библиотеке потребне за изградњу FrontISTR-а и опционе библиотеке које проширују његову функционалност. За упутства о инсталацији сваке библиотеке погледајте документацију коју обезбеђује та библиотека.
Обавезне зависности¶
Следећи алати и библиотеке су потребни за изградњу FrontISTR-а.
| Библиотека | Захтев за верзију | Намена |
|---|---|---|
| CMake | ≥ 3.13.4 | Систем изградње |
| C/C++/Fortran компајлер | — | Компајлирање изворног кода |
| MPI | — | Библиотека за паралелну комуникацију (OpenMPI, IntelMPI итд.) |
Опционе зависности¶
Следеће библиотеке су опционе и могу се омогућити приликом изградње у складу са потребном функционалношћу. Одговарајуће CMake опције погледајте у Изградњи помоћу CMake.
| Библиотека | CMake опција | Намена | Извор |
|---|---|---|---|
| METIS (v4/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 изградње¶
GPU убрзање FrontISTR-а имплементирано је помоћу OpenACC-а, а конфигурација чији је рад тренутно проверен користи NVIDIA HPC SDK. Поред горе наведених обавезних библиотека, за GPU изградње потребни су следећи алати.
| Алат | Намена | Извор |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | Компајлирање OpenACC GPU offloading-а | NVIDIA |
За детаље поступка GPU изградње, укључујући поступање са неподржаним библиотекама, погледајте GPU изградњу.