کتابخانههای وابسته الزامی و اختیاری¶
کتابخانههای لازم برای ساخت 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¶
پشتیبانی GPU در FrontISTR با OpenACC پیادهسازی شده و در حال حاضر عملکرد آن در پیکربندی مبتنی بر NVIDIA HPC SDK بررسی شده است. برای ساخت GPU علاوه بر کتابخانههای الزامی بالا، ابزار زیر لازم است.
| ابزار | کاربرد | محل دریافت |
|---|---|---|
NVIDIA HPC SDK (nvc, nvc++, nvfortran) | کامپایل offload به GPU با OpenACC | NVIDIA |
برای جزئیات روش ساخت برای GPU، از جمله نحوه برخورد با کتابخانههای پشتیبانینشده، به ساخت با استفاده از GPU مراجعه کنید.