Dépendances obligatoires et facultatives¶
Cette page décrit les bibliothèques nécessaires à la compilation de FrontISTR ainsi que les bibliothèques facultatives qui étendent ses fonctionnalités. Pour l'installation de chaque bibliothèque, consulter sa propre documentation.
Dépendances obligatoires¶
Les outils et bibliothèques suivants sont nécessaires pour compiler FrontISTR.
| Bibliothèque | Exigence de version | Utilisation |
|---|---|---|
| CMake | ≥ 3.13.4 | Système de compilation |
| Compilateur C/C++/Fortran | — | Compilation du code source |
| MPI | — | Bibliothèque de communication parallèle (OpenMPI, IntelMPI, etc.) |
Dépendances facultatives¶
Les bibliothèques suivantes sont facultatives et peuvent être activées lors de la compilation selon les fonctionnalités requises. Pour les options CMake correspondantes, consulter Compilation avec CMake.
| Bibliothèque | Option CMake | Utilisation | Source |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS |
Décomposition de domaine par partitionnement de graphe | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS |
Solveur direct parallèle | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL |
Solveur direct (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK |
Algèbre linéaire numérique (estimation du nombre de condition) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML |
Préconditionnement AMG | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER |
Raffinement du maillage | Page de téléchargement de FrontISTR |
| REVOCAP_Coupler | WITH_REVOCAP |
Analyse couplée | Page de téléchargement de FrontISTR |
| NetCDF | WITH_NETCDF |
Sortie au format Exodus II | Unidata |
| Doxygen | WITH_DOC |
Génération de la documentation API | Doxygen.nl |
Outils supplémentaires requis pour les compilations GPU¶
L'accélération GPU de FrontISTR est implémentée avec OpenACC et, à ce jour, le fonctionnement a été vérifié avec une configuration utilisant NVIDIA HPC SDK. En plus des bibliothèques obligatoires ci-dessus, les outils suivants sont nécessaires pour une compilation GPU.
| Outil | Utilisation | Source |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) |
Compilation du déport GPU OpenACC | NVIDIA |
Pour plus de détails sur la procédure de compilation pour GPU, y compris la gestion des bibliothèques non prises en charge, consulter Compilation avec un GPU.