Dipendenze obbligatorie e opzionali¶
Questa pagina descrive le librerie necessarie per compilare FrontISTR e le librerie opzionali che ne estendono le funzionalità. Per le istruzioni di installazione di ciascuna libreria, consultare la documentazione fornita dalla libreria stessa.
Dipendenze obbligatorie¶
Per compilare FrontISTR sono necessari i seguenti strumenti e librerie.
| Libreria | Requisito di versione | Scopo |
|---|---|---|
| CMake | ≥ 3.13.4 | Sistema di build |
| Compilatore C/C++/Fortran | — | Compilazione del codice sorgente |
| MPI | — | Libreria di comunicazione parallela (OpenMPI, IntelMPI, ecc.) |
Dipendenze opzionali¶
Le seguenti librerie sono opzionali e possono essere abilitate in fase di build in base alle funzionalità richieste. Per le corrispondenti opzioni CMake, vedere Compilazione con CMake.
| Libreria | Opzione CMake | Scopo | Fonte |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS |
Decomposizione del dominio mediante partizionamento di grafi | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS |
Solver diretto parallelo | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL |
Solver diretto (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK |
Algebra lineare numerica (stima del numero di condizionamento) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML |
Precondizionamento AMG | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER |
Raffinamento della mesh | Pagina di download di FrontISTR |
| REVOCAP_Coupler | WITH_REVOCAP |
Analisi accoppiata | Pagina di download di FrontISTR |
| NetCDF | WITH_NETCDF |
Output in formato Exodus II | Unidata |
| Doxygen | WITH_DOC |
Generazione della documentazione API | Doxygen.nl |
Strumenti aggiuntivi necessari per le build GPU¶
L'accelerazione GPU di FrontISTR è implementata mediante OpenACC e la configurazione attualmente verificata utilizza NVIDIA HPC SDK. Oltre alle librerie obbligatorie elencate sopra, per le build GPU sono necessari i seguenti strumenti.
| Strumento | Scopo | Fonte |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) |
Compilazione dell'offloading GPU OpenACC | NVIDIA |
Per i dettagli della procedura di build GPU, compresa la gestione delle librerie non supportate, vedere Build GPU.