აუცილებელი და არასავალდებულო დამოკიდებულებების ბიბლიოთეკები¶
აქ აღწერილია FrontISTR-ის ასაგებად აუცილებელი ბიბლიოთეკები და ფუნქციონალის გასაფართოებლად გამოყენებული არასავალდებულო ბიბლიოთეკები. თითოეული ბიბლიოთეკის ინსტალაციის პროცედურისთვის იხილეთ თავად ბიბლიოთეკის დოკუმენტაცია.
აუცილებელი დამოკიდებულებების ბიბლიოთეკები¶
FrontISTR-ის ასაგებად აუცილებელია შემდეგი ხელსაწყოები და ბიბლიოთეკები.
| ბიბლიოთეკა | ვერსიის მოთხოვნა | დანიშნულება |
|---|---|---|
| CMake | ≥ 3.13.4 | აგების სისტემა |
| C/C++/Fortran კომპილატორი | — | საწყისი კოდის კომპილაცია |
| MPI | — | პარალელური კომუნიკაციის ბიბლიოთეკა (OpenMPI, IntelMPI და სხვ.) |
არასავალდებულო დამოკიდებულებების ბიბლიოთეკები¶
შემდეგი ბიბლიოთეკები არასავალდებულოა და შეიძლება აგებისას ჩაირთოს საჭირო ფუნქციების მიხედვით. შესაბამისი CMake პარამეტრებისთვის იხილეთ აგების პროცედურა CMake-ით.
| ბიბლიოთეკა | CMake პარამეტრი | დანიშნულება | მიღების წყარო |
|---|---|---|---|
| METIS (v4/v5) | WITH_METIS | გრაფის დაყოფაზე დაფუძნებული არეების დაყოფა | Karypis Lab |
| MUMPS + ScaLAPACK | WITH_MUMPS | პარალელური პირდაპირი მეთოდის ამომხსნელი | MUMPS-Solver.org / Netlib |
| Intel oneAPI MKL | WITH_MKL | პირდაპირი მეთოდის ამომხსნელი (PARDISO), BLAS/LAPACK | Intel |
| OpenBLAS / LAPACK | WITH_LAPACK | რიცხვითი წრფივი ალგებრა (პირობითობის რიცხვის შეფასება) | OpenBLAS.net / Netlib |
| Trilinos ML | WITH_ML | AMG პრეკონდიცირება | Trilinos Project |
| REVOCAP_Refiner | WITH_REFINER | ბადის გამჭიდროება | FrontISTR-ის ჩამოტვირთვის გვერდი |
| REVOCAP_Coupler | WITH_REVOCAP | დაკავშირებული ანალიზი | FrontISTR-ის ჩამოტვირთვის გვერდი |
| NetCDF | WITH_NETCDF | Exodus II ფორმატში გამოტანა | Unidata |
| Doxygen | WITH_DOC | API დოკუმენტაციის გენერაცია | Doxygen.nl |
GPU აგებისთვის საჭირო დამატებითი ხელსაწყოები¶
FrontISTR-ის GPU ვერსია OpenACC-ით არის რეალიზებული და ამჟამად მუშაობა დადასტურებულია NVIDIA HPC SDK-ზე დაფუძნებულ კონფიგურაციაში. GPU აგებისთვის, ზემოთ ჩამოთვლილი აუცილებელი ბიბლიოთეკების გარდა, საჭიროა შემდეგი ხელსაწყო.
| ხელსაწყო | დანიშნულება | მიღების წყარო |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | OpenACC GPU offload-ის კომპილაცია | NVIDIA |
GPU-სთვის აგების პროცედურის დეტალებისთვის, მათ შორის არამხარდაჭერილი ბიბლიოთეკების დამუშავებისთვის, იხილეთ GPU-ის გამოყენებით აგება.