Komputasi Python dengan Conda Environment: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Sesi Jupyter: menambah klik expand) |
WilsonLisan (bicara | kontrib) (→Pilihan Menjalankan Komputasi: menambah info tambahan mengisi nama modul CUDA) |
||
Baris 448: | Baris 448: | ||
|- | |- | ||
|[[Berkas:GMB warning wololo.png|nirbing|50x50px]]'''Note:''' | |[[Berkas:GMB warning wololo.png|nirbing|50x50px]]'''Note:''' | ||
* Perhatikan apakah perlu memuat modul CUDA | * Perhatikan apakah perlu memuat modul CUDA? | ||
* Info detail lihat '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Package_Python_versi_GPU? Menjalankan Package Python Versi GPU?]]''' | * Info detail lihat '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Package_Python_versi_GPU? Menjalankan Package Python Versi GPU?]]''' | ||
** '''''Apabila butuh''''', isi nama modul CUDA sebagai berikut: | |||
... | |||
module load ${PM} | |||
'''''module load [Nama-modul-CUDA]''''' | |||
... | |||
|- | |- | ||
|<syntaxhighlight lang="bash" line="1"> | |<syntaxhighlight lang="bash" line="1"> | ||
Baris 643: | Baris 648: | ||
|- | |- | ||
|[[Berkas:GMB warning wololo.png|nirbing|50x50px]] '''Bagi yang memilih template GPU:''' | |[[Berkas:GMB warning wololo.png|nirbing|50x50px]] '''Bagi yang memilih template GPU:''' | ||
* Perhatikan apakah perlu memuat modul CUDA | * Perhatikan apakah perlu memuat modul CUDA? | ||
* Info detail lihat '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Package_Python_versi_GPU? Menjalankan Package Python Versi GPU?]].''' | * Info detail lihat '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Package_Python_versi_GPU? Menjalankan Package Python Versi GPU?]].''' | ||
** '''''Apabila butuh''''', isi nama modul CUDA sebagai berikut: | |||
... | |||
module load ${PM} | |||
'''''module load [Nama-modul-CUDA]''''' | |||
... | |||
|- | |- | ||
! | ! | ||
Baris 826: | Baris 836: | ||
|[[Berkas:GMB warning wololo.png|nirbing|50x50px]] Bagi user yang memilih '''partition tilla''': | |[[Berkas:GMB warning wololo.png|nirbing|50x50px]] Bagi user yang memilih '''partition tilla''': | ||
* Perhatikan apakah perlu memuat modul CUDA | * Perhatikan apakah perlu memuat modul CUDA? | ||
* Info detail lihat '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Package_Python_versi_GPU? Menjalankan Package Python Versi GPU?]].''' | * Info detail lihat '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Package_Python_versi_GPU? Menjalankan Package Python Versi GPU?]].''' | ||
** '''''Apabila butuh''''', isi form ini dengan nama modul CUDA. | |||
|- | |- | ||
! | ! |
Revisi per 30 April 2025 13.02
Halaman ini menjelaskan menjalankan komputasi / aplikasi Python dengan conda environment di ALELEON Supercomputer.
Laman ini merupakan bagian laman -> Komputasi Python |
---|
Langkah Menjalankan Komputasi
Terdapat tiga langkah utama:
- Buat conda environment untuk menampung instalasi package.
- Instal package Python yang diperlukan di conda env tersebut.
- Menggunakan conda env tersebut untuk menjalankan komputasi.
Spesifikasi
Tutorial ini memandu membuat conda environment dengan site-packages terisolasi di dalamnya.
Keterangan simbol perintah terminal |
---|
$ -> perintah ketika conda env tidak aktif
|
(env)$ -> perintah ketika conda env aktif
|
Membuat Conda Environment
ALELEON Supercomputer menyediakan pilihan Python Package Manager (PPM) berikut untuk membuat conda environment. Pilih sesuai preferensi user:
- Anaconda: PPM Python paling banyak digunakan dimana saat ini menjadi standar industri.
- Mamba: PPM Python alternatif Anaconda versi open-source yang dikembangkan komunitas.
(klik expand / kembangkan)
- Membuat conda env dengan Anaconda - | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | ||||||||||||||||||
Menggunakan terminal!
| ||||||||||||||||||
1 | ||||||||||||||||||
Pilih dan aktifkan modul Anaconda untuk membuat conda env:
$ module load [nama-modul-anaconda]
| ||||||||||||||||||
2 | ||||||||||||||||||
![]()
Update 29 April 2025
| ||||||||||||||||||
3 | ||||||||||||||||||
Buat conda env dengan opsi: | ||||||||||||||||||
3A - Conda env kosong dengan Python 3 versi terbaru (3.13):
$ conda create -n [nama-conda-env] pip Contoh dengan nama 'skripsi' $ conda create -n skripsi pip | ||||||||||||||||||
3B - Conda env kosong dengan Python versi tertentu:
$ conda create -n [nama-conda-env] python=[versi] Contoh dengan Python 3.10 $ conda create -n skripsi python=3.10 | ||||||||||||||||||
Saran | ||||||||||||||||||
Pilih nama conda env yang mengandung unsur nama modul:
| ||||||||||||||||||
--- |
- Membuat conda env dengan Mamba - | ||||||||
---|---|---|---|---|---|---|---|---|
0 | ||||||||
Menggunakan terminal!
| ||||||||
1 | ||||||||
Pilih dan aktifkan modul Mamba untuk membuat conda env:
$ module load [nama-modul-mamba]
| ||||||||
2 | ||||||||
![]()
Update 29 April 2025
| ||||||||
3 | ||||||||
Buat conda env dengan opsi: | ||||||||
3A - Conda env kosong dengan Python 3 versi terbaru (3.13):
$ mamba create -n [nama-conda-env] pip Contoh dengan nama 'skripsi' $ mamba create -n skripsi pip | ||||||||
3B - Conda env kosong dengan Python versi tertentu:
$ mamba create -n [nama-conda-env] python=[versi] Contoh dengan Python 3.10 $ mamba create -n skripsi python=3.10 | ||||||||
Saran | ||||||||
Pilih nama conda env yang mengandung unsur nama modul:
| ||||||||
--- |
Mengaktifkan Conda Env dan Instalasi Package
Ada baiknya user melengkapi instalasi package sebelum menjalankan komputasi karena:
- Batch job -> supaya script Python berjalan tanpa error missing package.
- Sesi Jupyter -> untuk efisiensi penggunaan karena terkadang ada package yang membutuhkan waktu lama untuk instalasi.
Instalasi ini berjalan di login node sehingga tidak mengkonsumsi Core Hour.
Mengaktifkan Conda Environment |
---|
0 |
Menggunakan terminal!
|
1 |
Muat modul PPM yang digunakan untuk membuat conda env
$ module load [Anaconda-atau-Mamba ....] Apabila lupa dengan nama conda env, cari dengan:
|
2 |
Aktifkan conda env dengan perintah source:
$ source activate [nama-conda-env] |
3 |
Pilih panduan instalasi package yang dibutuhkan |
Lihat laman wiki [Daftar Instalasi Package Python].
|
4 |
Apabila hendak menonaktfkan conda env:
(env)$ conda deactivate |
Pilihan Menjalankan Komputasi
Berikut opsi menjalankan komputasi Python dengan conda env, pilih sesuai kebutuhan:
- [Batch job] -> menjalankan script Python siap jalan yang tidak membutuhkan interaksi user melalui manajemen Slurm di [compute node].
- [Sesi Jupyter] -> menjalankan sesi interaktif Jupyter Lab atau Notebook di [interactive node].
---
Menjalankan Package Python versi GPU?
Perhatikan hal berikut apabila user menginstal package Python versi CUDA dan hendak menggunakan compute / interactive node GPU:
- Package membutuhkan jenis dan versi library NVIDIA sesuai seperti CUDA, cuDNN untuk dapat berjalan di GPU NVIDIA.
- Umumnya (walau tidak semua) package Python CUDA saat ini juga menginstal package NVIDIA yang dibutuhkan.
- Berikut metode mengecek dan melengkapi library NVIDIA yang dibutuhkan package:
---
Batch Job
menjalankan script Python siap jalan yang tidak membutuhkan interaksi user melalui manajemen Slurm di [compute node].
Perhatikan file
.ipynb
harus dikonversi ke file.py
.- Tersedia dua pilihan tampilan yaitu terminal dan web EFIRO. Pilih sesuai keinginan.
(klik expand / kembangkan)
- Langkah Batch Job di Terminal - | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Menggunakan terminal!
| ||||||||||||||
1 | ||||||||||||||
Lakukan persiapan sebelum batch job: | ||||||||||||||
Pastikan package lengkap pada conda env yang akan digunakan.
| ||||||||||||||
Apabila butuh upload file untuk job:
| ||||||||||||||
2A | ||||||||||||||
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi.
| ||||||||||||||
Contoh template Submit Script
| ||||||||||||||
| ||||||||||||||
| ||||||||||||||
2B | ||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah: $ slimit-python | ||||||||||||||
3 | ||||||||||||||
Jalankan job komputasi dengan perintah:
$ sbatch [nama-submit-script] Contoh: $ sbatch submit.sh | ||||||||||||||
4 | ||||||||||||||
User dapat melihat status jalannya job dengan perintah:
$ squeue -ul $USER
| ||||||||||||||
5 | ||||||||||||||
User dapat memantau file output dengan perintah Unix seperti:
| ||||||||||||||
6 | ||||||||||||||
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 | ||||||||||||||
--- |
- Langkah Batch Job di web EFIRO - | ||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||
[Login ke web EFIRO] ALELEON Supercomputer. | ||||||||||||||
2 | ||||||||||||||
Lakukan persiapan sebelum batch job: | ||||||||||||||
Pastikan package lengkap pada conda env yang akan digunakan.
| ||||||||||||||
Upload file komputasi lihat langkah 5. | ||||||||||||||
3 | ||||||||||||||
![]() Job Composer di homepage EFIRO.
Pilih menu | ||||||||||||||
4 | ||||||||||||||
Job Name dan klik Create New Job
| ||||||||||||||
5 | ||||||||||||||
Siapkan file komputasi yang dibutuhkan:
| ||||||||||||||
6A | ||||||||||||||
Lengkapi Submit Script melalui tombol Open Editor
| ||||||||||||||
![]()
... module load ${PM} module load [Nama-modul-CUDA] ... | ||||||||||||||
| ||||||||||||||
6B | ||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah ini via menu $ slimit-python | ||||||||||||||
7 | ||||||||||||||
Jalankan job dengan klik tombol Submit .
| ||||||||||||||
8 | ||||||||||||||
Lihat output file komputasi pada kolom Folder Contents
| ||||||||||||||
9 | ||||||||||||||
Apabila user ingin menghentikan job yang berjalan, klik Stop .
| ||||||||||||||
10 | ||||||||||||||
Untuk menghapus ruang job dan datanya:
| ||||||||||||||
--- |
Sesi Jupyter
Menjalankan sesi interaktif Jupyter Lab atau Notebook di [interactive node].
(klik expand / kembangkan)
- Langkah Sesi Jupyter - | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | |||||||||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||||||||||||
Lakukan persiapan sebelum sesi Jupyter: | |||||||||||||||||||||||||||||||||||||||||
User PPM Mamba harus instal package Jupyter:
(env)$ pip install jupyter jupyterlab | |||||||||||||||||||||||||||||||||||||||||
Untuk efisiensi sesi terkait batasan waktu dan konsumsi Core Hour:
| |||||||||||||||||||||||||||||||||||||||||
3 | |||||||||||||||||||||||||||||||||||||||||
| |||||||||||||||||||||||||||||||||||||||||
4 | |||||||||||||||||||||||||||||||||||||||||
Isi formulir untuk memulai sesi Jupyter dengan panduan berikut:
| |||||||||||||||||||||||||||||||||||||||||
5 | |||||||||||||||||||||||||||||||||||||||||
Klik tombol Launch untuk memulai sesi Jupyter.
| |||||||||||||||||||||||||||||||||||||||||
6 | |||||||||||||||||||||||||||||||||||||||||
Apabila status Running, klik tombol Connect to Jupyter .
| |||||||||||||||||||||||||||||||||||||||||
7 | |||||||||||||||||||||||||||||||||||||||||
Pilih Notebook Python 3 untuk memulai sesi notebook Python 3. | |||||||||||||||||||||||||||||||||||||||||
8 | |||||||||||||||||||||||||||||||||||||||||
User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
| |||||||||||||||||||||||||||||||||||||||||
--- |
Pelaporan Kendala dan Support
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini.
Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email:
support@efisonlt.com