Translation update pending
The Hungarian translation may be out of date because the Japanese source has changed. The existing translation remains available while it is being updated.
Fordítás CMake használatával¶
Ez az oldal a FrontISTR forráskódjának beszerzésétől a fordításon át a telepítésig terjedő eljárást ismerteti. A függőségi könyvtárak részleteiért lásd: Kötelező és opcionális függőségek.
A forráskód beszerzése¶
A FrontISTR forráskódja GitLabról vagy GitHubról szerezhető be.
# GitLab
git clone https://gitlab.com/FrontISTR-Commons/FrontISTR.git
# GitHub (tükör)
git clone https://github.com/FrontISTR/FrontISTR.git
Fordítási eljárás¶
A FrontISTR forrásfán kívüli fordítást feltételez (közvetlenül a forrásfában fordítani tilos). Hozzon létre egy build könyvtárat, majd azon belül futtassa a cmake parancsot.
cd FrontISTR
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_MPI=ON -DWITH_OPENMP=ON ..
make -j$(nproc)
A fordítás után a program közvetlenül futtatható a /path/to/FrontISTR/build/fistr1/fistr1 útvonalról. A rendszer elérési útjára (CMAKE_INSTALL_PREFIX) történő telepítéshez ezen felül futtassa az alábbi parancsot.
CMake-opciók¶
Azok az opciók, amelyek alapértelmezése „észlelés esetén ON”, automatikusan engedélyeződnek, ha a megfelelő könyvtár megtalálható a rendszeren a cmake futtatásakor. Kifejezetten letilthatók a -DWITH_XXX=OFF megadásával.
| Opció | Alapértelmezés | Leírás |
|---|---|---|
WITH_MPI | ON | Engedélyezi az MPI-párhuzamosítást |
WITH_OPENMP | észlelés esetén ON | Engedélyezi az OpenMP szálpárhuzamosítást |
WITH_METIS | észlelés esetén ON | Engedélyezi a METIS használatával végzett hálófelosztást |
WITH_MUMPS | észlelés esetén ON | Engedélyezi a MUMPS párhuzamos direkt megoldót |
WITH_MKL | észlelés esetén ON | Engedélyezi az Intel MKL-t (a PARDISO-val együtt) |
WITH_LAPACK | észlelés esetén ON | Engedélyezi a kondíciószám becslését LAPACK használatával |
WITH_ML | észlelés esetén ON | Engedélyezi az AMG-előkondicionálást Trilinos ML használatával |
WITH_REFINER | észlelés esetén ON | Engedélyezi a hálófinomítást REVOCAP_Refiner használatával |
WITH_REVOCAP | észlelés esetén ON | Engedélyezi a csatolt analízist REVOCAP_Coupler használatával |
WITH_TOOLS | ON | Lefordítja a mellékelt eszközöket |
WITH_DOC | OFF | API-dokumentációt generál Doxygennel |
WITH_NETCDF | észlelés esetén ON | Engedélyezi az Exodus II kimenetet (NetCDF) |
WINDOWS | OFF | Engedélyezi a Windowsra történő fordítást |
CMAKE_BUILD_TYPE | RELEASE | Fordítási típus (RELEASE / DEBUG) |
CMAKE_INSTALL_PREFIX | /usr/local | Telepítési könyvtár |
DEBUG_EXTRA | OFF | Engedélyezi a memóriaszivárgás ellenőrzését (GCC esetén -fsanitize=address) |
NVHPC_NO_ACC | OFF | Az NVIDIA HPC SDK fordítóinak használatakor letiltja az OpenACC-t, és a CPU-verziót fordítja le |
DEBUG-fordítás¶
A CMAKE_BUILD_TYPE=DEBUG megadásakor az alábbi fordítófüggő hibakeresési jelzők kerülnek hozzáadásra.
| Fordító | További jelzők |
|---|---|
| GCC | -fbounds-check -fbacktrace |
| Intel | -check uninit,bound -traceback |
Fordítás GPU-val¶
Ha fordítóként az NVIDIA HPC SDK (nvc/nvc++/nvfortran) van megadva, a CMake automatikusan hozzáadja az alábbi jelzőket.
| Jelző | Leírás |
|---|---|
-acc | Engedélyezi az OpenACC-t |
-Minfo=accel | Fordításkor megjeleníti a GPU-ra történő kiszervezésre vonatkozó információkat |
-gpu=ccnative,mem:managed | Automatikusan észleli a fordítási környezet GPU-ját a cél meghatározásához, és Unified Memoryt használ |
Ha a -DNVHPC_NO_ACC=ON van megadva, ezek a kapcsolók nem kerülnek hozzáadásra.
Az OpenACC-alapú GPU-s fordítás részletes eljárásáért lásd: Fordítás GPU-val.