Majburiy va ixtiyoriy bog‘liqliklar¶
Bu sahifa FrontISTR ni yig‘ish uchun zarur kutubxonalar va funksionallikni kengaytiradigan ixtiyoriy kutubxonalarni tushuntiradi. Har bir kutubxonani o‘rnatish bo‘yicha ko‘rsatmalar uchun o‘sha kutubxona hujjatlariga qarang.
Majburiy bog‘liqliklar¶
Quyidagi vosita va kutubxonalar FrontISTR ni yig‘ish uchun majburiy.
| Kutubxona | Versiya talabi | Vazifasi |
|---|---|---|
| CMake | ≥ 3.13.4 | Yig‘ish tizimi |
| C/C++/Fortran kompilyatori | — | Manba kodini kompilyatsiya qilish |
| MPI | — | Parallel aloqa kutubxonasi (OpenMPI, IntelMPI va boshqalar) |
Ixtiyoriy bog‘liqliklar¶
Quyidagi kutubxonalar ixtiyoriy bo‘lib, kerakli funksiyalarga qarab yig‘ish vaqtida yoqilishi mumkin. Tegishli CMake parametrlari uchun CMake yordamida yig‘ish tartibi ga qarang.
| Kutubxona | CMake parametri | Vazifasi | Manba |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS | Grafni bo‘lish orqali to‘rni bo‘lish | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS | Parallel to‘g‘ridan-to‘g‘ri yechuvchi | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL | To‘g‘ridan-to‘g‘ri yechuvchi (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK | Sonli chiziqli algebra (shartlanganlik sonini baholash) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML | AMG oldindan shartlash | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER | To‘rni maydalashtirish | FrontISTR yuklab olish sahifasi |
| REVOCAP_Coupler | WITH_REVOCAP | Bog‘langan tahlil | FrontISTR yuklab olish sahifasi |
| NetCDF | WITH_NETCDF | Exodus II formatida chiqarish | Unidata |
| Doxygen | WITH_DOC | API hujjatlarini yaratish | Doxygen.nl |
GPU bilan yig‘ish uchun qo‘shimcha vositalar¶
FrontISTR ning GPU tezlashtirishi OpenACC yordamida amalga oshirilgan va hozirda NVIDIA HPC SDK asosidagi konfiguratsiyada ishlashi tasdiqlangan. GPU bilan yig‘ish uchun yuqoridagi majburiy kutubxonalarga qo‘shimcha ravishda quyidagi vositalar kerak.
| Vosita | Vazifasi | Manba |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | OpenACC GPU offloading ni kompilyatsiya qilish | NVIDIA |
GPU bilan yig‘ish tartibining tafsilotlari, jumladan qo‘llab-quvvatlanmaydigan kutubxonalarga ishlov berish uchun GPU yordamida yig‘ish ga qarang.