Dependencias obligatorias y opcionales¶
Esta página describe las bibliotecas necesarias para compilar FrontISTR y las bibliotecas opcionales que amplían su funcionalidad. Para obtener instrucciones sobre la instalación de cada biblioteca, consulte la documentación proporcionada por dicha biblioteca.
Dependencias obligatorias¶
Para compilar FrontISTR se requieren las siguientes herramientas y bibliotecas.
| Biblioteca | Requisito de versión | Finalidad |
|---|---|---|
| CMake | ≥ 3.13.4 | Sistema de compilación |
| Compilador C/C++/Fortran | — | Compilación del código fuente |
| MPI | — | Biblioteca de comunicación paralela (OpenMPI, IntelMPI, etc.) |
Dependencias opcionales¶
Las siguientes bibliotecas son opcionales y pueden habilitarse durante la compilación según la funcionalidad necesaria. Consulte Compilación con CMake para las opciones de CMake correspondientes.
| Biblioteca | Opción de CMake | Finalidad | Fuente |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS |
Descomposición de dominios mediante particionamiento de grafos | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS |
Solver directo paralelo | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL |
Solver directo (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK |
Álgebra lineal numérica (estimación del número de condición) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML |
Precondicionamiento AMG | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER |
Refinamiento de malla | Página de descarga de FrontISTR |
| REVOCAP_Coupler | WITH_REVOCAP |
Análisis acoplado | Página de descarga de FrontISTR |
| NetCDF | WITH_NETCDF |
Salida en formato Exodus II | Unidata |
| Doxygen | WITH_DOC |
Generación de documentación de la API | Doxygen.nl |
Herramientas adicionales necesarias para compilaciones con GPU¶
La aceleración mediante GPU de FrontISTR se implementa con OpenACC, y la configuración cuyo funcionamiento está verificado actualmente utiliza NVIDIA HPC SDK. Además de las bibliotecas obligatorias indicadas anteriormente, para las compilaciones con GPU se requieren las siguientes herramientas.
| Herramienta | Finalidad | Fuente |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) |
Compilación de offloading a GPU con OpenACC | NVIDIA |
Para obtener detalles sobre el procedimiento de compilación para GPU, incluido el tratamiento de bibliotecas no compatibles, consulte Compilación para GPU.