आवश्यक और वैकल्पिक Dependencies¶
यह पृष्ठ FrontISTR build करने के लिए आवश्यक libraries और उसकी functionality बढ़ाने वाली optional libraries का वर्णन करता है। प्रत्येक library की installation instructions के लिए उस library के documentation देखें।
आवश्यक Dependencies¶
FrontISTR build करने के लिए निम्न tools और libraries आवश्यक हैं।
| Library | Version requirement | उद्देश्य |
|---|---|---|
| CMake | ≥ 3.13.4 | Build system |
| C/C++/Fortran compiler | — | Source code compile करना |
| MPI | — | Parallel communication library (OpenMPI, IntelMPI आदि) |
वैकल्पिक Dependencies¶
निम्न libraries वैकल्पिक हैं और आवश्यक functionality के अनुसार build समय पर सक्षम की जा सकती हैं। संबंधित CMake options के लिए CMake से Build देखें।
| Library | CMake option | उद्देश्य | Source |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS |
Graph partitioning द्वारा domain decomposition | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS |
Parallel direct solver | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL |
Direct solver (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK |
Numerical linear algebra (condition number estimation) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML |
AMG preconditioning | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER |
Mesh refinement | FrontISTR download page |
| REVOCAP_Coupler | WITH_REVOCAP |
Coupled analysis | FrontISTR download page |
| NetCDF | WITH_NETCDF |
Exodus II format में output | Unidata |
| Doxygen | WITH_DOC |
API documentation generation | Doxygen.nl |
GPU Build के लिए अतिरिक्त Tools¶
FrontISTR GPU acceleration OpenACC से implement की गई है, और वर्तमान में verify किया गया configuration NVIDIA HPC SDK का उपयोग करता है। ऊपर सूचीबद्ध आवश्यक libraries के अतिरिक्त GPU build के लिए निम्न tools आवश्यक हैं।
| Tool | उद्देश्य | Source |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) |
OpenACC GPU offloading compile करना | NVIDIA |
Unsupported libraries के handling सहित GPU build procedure के विवरण के लिए GPU Build देखें।