Maktaba Tegemezi za Lazima na za Hiari¶
Hapa tunaeleza maktaba zinazohitajika kujenga FrontISTR na maktaba za hiari zinazopanua utendaji wake. Kwa taratibu za kusakinisha kila maktaba, rejelea nyaraka za maktaba husika.
Maktaba Tegemezi za Lazima¶
Zana na maktaba zifuatazo ni za lazima ili kujenga FrontISTR.
| Maktaba | Mahitaji ya toleo | Matumizi |
|---|---|---|
| CMake | ≥ 3.13.4 | Mfumo wa kujenga |
| Kompaila ya C/C++/Fortran | — | Kukompaili msimbo chanzo |
| MPI | — | Maktaba ya mawasiliano sambamba (OpenMPI, IntelMPI, n.k.) |
Maktaba Tegemezi za Hiari¶
Maktaba zifuatazo ni za hiari na zinaweza kuwezeshwa wakati wa kujenga kulingana na utendaji unaohitajika. Kwa chaguo sambamba za CMake, rejelea Utaratibu wa Kujenga kwa CMake.
| Maktaba | Chaguo la CMake | Matumizi | Chanzo |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS | Ugawaji wa kikoa kwa kugawa grafu | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS | Solver sambamba ya moja kwa moja | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL | Solver ya moja kwa moja (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK | Aljebra ya mstari ya nambari (ukadiriaji wa condition number) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML | Preconditioning ya AMG | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER | Usafishaji wa mesh | Ukurasa wa upakuaji wa FrontISTR |
| REVOCAP_Coupler | WITH_REVOCAP | Uchanganuzi uliounganishwa | Ukurasa wa upakuaji wa FrontISTR |
| NetCDF | WITH_NETCDF | Utoaji katika umbizo la Exodus II | Unidata |
| Doxygen | WITH_DOC | Uzalishaji wa nyaraka za API | Doxygen.nl |
Zana za Ziada Zinazohitajika kwa Kujenga kwa GPU¶
Uharakishaji wa GPU wa FrontISTR umetekelezwa kwa kutumia OpenACC, na kwa sasa utendakazi umethibitishwa kwa usanidi unaotumia NVIDIA HPC SDK. Mbali na maktaba za lazima zilizo hapo juu, zana zifuatazo zinahitajika kwa kujenga kwa GPU.
| Zana | Matumizi | Chanzo |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | Kukompaili offload ya GPU ya OpenACC | NVIDIA |
Kwa maelezo ya utaratibu wa kujenga kwa GPU, ikiwa ni pamoja na jinsi ya kushughulikia maktaba zisizotumika, rejelea Kujenga kwa kutumia GPU.