Vai al contenuto

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.