Pereiti prie turinio

Privalomos ir pasirenkamos priklausomybės

Šiame puslapyje aprašomos FrontISTR kompiliavimui reikalingos bibliotekos ir pasirenkamos bibliotekos, išplečiančios jo funkcijas. Kaip įdiegti kiekvieną biblioteką, žr. tos bibliotekos dokumentaciją.

Privalomos priklausomybės

FrontISTR kompiliavimui reikalingi šie įrankiai ir bibliotekos.

Biblioteka Versijos reikalavimas Paskirtis
CMake ≥ 3.13.4 Kompiliavimo sistema
C/C++/Fortran kompiliatorius Pirminio kodo kompiliavimas
MPI Lygiagrečiojo ryšio biblioteka (OpenMPI, IntelMPI ir kt.)

Pasirenkamos priklausomybės

Šios bibliotekos yra pasirenkamos ir gali būti įjungiamos kompiliavimo metu pagal reikalingas funkcijas. Atitinkamas CMake parinktis žr. Kompiliavimas su CMake.

Biblioteka CMake parinktis Paskirtis Šaltinis
METIS (v4/v5) WITH_METIS Srities skaidymas grafų skaidymo metodu Karypis Lab
MUMPS + ScaLAPACK WITH_MUMPS Lygiagretusis tiesioginis sprendiklis MUMPS-Solver.org / Netlib
Intel oneAPI MKL WITH_MKL Tiesioginis sprendiklis (PARDISO), BLAS/LAPACK Intel
OpenBLAS / LAPACK WITH_LAPACK Skaitinė tiesinė algebra (sąlygotumo skaičiaus įvertinimas) OpenBLAS.net / Netlib
Trilinos ML WITH_ML AMG išankstinis sąlyginimas Trilinos Project
REVOCAP_Refiner WITH_REFINER Tinklo tikslinimas FrontISTR atsisiuntimo puslapis
REVOCAP_Coupler WITH_REVOCAP Susietoji analizė FrontISTR atsisiuntimo puslapis
NetCDF WITH_NETCDF Išvestis Exodus II formatu Unidata
Doxygen WITH_DOC API dokumentacijos generavimas Doxygen.nl

Papildomi įrankiai GPU kompiliavimui

FrontISTR GPU spartinimas įgyvendintas naudojant OpenACC, o šiuo metu patikrintoje konfigūracijoje naudojamas NVIDIA HPC SDK. Be pirmiau išvardytų privalomų bibliotekų, GPU kompiliavimui reikalingi šie įrankiai.

Įrankis Paskirtis Šaltinis
NVIDIA HPC SDK (nvc, nvc++, nvfortran) OpenACC skaičiavimų perkėlimo į GPU kompiliavimas NVIDIA

Išsamiau apie GPU kompiliavimo procedūrą, įskaitant nepalaikomų bibliotekų tvarkymą, žr. GPU kompiliavimas.

AI-assisted translation May contain errors Official docs Status