Skip to content

ຂັ້ນຕອນການບິວດ້ວຍ CMake

ໜ້ານີ້ອະທິບາຍຂັ້ນຕອນຕັ້ງແຕ່ການເອົາ ລະຫັດຕົ້ນສະບັບ ຂອງ FrontISTR ຈົນເຖິງການບິວ ແລະຕິດຕັ້ງ. ສຳລັບລາຍລະອຽດຂອງໄລບຣາຣີ ພຶ່ງພາ ໃຫ້ເບິ່ງ ໄລບຣາຣີ ພຶ່ງພາ ທີ່ຈຳເປັນ ແລະເລືອກໃຊ້.

ການເອົາ ລະຫັດຕົ້ນສະບັບ

ສາມາດເອົາ ລະຫັດຕົ້ນສະບັບ ຂອງ FrontISTR ຈາກ GitLab ຫຼື GitHub.

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

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

ຂັ້ນຕອນການບິວ

FrontISTR ກຳນົດໃຫ້ໃຊ້ ການບິວນອກໄດເຣັກທໍຣີຕົ້ນສະບັບ (ຫ້າມບິວໂດຍກົງໃນ ໂຄງສ້າງລະຫັດຕົ້ນສະບັບ). ສ້າງ ໄດເຣັກທໍຣີ build ແລະປະຕິບັດ cmake ພາຍໃນນັ້ນ.

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

ຫຼັງຈາກບິວ ສາມາດປະຕິບັດໂດຍກົງເປັນ /path/to/FrontISTR/build/fistr1/fistr1. ຖ້າຈະຕິດຕັ້ງເຂົ້າໃນເສັ້ນທາງຂອງລະບົບ (CMAKE_INSTALL_PREFIX) ໃຫ້ປະຕິບັດຄຳສັ່ງຕໍ່ໄປນີ້ເພີ່ມ.

cmake --build . --target install

ລາຍການຕົວເລືອກ CMake

ຕົວເລືອກທີ່ລະບຸຄ່າເລີ່ມຕົ້ນວ່າ “ON ເມື່ອກວດພົບ” ຈະເປີດໃຊ້ອັດຕະໂນມັດເມື່ອ cmake ພົບໄລບຣາຣີນັ້ນໃນລະບົບ. ສາມາດປິດໃຊ້ໂດຍລະບຸ -DWITH_XXX=OFF ຢ່າງຊັດເຈນ.

ຕົວເລືອກ ຄ່າເລີ່ມຕົ້ນ ຄຳອະທິບາຍ
WITH_MPI ON ເປີດໃຊ້ການປະມວນຜົນແບບຂະໜານ MPI
WITH_OPENMP ON ເມື່ອກວດພົບ ເປີດໃຊ້ ຂະໜານແບບເທຣດ ຂອງ OpenMP
WITH_METIS ON ເມື່ອກວດພົບ ເປີດໃຊ້ການແບ່ງໂດເມນດ້ວຍ METIS
METIS_VER_4 OFF ໃຊ້ METIS v4 (OFF ໃຊ້ v5)
WITH_MUMPS ON ເມື່ອກວດພົບ ເປີດໃຊ້ຕົວແກ້ສົມຜົນແບບໂດຍກົງຂະໜານ MUMPS
WITH_MKL ON ເມື່ອກວດພົບ ເປີດໃຊ້ Intel MKL (ລວມ PARDISO)
WITH_LAPACK ON ເມື່ອກວດພົບ ເປີດໃຊ້ການປະເມີນ ເລກສະພາບ ດ້ວຍ LAPACK
WITH_ML ON ເມື່ອກວດພົບ ເປີດໃຊ້ການປັບສະພາບລ່ວງໜ້າ AMG ດ້ວຍ Trilinos ML
WITH_REFINER ON ເມື່ອກວດພົບ ເປີດໃຊ້ການລະອຽດເມຊດ້ວຍ REVOCAP_Refiner
WITH_REVOCAP ON ເມື່ອກວດພົບ ເປີດໃຊ້ການວິເຄາະຄູ່ຄວບດ້ວຍ REVOCAP_Coupler
WITH_TOOLS ON ບິວຊຸດເຄື່ອງມືທີ່ລວມມາ
WITH_DOC OFF ສ້າງເອກະສານ API ດ້ວຍ Doxygen
WITH_NETCDF ON ເມື່ອກວດພົບ ເປີດໃຊ້ຜົນສົ່ງອອກຮູບແບບ Exodus II (NetCDF)
WINDOWS OFF ເປີດໃຊ້ການບິວສຳລັບ Windows
CMAKE_BUILD_TYPE RELEASE ປະເພດການບິວ (RELEASE / DEBUG)
CMAKE_INSTALL_PREFIX /usr/local ໄດເຣັກທໍຣີ ປາຍທາງການຕິດຕັ້ງ
DEBUG_EXTRA OFF ເປີດໃຊ້ການກວດ ການຮົ່ວໄຫຼຂອງໜ່ວຍຄວາມຈຳ (ສຳລັບ GCC, -fsanitize=address)

DEBUG ບິວ

ເມື່ອລະບຸ CMAKE_BUILD_TYPE=DEBUG ຈະເພີ່ມ ແຟລັກດີບັກ ຕາມ ຄອມໄພເລີ ດັ່ງນີ້.

ຄອມໄພເລີ ແຟລັກ ທີ່ເພີ່ມ
GCC -fbounds-check -fbacktrace
Intel -check uninit,bound -traceback
cmake -DCMAKE_BUILD_TYPE=DEBUG ..

ການບິວໂດຍໃຊ້ GPU

ເມື່ອລະບຸ NVIDIA HPC SDK (nvc/nvc++/nvfortran) ເປັນ ຄອມໄພເລີ, CMake ຈະເພີ່ມ ແຟລັກ ຕໍ່ໄປນີ້ອັດຕະໂນມັດ.

ແຟລັກ ຄຳອະທິບາຍ
-acc ເປີດໃຊ້ OpenACC
-Minfo=accel ສະແດງຂໍ້ມູນການ ການຖ່າຍວຽກ ໄປ GPU ໃນເວລາ ຄອມໄພລ໌
-gpu=ccnative,mem:managed ກວດຫາ GPU ໃນສະພາບແວດລ້ອມບິວອັດຕະໂນມັດເພື່ອກຳນົດ ເປົ້າໝາຍ ແລະໃຊ້ ໜ່ວຍຄວາມຈຳແບບລວມ

ສຳລັບຂັ້ນຕອນລະອຽດຂອງ GPU ບິວ ດ້ວຍ OpenACC ໃຫ້ເບິ່ງ ການບິວໂດຍໃຊ້ GPU.