Translation update pending
The Danish translation may be out of date because the Japanese source has changed. The existing translation remains available while it is being updated.
Bygning med CMake¶
Denne side beskriver proceduren fra hentning af FrontISTR-kildekoden til bygning og installation. Se Nødvendige og valgfrie afhængigheder for detaljer om afhængighedsbibliotekerne.
Hentning af kildekoden¶
FrontISTR-kildekoden kan hentes fra GitLab eller GitHub.
# GitLab
git clone https://gitlab.com/FrontISTR-Commons/FrontISTR.git
# GitHub (spejl)
git clone https://github.com/FrontISTR/FrontISTR.git
Byggeprocedure¶
FrontISTR forudsætter en out-of-source-bygning (bygning direkte i kildetræet er forbudt). Opret en build-mappe, og kør cmake i den.
cd FrontISTR
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_MPI=ON -DWITH_OPENMP=ON ..
make -j$(nproc)
Efter bygningen kan programmet køres direkte som /path/to/FrontISTR/build/fistr1/fistr1. For at installere det i systemstien (CMAKE_INSTALL_PREFIX) skal følgende kommando desuden køres.
CMake-optioner¶
Optioner, hvis standardværdi er angivet som "ON hvis fundet", aktiveres automatisk, når det tilsvarende bibliotek findes på systemet ved kørsel af cmake. De kan deaktiveres eksplicit ved at angive -DWITH_XXX=OFF.
| Option | Standard | Beskrivelse |
|---|---|---|
WITH_MPI | ON | Aktiverer MPI-parallelitet |
WITH_OPENMP | ON hvis fundet | Aktiverer OpenMP-trådparallelitet |
WITH_METIS | ON hvis fundet | Aktiverer meshpartitionering med METIS |
WITH_MUMPS | ON hvis fundet | Aktiverer den parallelle direkte MUMPS-løser |
WITH_MKL | ON hvis fundet | Aktiverer Intel MKL (inklusive PARDISO) |
WITH_LAPACK | ON hvis fundet | Aktiverer estimering af konditionstal med LAPACK |
WITH_ML | ON hvis fundet | Aktiverer AMG-prækonditionering med Trilinos ML |
WITH_REFINER | ON hvis fundet | Aktiverer meshforfining med REVOCAP_Refiner |
WITH_REVOCAP | ON hvis fundet | Aktiverer koblet analyse med REVOCAP_Coupler |
WITH_TOOLS | ON | Bygger de medfølgende værktøjer |
WITH_DOC | OFF | Genererer API-dokumentation med Doxygen |
WITH_NETCDF | ON hvis fundet | Aktiverer Exodus II-output (NetCDF) |
WINDOWS | OFF | Aktiverer bygning til Windows |
CMAKE_BUILD_TYPE | RELEASE | Byggetype (RELEASE / DEBUG) |
CMAKE_INSTALL_PREFIX | /usr/local | Installationsmappe |
DEBUG_EXTRA | OFF | Aktiverer kontrol for hukommelseslækager (for GCC, -fsanitize=address) |
NVHPC_NO_ACC | OFF | Deaktiverer OpenACC ved brug af NVIDIA HPC SDK-kompilatorerne og bygger CPU-versionen |
DEBUG-bygning¶
Når CMAKE_BUILD_TYPE=DEBUG angives, tilføjes følgende compiler-specifikke debugflag.
| Compiler | Yderligere flag |
|---|---|
| GCC | -fbounds-check -fbacktrace |
| Intel | -check uninit,bound -traceback |
Bygning med en GPU¶
Når NVIDIA HPC SDK (nvc/nvc++/nvfortran) angives som compiler, tilføjer CMake automatisk følgende flag.
| Flag | Beskrivelse |
|---|---|
-acc | Aktiverer OpenACC |
-Minfo=accel | Viser oplysninger om GPU-offloading under kompilering |
-gpu=ccnative,mem:managed | Registrerer automatisk GPU'en i byggemiljøet for at bestemme målet og bruger Unified Memory |
Hvis -DNVHPC_NO_ACC=ON angives, tilføjes disse flag ikke.
Se Bygning med en GPU for den detaljerede procedure for GPU-bygninger med OpenACC.