Joan zuzenean edukira

Translation update pending

The Basque translation may be out of date because the Japanese source has changed. The existing translation remains available while it is being updated.

CMake bidez konpilatzea

Orrialde honetan FrontISTR-en iturburu-kodea eskuratzetik konpilatu eta instalatu arteko prozedura azaltzen da. Mendekotasun-liburutegiei buruzko xehetasunetarako, ikusi Nahitaezko eta aukerako mendekotasunak.

Iturburu-kodea eskuratzea

FrontISTR-en iturburu-kodea GitLab edo GitHub-etik lor daiteke.

# GitLab
git clone https://gitlab.com/FrontISTR-Commons/FrontISTR.git

# GitHub (ispilua)
git clone https://github.com/FrontISTR/FrontISTR.git

Konpilazio-prozedura

FrontISTR-ek iturburu-zuhaitzetik kanpoko konpilazioa erabiltzen du (debekatuta dago zuzenean iturburu-zuhaitzaren barruan konpilatzea). Sortu build direktorioa eta exekutatu cmake bertan.

cd FrontISTR
mkdir build
cd build
cmake -DCMAKE_INSTALL_PREFIX=/usr/local -DWITH_MPI=ON -DWITH_OPENMP=ON ..
make -j$(nproc)

Konpilatu ondoren, zuzenean exekuta daiteke /path/to/FrontISTR/build/fistr1/fistr1 gisa. Sistemaren bidean (CMAKE_INSTALL_PREFIX) instalatzeko, exekutatu gainera honako komandoa.

cmake --build . --target install

CMake aukerak

Lehenetsi gisa "detektatuz gero ON" duten aukerak automatikoki gaitzen dira cmake exekutatzean dagokion liburutegia sisteman aurkitzen bada. Espresuki desgaitu daitezke -DWITH_XXX=OFF zehaztuz.

Aukera Lehenetsia Deskribapena
WITH_MPI ON MPI paralelismoa gaitzen du
WITH_OPENMP Detektatuz gero ON OpenMP harien paralelismoa gaitzen du
WITH_METIS Detektatuz gero ON METIS bidezko sarearen partizionamendua gaitzen du
WITH_MUMPS Detektatuz gero ON MUMPS ebazle zuzen paraleloa gaitzen du
WITH_MKL Detektatuz gero ON Intel MKL gaitzen du (PARDISO barne)
WITH_LAPACK Detektatuz gero ON LAPACK bidezko baldintza-zenbakiaren estimazioa gaitzen du
WITH_ML Detektatuz gero ON Trilinos ML bidezko AMG aurrebaldintzatzea gaitzen du
WITH_REFINER Detektatuz gero ON REVOCAP_Refiner bidezko sare-fintzea gaitzen du
WITH_REVOCAP Detektatuz gero ON REVOCAP_Coupler bidezko analisi akoplatua gaitzen du
WITH_TOOLS ON Paketeko tresnak konpilatzen ditu
WITH_DOC OFF Doxygen bidez API dokumentazioa sortzen du
WITH_NETCDF Detektatuz gero ON Exodus II formatuko irteera (NetCDF) gaitzen du
WINDOWS OFF Windows-erako konpilazioa gaitzen du
CMAKE_BUILD_TYPE RELEASE Konpilazio mota (RELEASE / DEBUG)
CMAKE_INSTALL_PREFIX /usr/local Instalazio-direktorioa
DEBUG_EXTRA OFF Memoria-ihesak egiaztatzea gaitzen du (GCC-rako, -fsanitize=address)
NVHPC_NO_ACC OFF OpenACC desgaitzen du NVIDIA HPC SDK konpiladoreak erabiltzean, eta CPU bertsioa eraikitzen du

DEBUG konpilazioa

CMAKE_BUILD_TYPE=DEBUG zehazten denean, konpiladorearen araberako honako arazketa-bandera hauek gehitzen dira.

Konpiladorea Bandera gehigarriak
GCC -fbounds-check -fbacktrace
Intel -check uninit,bound -traceback
cmake -DCMAKE_BUILD_TYPE=DEBUG ..

GPUarekin konpilatzea

NVIDIA HPC SDK (nvc/nvc++/nvfortran) konpiladore gisa zehazten denean, CMake-k automatikoki honako banderak gehitzen ditu.

Bandera Deskribapena
-acc OpenACC gaitzen du
-Minfo=accel GPU offload-ari buruzko informazioa konpilazioan bistaratzen du
-gpu=ccnative,mem:managed Konpilazio-inguruneko GPUa automatikoki detektatu, helburua zehaztu eta Unified Memory erabiltzen du

-DNVHPC_NO_ACC=ON zehazten bada, bandera horiek ez dira gehitzen.

OpenACC bidezko GPU konpilazio-prozedura zehatzetarako, ikusi GPUarekin konpilatzea.