Keri sisuni

Nõutavad ja valikulised sõltuvused

Sellel lehel kirjeldatakse FrontISTR-i kompileerimiseks vajalikke teeke ning valikulisi teeke, mis laiendavad selle funktsionaalsust. Iga teegi paigaldusjuhiste kohta vaadake vastava teegi dokumentatsiooni.

Nõutavad sõltuvused

FrontISTR-i kompileerimiseks on vajalikud järgmised tööriistad ja teegid.

Teek Versiooninõue Otstarve
CMake ≥ 3.13.4 Koostamissüsteem
C/C++/Fortrani kompilaator Lähtekoodi kompileerimine
MPI Paralleelside teek (OpenMPI, IntelMPI jne)

Valikulised sõltuvused

Järgmised teegid on valikulised ning neid saab kompileerimisel vastavalt vajalikele funktsioonidele lubada. Vastavaid CMake'i valikuid vt Kompileerimine CMake'iga.

Teek CMake'i valik Otstarve Allikas
METIS (v4/v5) WITH_METIS Domeenidekompositsioon graafi jaotamise abil Karypis Lab
MUMPS + ScaLAPACK WITH_MUMPS Paralleelne otselahendaja MUMPS-Solver.org / Netlib
Intel oneAPI MKL WITH_MKL Otselahendaja (PARDISO), BLAS/LAPACK Intel
OpenBLAS / LAPACK WITH_LAPACK Numbriline lineaaralgebra (tingimusarvu hindamine) OpenBLAS.net / Netlib
Trilinos ML WITH_ML AMG eeltingimine Trilinos Project
REVOCAP_Refiner WITH_REFINER Võrgu tihendamine FrontISTR-i allalaadimisleht
REVOCAP_Coupler WITH_REVOCAP Sidestatud analüüs FrontISTR-i allalaadimisleht
NetCDF WITH_NETCDF Exodus II vormingus väljund Unidata
Doxygen WITH_DOC API dokumentatsiooni genereerimine Doxygen.nl

GPU-kompileerimiseks vajalikud lisatööriistad

FrontISTR-i GPU-kiirendus on teostatud OpenACC abil ning praegu kontrollitud konfiguratsioon kasutab NVIDIA HPC SDK-d. Lisaks eespool loetletud nõutavatele teekidele on GPU-kompileerimiseks vaja järgmisi tööriistu.

Tööriist Otstarve Allikas
NVIDIA HPC SDK (nvc, nvc++, nvfortran) OpenACC GPU-offload'i kompileerimine NVIDIA

GPU-kompileerimise protseduuri üksikasju, sealhulgas mittetoetatud teekide käsitlemist, vt GPU-kompileerimine.

AI-assisted translation May contain errors Official docs Status