ຂັ້ນຕອນການບິວດ້ວຍ 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¶
ຕົວເລືອກທີ່ລະບຸຄ່າເລີ່ມຕົ້ນວ່າ “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 |
ການບິວໂດຍໃຊ້ GPU¶
ເມື່ອລະບຸ NVIDIA HPC SDK (nvc/nvc++/nvfortran) ເປັນ ຄອມໄພເລີ, CMake ຈະເພີ່ມ ແຟລັກ ຕໍ່ໄປນີ້ອັດຕະໂນມັດ.
| ແຟລັກ | ຄຳອະທິບາຍ |
|---|---|
-acc | ເປີດໃຊ້ OpenACC |
-Minfo=accel | ສະແດງຂໍ້ມູນການ ການຖ່າຍວຽກ ໄປ GPU ໃນເວລາ ຄອມໄພລ໌ |
-gpu=ccnative,mem:managed | ກວດຫາ GPU ໃນສະພາບແວດລ້ອມບິວອັດຕະໂນມັດເພື່ອກຳນົດ ເປົ້າໝາຍ ແລະໃຊ້ ໜ່ວຍຄວາມຈຳແບບລວມ |
ສຳລັບຂັ້ນຕອນລະອຽດຂອງ GPU ບິວ ດ້ວຍ OpenACC ໃຫ້ເບິ່ງ ການບິວໂດຍໃຊ້ GPU.