Menggunakan ALELEON Supercomputer via Terminal: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→3 | Menjalankan Komputasi ke Compute Node via SLURM: memberi link subbab 4) |
WilsonLisan (bicara | kontrib) (overhaul bagian SSH) |
||
Baris 5: | Baris 5: | ||
$ command '''''<input-yang-ditulis-user>''''' | $ command '''''<input-yang-ditulis-user>''''' | ||
== '''1 | Login SSH''' == | == '''1 | Login SSH''' == | ||
Sebelum login, [[Koneksi VPN ALELEON Supercomputer|'''user harus terhubung ke jaringan VPN ALELEON Supercomputer''']] untuk dapat melakukan login ke ALELEON Supercomputer. SIlahkan gunakan software shell sesuai preferensi masing-masing user untuk login SSH. | Sebelum login, [[Koneksi VPN ALELEON Supercomputer|'''user harus terhubung ke jaringan VPN ALELEON Supercomputer''']] untuk dapat melakukan login ke ALELEON Supercomputer. | ||
* SIlahkan gunakan software shell sesuai preferensi masing-masing user untuk login SSH. | |||
=== Kredensial SSH Login Node Utama === | === Kredensial SSH Login Node Utama === | ||
User login ke Login Node utama dengan kredensial berikut: | User login ke Login Node utama dengan kredensial berikut: | ||
Baris 20: | Baris 23: | ||
|- | |- | ||
|'''Nomor port''' | |'''Nomor port''' | ||
|<code>22</code> | |<code>22</code> ''(default)'' | ||
|- | |- | ||
| colspan="2" |Contoh perintah login melalui terminal: | | colspan="2" |Contoh perintah login melalui terminal: | ||
Baris 27: | Baris 30: | ||
|- | |- | ||
| colspan="2" |'''Note khusus:''' | | colspan="2" |'''Note khusus:''' | ||
* Mempunyai GPU NVIDIA T400. | * Mempunyai GPU NVIDIA T400. | ||
** Dapat melakukan compiling dengan lib. NVIDIA CUDA 12 | ** Dapat melakukan compiling dengan lib. NVIDIA CUDA 12 | ||
|} | |} | ||
ALELEON Supercomputer mendukung '''SSH X11''' untuk menampilkan window GUI dengan panduan berikut: | |||
{| class="wikitable" | |||
!Dari OS | |||
!Metode | |||
|- | |||
|Windows | |||
|EFISON merekomendasikan software [https://mobaxterm.mobatek.net/download.html '''MobaXTerm Home Edition'''] | |||
|- | |||
|MacOS | |||
|<code>$ ssh -Y ''<username>''@''<hostname>''</code> | |||
|- | |||
|Linux | |||
|<code>$ ssh -X ''<username>''@''<hostname>''</code> | |||
|} | |||
=== Kredensial SSH Login Node Lainnya === | |||
* Apabila tidak dapat login ke Login Node Utama, gunakan Login Node Backup: | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
! colspan="2" |Kredensial Login Node Backup | |||
{| class="wikitable" | |- | ||
| | |||
|'''Username dan password''' | |'''Username dan password''' | ||
|''Diberikan oleh admin ALELEON'' | |''Diberikan oleh admin ALELEON'' | ||
Baris 46: | Baris 65: | ||
|- | |- | ||
|'''Nomor port''' | |'''Nomor port''' | ||
|<code>22</code> | |<code>22</code> ''(default)'' | ||
|- | |- | ||
| colspan="2" |'''Note khusus:''' | | colspan="2" |'''Note khusus:''' | ||
Baris 53: | Baris 72: | ||
|} | |} | ||
* Terdapat login node spesial denngan spesifikasi besar bagi user yang ingin melakukan compiling file skala besar: | |||
Terdapat login node spesial denngan spesifikasi besar bagi user yang ingin melakukan compiling file skala besar: | |||
{| class="wikitable" | {| class="wikitable mw-collapsible mw-collapsed" | ||
| | ! colspan="2" |Kredensial Login Node Besar | ||
|- | |||
|'''Username dan password''' | |'''Username dan password''' | ||
|''Diberikan oleh admin ALELEON'' | |''Diberikan oleh admin ALELEON'' | ||
Baris 67: | Baris 87: | ||
|- | |- | ||
|'''Nomor port''' | |'''Nomor port''' | ||
|<code>22</code> | |<code>22</code> ''(default)'' | ||
|- | |- | ||
| colspan="2" |'''Note khusus:''' | | colspan="2" |'''Note khusus:''' | ||
Baris 74: | Baris 94: | ||
** Dapat melakukan compiling dengan lib. NVIDIA CUDA 12 | ** Dapat melakukan compiling dengan lib. NVIDIA CUDA 12 | ||
|} | |} | ||
== '''2 | Selamat Datang di Login Node''' == | == '''2 | Selamat Datang di Login Node''' == | ||
[[Berkas:Login-node-compute-node-1.png|al=|nirbing|600x600px]] | [[Berkas:Login-node-compute-node-1.png|al=|nirbing|600x600px]] | ||
Baris 97: | Baris 100: | ||
* Pada Login Node, user dapat melakukan kegiatan manajemen data, download / upload, compiling, menyiapkan job komputasi, dan submit job komputasi (''job submission'') yang akan dijalankan oleh Compute Node. | * Pada Login Node, user dapat melakukan kegiatan manajemen data, download / upload, compiling, menyiapkan job komputasi, dan submit job komputasi (''job submission'') yang akan dijalankan oleh Compute Node. | ||
* Apabila user ingin mengakses software yang terinstal di ALELEON Supercomputer | * Apabila user ingin mengakses software yang terinstal di ALELEON Supercomputer (''untuk keperluan selain menjalankan komputasi''), gunakan [[Module Environment|'''Module Environment''']]. | ||
* Sementara itu '''Compute Node''' berperan untuk menjalankan job komputasi semua user yang disubmit melalui SLURM. Tutorial dijelaskan pada bagian 3. | * Sementara itu '''Compute Node''' berperan untuk menjalankan job komputasi semua user yang disubmit melalui SLURM. Tutorial dijelaskan pada bagian 3. | ||
{| class="wikitable" | {| class="wikitable" | ||
|''' | |'''''Keterangan:''''' | ||
* | * Dimohon untuk tidak menjalankan komputasi selain compiling di semua jenis Login Node karena mempunyai spesifikasi terbatas dan akan mengganggu user lainnya. | ||
* | * Admin EFISON berhak memberikan peringatan kepada user atau menghentikan program user yang memakan semua resources Login Node dalam waktu lama. | ||
|} | |} | ||
== '''3 | Menjalankan Komputasi ke Compute Node via SLURM''' == | == '''3 | Menjalankan Komputasi ke Compute Node via SLURM''' == | ||
[[Berkas:Slurmm.png|al=|600x600px]] | [[Berkas:Slurmm.png|al=|600x600px]] | ||
User menjalankan job komputasi melalui '''SLURM''', program manajemen untuk menjalankan komputasi user pada Compute Node sekaligus mengatur antrian job semua user | User menjalankan job komputasi melalui '''SLURM''', program manajemen (''scheduler'') untuk menjalankan komputasi user pada Compute Node sekaligus mengatur antrian job semua user. | ||
{| class="wikitable" | {| class="wikitable" | ||
|+Langkah menjalankan job komputasi dengan SLURM | |+Langkah menjalankan job komputasi dengan SLURM |
Revisi per 17 Oktober 2023 10.51
Halaman ini menjelaskan tutorial menggunakan ALELEON Supercomputer via terminal. Tutorial ini mengasumsikan user dapat mengoperasikan terminal Linux.
Persetujuan Prefix
Simbol $ menandakan perintah terminal, sedangkan tanda bracket <> menandakan parameter input yang ditulis oleh user:
$ command <input-yang-ditulis-user>
1 | Login SSH
Sebelum login, user harus terhubung ke jaringan VPN ALELEON Supercomputer untuk dapat melakukan login ke ALELEON Supercomputer.
- SIlahkan gunakan software shell sesuai preferensi masing-masing user untuk login SSH.
Kredensial SSH Login Node Utama
User login ke Login Node utama dengan kredensial berikut:
Username dan password | Diberikan oleh admin ALELEON |
Host untuk user Windows / MacOS | aleleon.hpc
|
Host untuk user Linux | 10.192.50.10
|
Nomor port | 22 (default)
|
Contoh perintah login melalui terminal:
| |
Note khusus:
|
ALELEON Supercomputer mendukung SSH X11 untuk menampilkan window GUI dengan panduan berikut:
Dari OS | Metode |
---|---|
Windows | EFISON merekomendasikan software MobaXTerm Home Edition |
MacOS | $ ssh -Y <username>@<hostname>
|
Linux | $ ssh -X <username>@<hostname>
|
Kredensial SSH Login Node Lainnya
- Apabila tidak dapat login ke Login Node Utama, gunakan Login Node Backup:
Kredensial Login Node Backup | |
---|---|
Username dan password | Diberikan oleh admin ALELEON |
Host untuk user Windows / MacOS | aleleon2.hpc
|
Host untuk user Linux | 10.192.50.12
|
Nomor port | 22 (default)
|
Note khusus:
|
- Terdapat login node spesial denngan spesifikasi besar bagi user yang ingin melakukan compiling file skala besar:
Kredensial Login Node Besar | |
---|---|
Username dan password | Diberikan oleh admin ALELEON |
Host untuk user Windows / MacOS | aleleon3.hpc
|
Host untuk user Linux | 10.192.50.13
|
Nomor port | 22 (default)
|
Note khusus:
|
2 | Selamat Datang di Login Node
Setelah login, user masuk ke Login Node untuk berinteraksi dengan ALELEON Supercomputer.
- Pada Login Node, user dapat melakukan kegiatan manajemen data, download / upload, compiling, menyiapkan job komputasi, dan submit job komputasi (job submission) yang akan dijalankan oleh Compute Node.
- Apabila user ingin mengakses software yang terinstal di ALELEON Supercomputer (untuk keperluan selain menjalankan komputasi), gunakan Module Environment.
- Sementara itu Compute Node berperan untuk menjalankan job komputasi semua user yang disubmit melalui SLURM. Tutorial dijelaskan pada bagian 3.
Keterangan:
|
3 | Menjalankan Komputasi ke Compute Node via SLURM
User menjalankan job komputasi melalui SLURM, program manajemen (scheduler) untuk menjalankan komputasi user pada Compute Node sekaligus mengatur antrian job semua user.
1 | Siapkan file yang dibutuhkan untuk menjalankan komputasi user.
|
2 |
SLURM Submit ScriptUser membuat SLURM Submit Script yaitu script bash yang berisikan alokasi kebutuhan komputasi (CPU, RAM, walltime, output, dll) dan alur jalannya program komputasi user.
$ vim <nama-SLURM-Job-script>.sh Contoh dengan nama "skripsi.sh": $ vim skripsi.sh Tutorial Membuat dan Aturan SLURM Submit Script di ALELEON SupercomputerHalaman berikut membahas cara membuat SLURM Submit Script beserta aturan untuk mengalokasikan kebutuhan komputasi di ALELEON Supercomputer: Contoh Template SLURM Submit ScriptHalaman berikut merangkum daftar software komputasi di ALELEON Supercomputer beserta info tutorial dan contoh template SLURM Submit Script-nya. |
3 |
Melakukan Job SubmissionSetelah menulis dan save script, jalankan job submission dengan perintah sbatch. $ sbatch <nama-SLURM-Job-script>.sh Contoh menjalankan script skripsi.sh diatas. Perhatikan bahwa user akan mendapatkan job ID. $ sbatch skripsi.sh Submitted batch job 231 |
4A | User dapat melihat status jalannya job dengan perintah squeue plus flag -ul $USER. Apabila tidak ada output artinya tidak ada job user yang berjalan / antri pada waktu itu.
$ squeue -ul $USER Apabila ingin melihat status semua job, jalankan perintah squeue -l. $ squeue -l Info squeue lebih lengkap lihat subbab Memonitor Jalannya Job dengan squeue. |
4B |
Membatalkan Job SubmissionApabila user ingin membatalkan job, gunakan perintah scancel berdasarkan job ID.
$ scancel <job-ID-submission-user> Contoh user membatalkan job submission milik user dengan ID 231. $ scancel 231 |
4 | Memonitor Jalannya Job dengan squeue
Sesuai panduan di atas, user dapat memantau status jalannya job submission dengan perintah squeue. Info esensial untuk user adalah STATE dan NODELIST(REASON).
- STATE (ST) -> memberikan kondisi jalannya program user.
- NODELIST(REASON)
- NODELIST memberikan nama Compute Node tempat program berjalan.
- REASON memberikan kode alasan saat program user belum / tidak berjalan (PENDING).
STATE | Kepanjangan | Penjelasan |
---|---|---|
R | RUN | Job berjalan |
PD | PENDING | Job tertahan, lihat keterangan NODELIST(REASON) |
CG | COMPLETING | Job selesai dan dalam proses clean-up SLURM |
CA | CANCELED | Job dibatalkan oleh user |
PR | PREEMPETED | Job dibatalkan oleh sys-admin Aleleon, alasan akan dikabarkan melalui email |
S | SUSPENDED | Job ditahan oleh sys-admin Aleleon |
NODELIST | Penjelasan |
---|---|
Resources
Priority |
Job menunggu tersedianya alokasi resources (CPU, RAM, GPU) yang dipesan oleh Submit script user |
AssocMaxWallDurationPerJobLimit | Job tidak dapat berjalan karena melewati batas walltime maksimum partisi.
|
QOSMaxCpuPerUserLimit | Job melewati batas alokasi QOS CPU user.
|
QOSMaxMemoryPerUserLimit | Job melewati batas alokasi QOS memori RAM user.
|
MaxCPUPerAccount | Job melewati batas alokasi QOS akumulasi CPU semua user di satu grup Akun Institusi.
|
MaxMemoryPerAccount | Job melewati batas alokasi QOS akumulasi memori RAM semua user di satu grup Akun Institusi.
|
User dapat lapor ke admin EFISON apabila menjumpai NODELIST yang tidak terdapat pada daftar diatas ketika job user tidak berjalan.
5 | Support dan Laporan Kendala Penggunaan
Apabila terdapat masalah teknis dalam menggunakan ALELEON Supercomputer, silahkan lapor dengan klik gambar berikut ini.