Komputasi Python dengan Conda Environment: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Interactive Job Jupyter: test) |
WilsonLisan (bicara | kontrib) (→Metode Menjalankan Komputasi: test) |
||
Baris 16: | Baris 16: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Membuat Conda Environment | !Membuat Conda Environment dan Instalasi Package Python | ||
|- | |- | ||
!1 | !1 | ||
Baris 46: | Baris 46: | ||
$ '''conda create --name ''[nama-conda-env]'' pip''' | $ '''conda create --name ''[nama-conda-env]'' pip''' | ||
''Contoh nama 'skripsi''' | ''Contoh dengan nama 'skripsi''' | ||
$ conda create --name '''skripsi''' pip | $ conda create --name '''skripsi''' pip | ||
|- | |- | ||
! | !3 | ||
|- | |- | ||
|Aktifkan conda env dengan perintah: | |Aktifkan conda env dengan perintah: | ||
$ '''source activate ''[nama-conda-env]''''' | $ '''source activate ''[nama-conda-env]''''' | ||
''Contoh | ''Contoh:'' | ||
$ source activate '''skripsi''' | $ source activate '''skripsi''' | ||
|- | |- | ||
! | !4 | ||
|- | |- | ||
|Lakukan instalasi package Python yang dibutuhkan dengan '''<code>pip</code>''' | |Lakukan instalasi package Python yang dibutuhkan dengan '''<code>pip</code>''' | ||
Baris 76: | Baris 63: | ||
* Contoh [https://www.tensorflow.org/install/pip instalasi TensorFlow dengan pip]. | * Contoh [https://www.tensorflow.org/install/pip instalasi TensorFlow dengan pip]. | ||
|- | |- | ||
! | !5 | ||
|- | |- | ||
|Untuk menonaktifkan conda env jalankan perintah: | |Untuk menonaktifkan conda env jalankan perintah: | ||
Baris 84: | Baris 71: | ||
!Manajemen Conda Environment | !Manajemen Conda Environment | ||
|- | |- | ||
| | !a | ||
|- | |||
|'''Mengaktifkan conda env yang telah dibuat:''' | |||
# Muat modul Anaconda yang dipakai untuk membuat conda env. | |||
# Lakukan source activate. | |||
|- | |||
!b | |||
|- | |- | ||
! | |'''Melihat daftar conda env yang telah dibuat:''' | ||
'''$ conda env list''' | |||
|- | |||
!c | |||
|- | |- | ||
| | |'''Mengubah nama conda env:''' | ||
$ '''conda rename -n ''[nama-saat-ini]'' ''[nama-baru]''''' | $ '''conda rename -n ''[nama-saat-ini]'' ''[nama-baru]''''' | ||
Baris 94: | Baris 90: | ||
$ conda rename -n skripsi tesis | $ conda rename -n skripsi tesis | ||
|- | |- | ||
! | !d | ||
|- | |- | ||
| | |'''Menghapus conda env:''' | ||
<code>$ '''conda remove -n ''<nama-conda-env>'' --all'''</code> | <code>$ '''conda remove -n ''<nama-conda-env>'' --all'''</code> | ||
|} | |} | ||
Baris 103: | Baris 99: | ||
User dapat memilih metode menjalankan komputasi sesuai keinginan: | User dapat memilih metode menjalankan komputasi sesuai keinginan: | ||
* Job submission di terminal | * '''Job submission di terminal via manajemen Slurm.''' | ||
* Job submission di web EFIRO | ** ''Berjalan di compute Node, hanya untuk file Python.'' | ||
* Interactive job Jupyter Lab / Notebook | * '''Job submission di web EFIRO via Job Composer''' | ||
** ''Berjalan di compute Node, hanya untuk file Python.'' | |||
* '''Interactive job Jupyter Lab / Notebook''' | |||
** ''Berjalan di interactive node.'' | |||
=== Job Submission Terminal === | === Job Submission Terminal === | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Job Submission Terminal | !Langkah Job Submission Terminal | ||
Baris 283: | Baris 276: | ||
|72:00:00 | |72:00:00 | ||
|} | |} | ||
User dapat mengajukan permintaan membuka limitasi melalui [https://efisonlt.com/pelaporan-kendala-aleleon-supercomputer/ '''form ini'''] | |||
|- | |- | ||
! | ! | ||
Baris 297: | Baris 289: | ||
|- | |- | ||
|CPU normal | |CPU normal | ||
|128 | |||
|240GB | |240GB | ||
| - | |||
| rowspan="3" |72:00:00 | | rowspan="3" |72:00:00 | ||
|- | |- | ||
|CPU high-mem* | |CPU high-mem* | ||
|128 | |||
|500GB | |500GB | ||
| - | |||
|- | |- | ||
|GPU | |GPU | ||
Baris 328: | Baris 322: | ||
Ketika ntasks lebih dari 128: | Ketika ntasks lebih dari 128: | ||
* | * Slurm otomatis menggunakan multi-node per kelipatan 128: | ||
** 1 - 128 = 1 node; 129 - 256 = 2 node, 257 - 384 = 3 node. | |||
* Mem mengalokasikan memori RAM per-node. | * Mem mengalokasikan memori RAM per-node. | ||
* Info detail buka laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | * Info detail buka laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. |
Revisi per 15 Mei 2024 04.22
Halaman ini menjelaskan menjalankan komputasi Python dengan environment Anaconda di ALELEON Supercomputer.
Langkah Menjalankan Komputasi
Terdapat dua langkah utama:
- Membuat dan menyiapkan conda environment untuk komputasi user.
- Memilih metode menjalankan komputasi.
Membuat Conda Environment
Kegiatan ini dilakukan pada terminal:
- Diakses melalui login SSH, atau
- Pada web EFIRO, buka menu Clusters -> Aleleon Shell Access
Membuat Conda Environment dan Instalasi Package Python | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||
Pilih dan aktifkan modul Anaconda yang akan digunakan.
| ||||||||||||
2 | ||||||||||||
Buat conda env di direktori HOME dan aktifkan dengan perintah:
$ conda create --name [nama-conda-env] pip Contoh dengan nama 'skripsi' $ conda create --name skripsi pip | ||||||||||||
3 | ||||||||||||
Aktifkan conda env dengan perintah:
$ source activate [nama-conda-env] Contoh: $ source activate skripsi | ||||||||||||
4 | ||||||||||||
Lakukan instalasi package Python yang dibutuhkan dengan pip
| ||||||||||||
5 | ||||||||||||
Untuk menonaktifkan conda env jalankan perintah:
|
Manajemen Conda Environment |
---|
a |
Mengaktifkan conda env yang telah dibuat:
|
b |
Melihat daftar conda env yang telah dibuat:
$ conda env list |
c |
Mengubah nama conda env:
$ conda rename -n [nama-saat-ini] [nama-baru] Contoh mengubah nama env skripsi ke tesis $ conda rename -n skripsi tesis |
d |
Menghapus conda env:
|
Metode Menjalankan Komputasi
User dapat memilih metode menjalankan komputasi sesuai keinginan:
- Job submission di terminal via manajemen Slurm.
- Berjalan di compute Node, hanya untuk file Python.
- Job submission di web EFIRO via Job Composer
- Berjalan di compute Node, hanya untuk file Python.
- Interactive job Jupyter Lab / Notebook
- Berjalan di interactive node.
Job Submission Terminal
Langkah Job Submission Terminal | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | |||||||||||||||||||||||||||||||||||||||||
Login SSH ke ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||||||||||||
Siapkan conda env dan file komputasi yang dibutuhkan.
| |||||||||||||||||||||||||||||||||||||||||
3 | |||||||||||||||||||||||||||||||||||||||||
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi.
| |||||||||||||||||||||||||||||||||||||||||
Contoh template Submit Script, ikuti petunjuk NOTES didalamnya.
Info script lebih detail lihat Submit Script ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||
4 | |||||||||||||||||||||||||||||||||||||||||
Jalankan job komputasi dengan perintah:
$ sbatch [nama-submit-script] Contoh: $ sbatch submit.sh | |||||||||||||||||||||||||||||||||||||||||
5 | |||||||||||||||||||||||||||||||||||||||||
User dapat melihat status jalannya job dengan perintah:
| |||||||||||||||||||||||||||||||||||||||||
Apabila user ingin menghentikan job yang berjalan, jalankan perintah:
$ scancel [job-ID] Job ID ada pada squeue diatas. contoh membatalkan job ID 231: $ scancel 231 |
Job Submission Web EFIRO
Ketentuan:
- Menjalankan file Python di web EFIRO Job Composer dengan scheduler SLURM.
- File ipynb harus dikonversi ke file Python.
- Berjalan di Compute Node.
Langkah Job Submission Web EFIRO | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||||||||||||||||
3 | ||||||||||||||||||||||||||||||||||||||||
Kemudian Isi | ||||||||||||||||||||||||||||||||||||||||
4 | ||||||||||||||||||||||||||||||||||||||||
Upload dan edit file untuk menjalankan komputasi pada Edit Files
| ||||||||||||||||||||||||||||||||||||||||
5 | ||||||||||||||||||||||||||||||||||||||||
Lengkapi Submit Script melalui tombol Open Editor .
| ||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||
6 | ||||||||||||||||||||||||||||||||||||||||
Jalankan job dengan klik tombol Submit .
| ||||||||||||||||||||||||||||||||||||||||
7 | ||||||||||||||||||||||||||||||||||||||||
Lihat output file komputasi pada kolom Folder Contents
|
Interactive Job Jupyter
Ketentuan:
- Menjalankan sesi interaktif Jupyter Lab atau Notebook.
- Berjalan di Interactive Node.
Langkah Interactive Job Sesi Jupyter | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||||||||||
3 | ||||||||||||||||||||||||||||||||||
Isi formulir untuk memulai sesi Jupyter dengan panduan berikut:
| ||||||||||||||||||||||||||||||||||
4 | ||||||||||||||||||||||||||||||||||
Klik tombol Launch untuk memulai sesi Jupyter.
| ||||||||||||||||||||||||||||||||||
5 | ||||||||||||||||||||||||||||||||||
Apabila status Running, klik tombol Connect to Jupyter .
Cancel .
| ||||||||||||||||||||||||||||||||||
6 | ||||||||||||||||||||||||||||||||||
Pilih Notebook Python 3 untuk memulai sesi notebook Python 3. | ||||||||||||||||||||||||||||||||||
7 | ||||||||||||||||||||||||||||||||||
User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
|