2 poin oleh GN⁺ 2 jam lalu | Belum ada komentar. | Bagikan ke WhatsApp
  • MareNostrum V milik Polytechnic University of Catalonia di Barcelona adalah salah satu dari 15 superkomputer teratas di dunia, sebuah infrastruktur riset publik senilai €200 juta yang menjalankan komputasi terdistribusi di 8.000 node
  • Ini bukan satu komputer berperforma tinggi tunggal, melainkan sistem terdistribusi yang menghubungkan ribuan komputer independen dengan topologi fat-tree InfiniBand NDR200, sehingga node mana pun dapat berkomunikasi dengan latensi minimum yang sama
  • Pengajuan pekerjaan dilakukan melalui SLURM workload manager, dengan pekerjaan diantrikan ke scheduler menggunakan skrip batch yang mencantumkan permintaan resource, batas waktu, dan anggaran proyek
  • Karena dioperasikan dalam lingkungan air-gapped yang memblokir akses internet eksternal, library dan dataset yang dibutuhkan harus disiapkan terlebih dahulu, dan kadang pengambilan hasil justru menjadi bottleneck dibanding komputasinya
  • Sebagai resource publik yang disediakan gratis bagi peneliti, akses tersedia bagi institusi Spanyol melalui RES, dan di seluruh Eropa melalui panggilan rutin dari EuroHPC Joint Undertaking

Arsitektur: jaringan adalah komputernya

  • Kesalahpahaman terbesar tentang HPC adalah anggapan bahwa ini berarti menyewa satu komputer superkuat, padahal kenyataannya ini adalah struktur untuk mengirim pekerjaan secara terdistribusi ke ribuan komputer independen
  • Untuk mencegah masalah GPU menganggur karena menunggu transfer data dalam komputasi terdistribusi, MareNostrum V membangun fabric InfiniBand NDR200 dengan topologi fat-tree
    • Pada jaringan biasa, bottleneck bandwidth muncul ketika beberapa komputer berbagi switch yang sama
    • Topologi fat-tree meningkatkan bandwidth link semakin ke atas hierarki jaringan untuk menjamin bandwidth non-blocking
    • Dari 8.000 node, node mana pun dapat berkomunikasi dengan latensi minimum yang sama

Konfigurasi partisi komputasi

  • General Purpose Partition (GPP): dirancang untuk pekerjaan CPU yang sangat paralel, dengan 6.408 node yang masing-masing dilengkapi 112 core Intel Sapphire Rapids, total performa puncak 45,9 PFlops
  • Accelerated Partition (ACC): dirancang untuk kebutuhan khusus seperti pelatihan AI dan dinamika molekuler, dengan 1.120 node yang masing-masing dilengkapi 4 GPU NVIDIA H100 SXM, performa puncak 260 PFlops
    • Jika harga ritel satu H100 sekitar US$25.000, biaya GPU saja melebihi US$110 juta
  • Login Nodes: titik masuk pertama saat terhubung via SSH, khusus untuk pekerjaan ringan seperti memindahkan file, mengompilasi kode, dan mengirim skrip pekerjaan, bukan untuk komputasi

Infrastruktur kuantum

  • MareNostrum 5 mengintegrasikan komputer kuantum pertama di Spanyol secara fisik dan logis
    • Termasuk sistem kuantum berbasis gerbang digital dan quantum annealer berbasis qubit superkonduktor MareNostrum-Ona
  • Quantum Processing Unit (QPU) tidak menggantikan superkomputer klasik, melainkan berperan sebagai akselerator khusus
  • Masalah optimisasi atau simulasi kimia kuantum yang sulit ditangani bahkan dengan GPU H100 dapat di-offload ke hardware kuantum untuk mewujudkan pusat kekuatan komputasi hibrida klasik-kuantum skala besar

Air gap, kuota, dan realitas operasional HPC

  • Air gap: dapat diakses dari luar melalui SSH, tetapi compute node tidak memiliki akses internet eksternal
    • pip install, wget, atau menghubungkan ke repositori HuggingFace eksternal tidak dimungkinkan
    • Semua yang dibutuhkan skrip harus diunduh dan dikompilasi terlebih dahulu lalu disiapkan di direktori penyimpanan
    • Administrator menyediakan sebagian besar library dan software melalui sistem module
  • Perpindahan data: input dan output data dilakukan melalui login node menggunakan scp atau rsync
    • Karena komputasi aktual bisa sangat cepat, proses mengekstrak hasil yang sudah selesai ke mesin lokal kadang menjadi bottleneck
  • Batasan dan kuota: setiap proyek mendapat alokasi anggaran waktu CPU tertentu, dan ada hard limit atas jumlah pekerjaan yang bisa dijalankan atau menunggu secara bersamaan oleh satu pengguna
    • Semua pekerjaan wajib menetapkan batas wall-time yang ketat
    • Jika waktu yang diminta terlewati bahkan 1 detik saja, scheduler akan langsung menghentikan proses
  • Logging: setelah pekerjaan dikirim, tidak ada output terminal live; semua stdout dan stderr otomatis diarahkan ke file log (misalnya sim_12345.out, sim_12345.err)
    • Setelah pekerjaan selesai atau crash, hasil diperiksa dan debugging dilakukan dengan meninjau file teks tersebut
    • Status pekerjaan yang sudah dikirim dapat dipantau dengan squeue atau tail -f

SLURM workload manager

  • Setelah alokasi riset disetujui dan login lewat SSH, yang muncul hanyalah prompt terminal Linux yang sepenuhnya biasa
  • Karena ribuan peneliti menggunakannya secara bersamaan, menjalankan skrip berat langsung dari terminal dapat menjatuhkan login node dan memicu email peringatan dari administrator sistem
  • SLURM (Simple Linux Utility for Resource Management) adalah software penjadwalan pekerjaan open source; jika hardware yang dibutuhkan, lingkungan software, dan kode eksekusi dituliskan dalam skrip bash, pekerjaan akan dimasukkan ke antrean, dijalankan saat hardware tersedia, lalu node dilepas kembali
  • Direktif #SBATCH utama:
    • --nodes: jumlah mesin fisik yang dibutuhkan
    • --ntasks: jumlah total proses MPI (task) yang akan dibuat, dan SLURM akan menangani distribusinya antar-node
    • --time: batas waktu wall-clock yang ketat; jika terlampaui proses akan langsung dihentikan
    • --account: ID proyek yang akan dibebani waktu CPU
    • --qos: Quality of Service atau antrean tertentu yang ditentukan (misalnya antrean debug memberi akses cepat tetapi membatasi runtime singkat)

Contoh praktik: orkestrasi sweep OpenFOAM

  • Untuk memprediksi downforce aerodinamis dengan model surrogate ML, diperlukan 50 simulasi CFD (computational fluid dynamics) presisi tinggi untuk 50 mesh 3D yang berbeda
  • Contoh skrip pekerjaan SLURM untuk satu kasus CFD OpenFOAM di general purpose partition:
    • Resource ditentukan dengan nilai seperti --nodes=1, --ntasks=6, --time=00:30:00
    • Lingkungan dimuat dengan module load OpenFOAM/11-foss-2023a
    • srun --mpi=pmix digunakan untuk menjalankan surfaceFeatureExtract, blockMesh, decomposePar, snappyHexMesh, potentialFoam, simpleFoam, reconstructPar secara berurutan
  • Alih-alih mengirim 50 pekerjaan secara manual, digunakan dependency SLURM untuk merantai setiap pekerjaan setelah pekerjaan sebelumnya
    • Dengan sbatch --dependency=afterany:$PREV_JOB_ID, 50 pekerjaan bisa didaftarkan ke antrean dalam hitungan detik
    • Pada pagi berikutnya, 50 evaluasi aerodinamika sudah selesai diproses dan dicatat log-nya, siap diubah menjadi tensor untuk pelatihan ML

Batas paralelisasi: hukum Amdahl

  • Alasan hanya meminta 6 task untuk simulasi CFD meskipun ada 112 core per node adalah karena hukum Amdahl
  • Setiap program memiliki bagian serial (serial fraction) yang tidak bisa diparalelkan, dan percepatan teoretis dibatasi ketat oleh proporsi serial ini
    • Rumus: S = 1 / ((1−p) + p/N), dengan S sebagai percepatan total, p sebagai proporsi yang dapat diparalelkan, dan N sebagai jumlah core prosesor
    • Bahkan jika hanya 5% kode yang serial, memakai seluruh core MareNostrum V tetap hanya memberi percepatan teoretis maksimum 20x
  • Jika task dibagi ke terlalu banyak core, overhead komunikasi melalui jaringan InfiniBand akan meningkat
    • Jika mengirim kondisi batas antar-core menghabiskan lebih banyak waktu daripada komputasi aktual, menambah hardware justru dapat memperlambat kinerja
  • Saat mensimulasikan sistem kecil (N=100), runtime justru meningkat setelah 16 thread; hardware baru benar-benar produktif pada skala besar (N=10k+)
  • Menulis kode untuk superkomputer pada dasarnya adalah latihan mengelola rasio komputasi terhadap komunikasi

Cara mengakses

  • Terlepas dari biaya hardwarenya, akses ke MareNostrum V gratis bagi peneliti, karena waktu komputasi diperlakukan sebagai resource ilmiah yang didanai publik
  • Peneliti yang berafiliasi dengan institusi di Spanyol dapat mengajukan akses melalui Spanish Supercomputing Network (RES)
  • Peneliti di seluruh Eropa dapat mengajukan akses melalui panggilan berkala dari EuroHPC Joint Undertaking
    • Jalur "Development Access" dirancang untuk porting kode atau proyek benchmarking model ML, sehingga lebih mudah diakses oleh data scientist

Belum ada komentar.

Belum ada komentar.