Ir para o conteúdo

Dependências obrigatórias e opcionais

Esta página descreve as bibliotecas necessárias para fazer o build do FrontISTR e as bibliotecas opcionais que ampliam suas funcionalidades. Para instruções de instalação de cada biblioteca, consulte a documentação fornecida pela própria biblioteca.

Dependências obrigatórias

As ferramentas e bibliotecas a seguir são obrigatórias para fazer o build do FrontISTR.

Biblioteca Requisito de versão Finalidade
CMake ≥ 3.13.4 Sistema de build
Compilador C/C++/Fortran Compilação do código-fonte
MPI Biblioteca de comunicação paralela (OpenMPI, IntelMPI etc.)

Dependências opcionais

As bibliotecas a seguir são opcionais e podem ser habilitadas durante o build de acordo com a funcionalidade necessária. Consulte Build com CMake para as opções CMake correspondentes.

Biblioteca Opção CMake Finalidade Fonte
METIS (v4/v5) WITH_METIS Decomposição de domínio por particionamento de grafos Karypis Lab
MUMPS + ScaLAPACK WITH_MUMPS Solver direto paralelo MUMPS-Solver.org / Netlib
Intel oneAPI MKL WITH_MKL Solver direto (PARDISO), BLAS/LAPACK Intel
OpenBLAS / LAPACK WITH_LAPACK Álgebra linear numérica (estimativa do número de condição) OpenBLAS.net / Netlib
Trilinos ML WITH_ML Pré-condicionamento AMG Trilinos Project
REVOCAP_Refiner WITH_REFINER Refinamento de malha Página de download do FrontISTR
REVOCAP_Coupler WITH_REVOCAP Análise acoplada Página de download do FrontISTR
NetCDF WITH_NETCDF Saída no formato Exodus II Unidata
Doxygen WITH_DOC Geração da documentação da API Doxygen.nl

Ferramentas adicionais necessárias para builds com GPU

A aceleração por GPU do FrontISTR é implementada usando OpenACC, e a configuração atualmente verificada para operação utiliza o NVIDIA HPC SDK. Além das bibliotecas obrigatórias listadas acima, as ferramentas a seguir são necessárias para builds com GPU.

Ferramenta Finalidade Fonte
NVIDIA HPC SDK (nvc, nvc++, nvfortran) Compilação do offloading para GPU com OpenACC NVIDIA

Para detalhes do procedimento de build com GPU, incluindo o tratamento de bibliotecas não suportadas, consulte Build com GPU.