Komputasi Python dengan Conda Environment: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (insert doodle images dan menghapus GMX) |
WilsonLisan (bicara | kontrib) (revisi info lib CUDA conda env dengan grep cuda) |
||
Baris 40: | Baris 40: | ||
''<small><code>(klik expand / kembangkan)</code></small>'' | ''<small><code>(klik expand / kembangkan)</code></small>'' | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Membuat conda env secara umum dengan Anaconda | !<nowiki>| Membuat conda env secara umum dengan Anaconda |</nowiki> | ||
[[Berkas:Anaconda transparent logo.png|nirbing|90x90px]] | [[Berkas:Anaconda transparent logo.png|nirbing|90x90px]] | ||
|- | |- | ||
Baris 115: | Baris 115: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Membuat conda env secara umum dengan Mamba | !<nowiki>| Membuat conda env secara umum dengan Mamba |</nowiki> | ||
[[Berkas:Mamba transparent logo.png|nirbing|90x90px]] | [[Berkas:Mamba transparent logo.png|nirbing|90x90px]] | ||
|- | |- | ||
Baris 197: | Baris 197: | ||
''<small><code>(klik expand / kembangkan)</code></small>'' | ''<small><code>(klik expand / kembangkan)</code></small>'' | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! colspan="2" |Instalasi Package Secara Umum dengan pip / conda | ! colspan="2" |<nowiki>| Instalasi Package Secara Umum dengan pip / conda |</nowiki> | ||
[[Berkas:GMB Pip Conda icon.png|nirbing|120x120px]] | [[Berkas:GMB Pip Conda icon.png|nirbing|120x120px]] | ||
|- | |- | ||
Baris 222: | Baris 222: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! colspan="2" |Instalasi Package TensorFlow | ! colspan="2" |<nowiki>| Instalasi Package TensorFlow |</nowiki> | ||
[[Berkas:Logo TF GMB pip.png|nirbing|140x140px]] | [[Berkas:Logo TF GMB pip.png|nirbing|140x140px]] | ||
|- | |- | ||
| colspan="2" |Tersedia dua versi TensorFlow, pilih sesuai kebutuhan: | | colspan="2" |Tersedia dua versi TensorFlow, pilih sesuai kebutuhan: | ||
* Versi CPU - berjalan di CPU. | * Versi CPU - berjalan di CPU. [[Berkas:GMB CPU icon.png|nirbing|60x60px]] | ||
*Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA. | *Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA. [[Berkas:GMB GPU icon.png|nirbing|80x80px]] | ||
|- | |- | ||
!Versi | !Versi | ||
Baris 242: | Baris 242: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! colspan="2" |Instalasi Package PyTorch | ! colspan="2" |<nowiki>| Instalasi Package PyTorch |</nowiki> | ||
[[Berkas:Logo PyTorch GMB pip.png|nirbing|150x150px]] | [[Berkas:Logo PyTorch GMB pip.png|nirbing|150x150px]] | ||
|- | |- | ||
| colspan="2" |Tersedia dua versi PyTorch, pilih sesuai kebutuhan: | | colspan="2" |Tersedia dua versi PyTorch, pilih sesuai kebutuhan: | ||
*Versi CPU - berjalan di CPU. | *Versi CPU - berjalan di CPU. [[Berkas:GMB CPU icon.png|nirbing|60x60px]] | ||
*Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA. | *Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA. [[Berkas:GMB GPU icon.png|nirbing|80x80px]] | ||
|- | |- | ||
!Versi | !Versi | ||
Baris 268: | Baris 268: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Instalasi Package Jupyter untuk user Mamba | !<nowiki>| Instalasi Package Jupyter untuk user Mamba |</nowiki> | ||
[[Berkas:Logo Mamba Jupyter tp.png|nirbing|150x150px]] | [[Berkas:Logo Mamba Jupyter tp.png|nirbing|150x150px]] | ||
|- | |- | ||
Baris 280: | Baris 280: | ||
== '''Menjalankan Conda Env dengan GPU?''' == | == '''Menjalankan Conda Env dengan GPU?''' == | ||
ALELEON Supercomputer menggunakan '''GPU''' '''NVIDIA''' sehingga untuk menjalankan conda env di GPU membutuhkan: | |||
# Instalasi package Python versi CUDA. Lihat subbab diatas. | |||
# Library NVIDIA CUDA dan pendukungnya sesuai kebutuhan package. | |||
=== | === Apakah Conda Env Mempunyai Library CUDA? === | ||
Biasanya instalasi package Python versi CUDA termasuk instalasi library CUDA yang diperlukan. Setelah instalasi package, user dapat mengecek ketersediaan library CUDA di conda env dengan: | |||
- Apabila instal package dengan pip | |||
'''<small>(env-user)</small>$ pip list | grep cuda''' | |||
- Apabila instal package dengan conda | |||
'''<small>(env-user)</small>$ conda list | grep cuda''' | |||
Apabila ada output, berarti conda env siap menjalankan package GPU dan user dapat menggunakan partisi GPU (lihat subbab Pilihan Menjalankan Komputasi) '''tanpa perlu''' memuat modul CUDA. | |||
=== Conda Env Tidak Mempunyai Library CUDA === | |||
Apabila tidak ada output maka user '''harus memuat modul CUDA''' sebelum menjalankan komputasi dengan ketentuan: | |||
# Perhatikan versi CUDA yang dibutuhkan. Lihat dokumentasi package tersebut. | |||
# Tutorial memuat dan daftar modul sofware lihat: | |||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
Baris 363: | Baris 361: | ||
''<small><code>(klik expand / kembangkan)</code></small>'' | ''<small><code>(klik expand / kembangkan)</code></small>'' | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Job Submission Slurm di Terminal | !<nowiki>| Langkah Job Submission Slurm di Terminal |</nowiki> | ||
[[Berkas:Sbatch terminal display rev2.png|tepi|400x400px]] | [[Berkas:Sbatch terminal display rev2.png|tepi|400x400px]] | ||
|- | |- | ||
Baris 386: | Baris 384: | ||
''<small><code>Klik expand / kembangkan</code></small>'' | ''<small><code>Klik expand / kembangkan</code></small>'' | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Template submit script Conda Environment versi CPU | !<nowiki>| Template submit script Conda Environment versi CPU |</nowiki> | ||
[[Berkas:GMB CPU icon.png|nirbing|80x80px]] | [[Berkas:GMB CPU icon.png|nirbing|80x80px]] | ||
|- | |- | ||
Baris 450: | Baris 448: | ||
| | | | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Template submit script conda environment versi GPU | !<nowiki>| Template submit script conda environment versi GPU |</nowiki> | ||
[[Berkas:GMB GPU icon.png|nirbing|100x100px]] | [[Berkas:GMB GPU icon.png|nirbing|100x100px]] | ||
|- | |- | ||
|'''Note:''' | |'''Note:''' | ||
* | * Apakah perlu memuat modul CUDA lihat subbab '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan GPU]]'''. | ||
|- | |- | ||
|<syntaxhighlight lang="bash" line="1"> | |<syntaxhighlight lang="bash" line="1"> | ||
Baris 627: | Baris 625: | ||
**Ikuti petunjuk '''NOTES dan alur script''' didalamnya. | **Ikuti petunjuk '''NOTES dan alur script''' didalamnya. | ||
*Klik '''<code>Save</code>''' setiap kali mengubah script. | *Klik '''<code>Save</code>''' setiap kali mengubah script. | ||
Bagi | [[Berkas:Jceditor3.png|al=|nirbing|400x400px]] | ||
|- | |||
|'''Bagi yang memilih template GPU, apakah perlu memuat modul CUDA?''' | |||
* Lihat subbab '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan GPU]]'''. | * Lihat subbab '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan GPU]]'''. | ||
|- | |- | ||
| | | | ||
Baris 694: | Baris 691: | ||
Menjalankan sesi interaktif Jupyter Lab atau Notebook di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Interactive%20Node|interactive node]]].''' | Menjalankan sesi interaktif Jupyter Lab atau Notebook di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Interactive%20Node|interactive node]]].''' | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Sesi Jupyter | !<nowiki>| Langkah Sesi Jupyter |</nowiki> | ||
[[Berkas:Efiro jupyter display.png|400x400px]] | [[Berkas:Efiro jupyter display.png|400x400px]] | ||
|- | |- | ||
Baris 796: | Baris 793: | ||
* Lihat subbab '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan GPU]]'''. | * Lihat subbab '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Menjalankan_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan GPU]]'''. | ||
* Kosongkan apabila conda env mempunyai library CUDA. | |||
|- | |- | ||
! | ! |
Revisi per 21 Maret 2025 08.11
Halaman ini menjelaskan menjalankan komputasi Python dengan conda environment di ALELEON Supercomputer.
Laman ini merupakan bagian laman -> Komputasi Python |
---|
Langkah Menjalankan Komputasi
Terdapat dua langkah utama:
- Membuat conda environment dan instal package yang diperlukan di dalamnya.
- Menjalankan komputasi dengan conda env tersebut.
Membangun Conda Environment
ALELEON Supercomputer menyediakan pilihan package manager Python untuk membuat conda environment. Pilih sesuai preferensi user:
![]() |
![]() |
---|---|
|
|
Membuat dan Manajemen Conda Environment
Menggunakan terminal!
| ||||||||||||||||||||||||||||||||||||||||||||||||
1 | ||||||||||||||||||||||||||||||||||||||||||||||||
Pilih skenario berikut yang sesuai dengan kebutuhan user:
|
Instalasi Package di Conda Environment
Note:
- Ada baiknya user melengkapi instalasi package sebelum menjalankan komputasi:
- Batch job -> supaya script Python berjalan tanpa error missing package.
- Sesi Jupyter -> untuk efisiensi penggunaan sesi karena terkadang package besar membutuhkan waktu lama untuk instalasi.
- Instalasi ini berjalan di login node sehingga tidak mengkonsumsi Core Hour.
Menggunakan terminal!
| |||||||||||||||||||||||||||||||||||||||||||||
1 | |||||||||||||||||||||||||||||||||||||||||||||
Aktifkan conda env yang akan dipakai untuk instalasi package ini. | |||||||||||||||||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||||||||||||||||
Pilih tutorial instalasi sesuai kebutuhan:
|
Menjalankan Conda Env dengan GPU?
ALELEON Supercomputer menggunakan GPU NVIDIA sehingga untuk menjalankan conda env di GPU membutuhkan:
- Instalasi package Python versi CUDA. Lihat subbab diatas.
- Library NVIDIA CUDA dan pendukungnya sesuai kebutuhan package.
Apakah Conda Env Mempunyai Library CUDA?
Biasanya instalasi package Python versi CUDA termasuk instalasi library CUDA yang diperlukan. Setelah instalasi package, user dapat mengecek ketersediaan library CUDA di conda env dengan:
- Apabila instal package dengan pip (env-user)$ pip list | grep cuda - Apabila instal package dengan conda (env-user)$ conda list | grep cuda
Apabila ada output, berarti conda env siap menjalankan package GPU dan user dapat menggunakan partisi GPU (lihat subbab Pilihan Menjalankan Komputasi) tanpa perlu memuat modul CUDA.
Conda Env Tidak Mempunyai Library CUDA
Apabila tidak ada output maka user harus memuat modul CUDA sebelum menjalankan komputasi dengan ketentuan:
- Perhatikan versi CUDA yang dibutuhkan. Lihat dokumentasi package tersebut.
- Tutorial memuat dan daftar modul sofware lihat:
Daftar modul software CUDA ALELEON - | |
---|---|
Bagi yang menjalankan conda env dengan batch job:
... # Memuat modul module load ${PM} module load [nama-modul-CUDA] ... | |
Bagi yang menjalankan conda env dengan sesi Jupyter:
| |
Versi CUDA | Nama modul CUDA |
11.2 | cuda/11.2-cuDNN8.1.1
|
11.6 | cuda/11.6-cuDNN8.3.3
|
11.8 | cuda/11.8-cuDNN8.6.0
|
12.0 | cuda/12.0-cuDNN8.7.0
|
12.1 | cuda/12.1-cuDNN8.8.1
|
12.3 | cuda/12.3-cuDNN8.9.6
|
12.4 | cuda/12.4-cuDNN9.2.1
|
12.5 | cuda/12.5-cuDNN9.2.1
|
Permintaan instalasi CUDA versi lain:
| |
--- |
Pilihan Menjalankan Komputasi
User dapat menjalankan komputasi dengan conda env melalui pilihan berikut, pilih sesuai kebutuhan:
Batch Job
Menjalankan script Python siap jalan tanpa interaksi user melalui manajemen Slurm di [compute node].
- Perhatikan untuk file
.ipynb
harus dikonversi ke file.py
. - Tersedia dua pilihan tampilan yaitu terminal dan web EFIRO. Pilih sesuai keinginan.
(klik expand / kembangkan)
| Langkah Job Submission Slurm di Terminal | | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Menggunakan terminal!
| ||||||||||||||||
1 | ||||||||||||||||
Siapkan conda env dan file komputasi yang dibutuhkan.
| ||||||||||||||||
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:
| ||||||||||||||||
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 Job Submission Slurm di web EFIRO - | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
![]() Pilih menu | ||||||||||||||||
3 | ||||||||||||||||
Job Name dan klik Create New Job
| ||||||||||||||||
4 | ||||||||||||||||
Siapkan file komputasi dan conda env yang dibutuhkan:
| ||||||||||||||||
5A | ||||||||||||||||
Lengkapi Submit Script melalui tombol Open Editor:
| ||||||||||||||||
Bagi yang memilih template GPU, apakah perlu memuat modul CUDA?
| ||||||||||||||||
| ||||||||||||||||
5B | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah ini via menu $ slimit-python | ||||||||||||||||
6 | ||||||||||||||||
Jalankan job dengan klik tombol Submit .
| ||||||||||||||||
7 | ||||||||||||||||
Lihat output file komputasi pada kolom Folder Contents
| ||||||||||||||||
8 | ||||||||||||||||
Untuk menghapus ruang job dan datanya:
| ||||||||||||||||
--- |
Sesi Jupyter
Menjalankan sesi interaktif Jupyter Lab atau Notebook di [interactive node].
| Langkah Sesi Jupyter | | |||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | |||||||||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||||||||||||
Siapkan conda environment yang akan digunakan.
| |||||||||||||||||||||||||||||||||||||||||
Untuk sesi Jupyter efektif 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