Compiler AMD ALELEON Supercomputer

Dari ALELEON by EFISON

(Dialihkan dari Software HPC AMD)

ALELEON Supercomputer mempunyai set library dan compiler yang dioptimasi untuk arsitektur CPU AMD Zen2 yang digunakan pada Compute Node. Halaman ini merangkum info teknis penting tentang penggunaan compiler dan software AMD tersebut supaya user dapat sepenuhnya memanfaatkan performa AMD Zen2.

Melakukan Compiling di ALELEON Supercomputer

User melakukan kegiatan compiling pada terminal ALELEON Supercomputer. Pada Job Composer, gunakan opsi Open Terminal pada job yang dipilih untuk melakukan compiling di direktori job tersebut. Kemudian user dapat mengaktifkan compiler yang akan digunakan melalui Module Environment.

Gunakan opsi Open Terminal untuk membuka terminal di direktori job terpilih.

GCC untuk AMD

ALELEON Supercomputer menggunakan GCC RHEL sebagai GCC sistem (default 10.2.0). User dapat melihat GCC versi lainnya yang terinstal beserta nama modulnya pada tabel daftar compiler ALELEON Supercomputer.

GCC mendukung flag optimasi march untuk AMD Zen2:

-march=znver2

Flag march diatas dapat digunakan untuk flag compiling C (CFLAGS), C++ (CXXFLAGS). dan Fortran (FCFLAGS) melalui GCC.

AMD Optimizing CPU Libraries (AOCL)

AOCL adalah set library numerik dan matematika untuk komputasi HPC yang dibuat khusus untuk keluarga AMD EPYC. Saat ini ALELEON Supercomputer menggunakan AOCL versi 3.0 sebagai default. User dapat melihat semua versi AOCL yang terinstal beserta nama modulnya pada tabel daftar library matematika ALELEON Supercomputer.

---

BLIS (BLAS-like Library Instantiation Software

Adalah framework portable BLAS (Basic Linear Algebra Subprograms) yang dbuat oleh Flame kemudian dikembangkan spesifik oleh AMD untuk AOCL. BLIS yang terinstal pada ALELEON Supercomputer adalah versi multi-threading. Flag untuk melakukan compile dengan BLIS:

-lblis-mt

---

LibFLAME

Adalah portable library untuk komputasi matrix atau LAPACK (Linear Algebra Package). Flag untuk melakukan compile dengan LibFLAME:

-lflame

---

AMD LibM

Menyediakan fungsi-fungsi matematika untuk prosesor x86-64 (seperti -lm di GCC). Compatible dengan compiler GCC dan Intel OneAPI. Untuk menggunakan AMD LibM, flag compiling wajib dilakukan dengan urutan berikut (tidak boleh terbalik):

-lamdlibm -lm

---

AMD FFTW

FFTW (Fastest Fourier Transform in the West) yang khusus dioptimalisasi untuk AMD.

---

Pranala Lebih Lanjut

Bacaan lebih lanjut untuk info mengenai AOCL yang lebih detail:

Intel MKL di AMD

User dapat menggunakan Intel MKL (Math Kernel Library) di sistem AMD melalui Intel oneAPI dengan modul:

$ module load oneapi

Ketike menggunakan Intel MKL untuk build framework, user harus menggunakan integer size 4 (32 bit). Sistem AMD di ALELEON Supercomputer tidak mendukung integer size 8 (64 bit).