Povinné a voliteľné závislosti¶
Táto stránka opisuje knižnice potrebné na zostavenie FrontISTR a voliteľné knižnice, ktoré rozširujú jeho funkčnosť. Pokyny na inštaláciu jednotlivých knižníc nájdete v dokumentácii príslušnej knižnice.
Povinné závislosti¶
Na zostavenie FrontISTR sú potrebné nasledujúce nástroje a knižnice.
| Knižnica | Požiadavka na verziu | Účel |
|---|---|---|
| CMake | ≥ 3.13.4 | Systém zostavenia |
| Kompilátor C/C++/Fortran | — | Kompilácia zdrojového kódu |
| MPI | — | Knižnica paralelnej komunikácie (OpenMPI, IntelMPI atď.) |
Voliteľné závislosti¶
Nasledujúce knižnice sú voliteľné a možno ich pri zostavení povoliť podľa požadovanej funkčnosti. Zodpovedajúce možnosti CMake nájdete v časti Zostavenie pomocou CMake.
| Knižnica | Možnosť CMake | Účel | Zdroj |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS | Dekompozícia domény delením grafu | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS | Paralelný priamy riešič | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL | Priamy riešič (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK | Numerická lineárna algebra (odhad čísla podmienenosti) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML | AMG predpodmieňovanie | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER | Zjemňovanie siete | Stránka na stiahnutie FrontISTR |
| REVOCAP_Coupler | WITH_REVOCAP | Združená analýza | Stránka na stiahnutie FrontISTR |
| NetCDF | WITH_NETCDF | Výstup vo formáte Exodus II | Unidata |
| Doxygen | WITH_DOC | Generovanie dokumentácie API | Doxygen.nl |
Dodatočné nástroje potrebné na zostavenie pre GPU¶
Akcelerácia FrontISTR na GPU je implementovaná pomocou OpenACC a konfigurácia, ktorej funkčnosť je v súčasnosti overená, používa NVIDIA HPC SDK. Okrem povinných knižníc uvedených vyššie sú na zostavenie pre GPU potrebné nasledujúce nástroje.
| Nástroj | Účel | Zdroj |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | Kompilácia offloadu OpenACC na GPU | NVIDIA |
Podrobnosti o postupe zostavenia pre GPU vrátane práce s nepodporovanými knižnicami nájdete v časti Zostavenie pre GPU.