Перейти к содержанию

Обязательные и необязательные зависимости

На этой странице описаны библиотеки, необходимые для сборки FrontISTR, а также необязательные библиотеки, расширяющие его функциональность. Инструкции по установке каждой библиотеки см. в документации соответствующей библиотеки.

Обязательные зависимости

Для сборки FrontISTR необходимы следующие инструменты и библиотеки.

Библиотека Требование к версии Назначение
CMake ≥ 3.13.4 Система сборки
Компилятор C/C++/Fortran Компиляция исходного кода
MPI Библиотека параллельных коммуникаций (OpenMPI, IntelMPI и т. п.)

Необязательные зависимости

Следующие библиотеки являются необязательными и могут быть включены при сборке в зависимости от требуемой функциональности. Соответствующие параметры CMake см. в разделе Сборка с CMake.

Библиотека Параметр CMake Назначение Источник
METIS (v4/v5) WITH_METIS Декомпозиция области посредством разбиения графа Karypis Lab
MUMPS + ScaLAPACK WITH_MUMPS Параллельный прямой решатель MUMPS-Solver.org / Netlib
Intel oneAPI MKL WITH_MKL Прямой решатель (PARDISO), BLAS/LAPACK Intel
OpenBLAS / LAPACK WITH_LAPACK Численная линейная алгебра (оценка числа обусловленности) OpenBLAS.net / Netlib
Trilinos ML WITH_ML AMG-предобуславливание Trilinos Project
REVOCAP_Refiner WITH_REFINER Уточнение сетки Страница загрузки FrontISTR
REVOCAP_Coupler WITH_REVOCAP Связанный анализ Страница загрузки FrontISTR
NetCDF WITH_NETCDF Вывод в формате Exodus II Unidata
Doxygen WITH_DOC Создание документации API Doxygen.nl

Дополнительные инструменты, необходимые для сборки для GPU

Ускорение FrontISTR на GPU реализовано с помощью OpenACC, а в настоящее время проверенная рабочая конфигурация использует NVIDIA HPC SDK. Помимо перечисленных выше обязательных библиотек, для сборки для GPU необходимы следующие инструменты.

Инструмент Назначение Источник
NVIDIA HPC SDK (nvc, nvc++, nvfortran) Компиляция выгрузки вычислений OpenACC на GPU NVIDIA

Подробности процедуры сборки для GPU, включая обработку неподдерживаемых библиотек, см. в разделе Сборка для GPU.