Komputasi Python dengan Conda Environment: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (melengkapi batch job) |
WilsonLisan (bicara | kontrib) (→Pilihan Menjalankan Komputasi: menambah sesi Jupyter) |
||
Baris 359: | Baris 359: | ||
**Telusuri kebutuhan versi CUDA untuk package user. | **Telusuri kebutuhan versi CUDA untuk package user. | ||
*Template submit script menyediakan daftar modul CUDA tersedia. | *Template submit script menyediakan daftar modul CUDA tersedia. | ||
** | **Secara umum hiraukan versi cuDNN kecuali butuh spesifik. | ||
**Apabila tidak ada kebutuhan spesifik, pilih versi terbaru. | |||
*Apabila modul CUDA yang dibutuhkan tidak ada: | *Apabila modul CUDA yang dibutuhkan tidak ada: | ||
**Hubungi tim admin di '''support@efisonlt.com''' untuk instalasi. | **Hubungi tim admin di '''support@efisonlt.com''' untuk instalasi. | ||
Baris 557: | Baris 558: | ||
**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. | ||
*Perhatikan note berikut untuk | *Perhatikan note berikut untuk skenario tertentu: | ||
''<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" | ||
Baris 563: | Baris 564: | ||
|- | |- | ||
|'''Note:''' | |'''Note:''' | ||
*Muat modul CUDA di submit script untuk | *Muat modul CUDA di submit script untuk memanfaatkan GPU. | ||
**Telusuri kebutuhan versi CUDA untuk package user. | **Telusuri kebutuhan versi CUDA untuk package user. | ||
*Template submit script menyediakan daftar modul CUDA tersedia. | *Template submit script menyediakan daftar modul CUDA tersedia. | ||
** | **Secara umum hiraukan versi cuDNN kecuali butuh spesifik. | ||
**Apabila tidak ada kebutuhan spesifik, pilih versi terbaru. | |||
*Apabila modul CUDA yang dibutuhkan tidak ada: | *Apabila modul CUDA yang dibutuhkan tidak ada: | ||
**Hubungi tim admin di '''support@efisonlt.com''' untuk instalasi. | **Hubungi tim admin di '''support@efisonlt.com''' untuk instalasi. | ||
Baris 641: | Baris 643: | ||
*Klik menu '''<code>Delete</code>''' | *Klik menu '''<code>Delete</code>''' | ||
[[Berkas:JC delete menu.png|nirbing|500x500px]] | [[Berkas:JC delete menu.png|nirbing|500x500px]] | ||
|- | |||
!--- | |||
|} | |||
=== Sesi Jupyter === | |||
Menjalankan sesi interaktif Jupyter Lab atau Notebook di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Interactive%20Node|interactive node]]].''' | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Langkah Sesi Jupyter | |||
[[Berkas:Efiro jupyter display.png|400x400px]] | |||
|- | |||
!1 | |||
|- | |||
| '''[https: / wiki.efisonlt.com wiki Menggunakan_ALELEON_Supercomputer_via_EFIRO#1_ |'''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#Login_Web_EFIRO Login ke web EFIRO]''' ALELEON Supercomputer. | |||
|- | |||
!2 | |||
|- | |||
|Siapkan '''conda environment''' yang akan digunakan. | |||
*Jangan lupa instal package Jupyter untuk conda env dari Mamba | |||
|- | |||
|Untuk sesi Jupyter efektif terkait batasan waktu dan konsumsi Core Hour: | |||
*Disarankan melengkapi instalasi package sebelum sesi Jupyter. | |||
*Hindari instalasi package besar selama sesi Jupyter. | |||
|- | |||
!3 | |||
|- | |||
| | |||
{| class="wikitable" | |||
|[[Berkas:New Pinnedapps jupyter.png|nirbing|116x116px]] | |||
|Buka pinned apps '''Jupyter''' di homepage EFIRO. | |||
|} | |||
|- | |||
!4 | |||
|- | |||
|Isi formulir untuk memulai sesi Jupyter dengan panduan berikut: | |||
{| class="wikitable" | |||
|+Panduan Mengisi Formulir Jupyter | |||
!<code>''Choose Jupyter version''</code> | |||
|- | |||
|Pilih sesuai preferensi user, '''<code>Jupyter Lab</code>''' atau '''<code>Notebook</code>''' | |||
|- | |||
! | |||
|- | |||
!''Partition'' | |||
|- | |||
|Pilih sesuai kebutuhan: | |||
*'''<code>torti</code>''' -> interactive node CPU | |||
*<code>'''tilla'''</code> -> interactive node GPU | |||
|- | |||
! | |||
|- | |||
!<code>''Number of CPU thread(s)''</code> | |||
|- | |||
|Alokasi core CPU, range <code>'''2 - 32'''</code> untuk torti dan tilla. | |||
|- | |||
! | |||
|- | |||
!<code>''Amount of memory/RAM (GB)''</code> | |||
|- | |||
|Alokasi RAM dalam satuan GB, range '''<code>1 - 64</code>''' untuk torti dan tilla. | |||
|- | |||
! | |||
|- | |||
!''<code>Number of GPUs</code>'' | |||
|- | |||
|Jumlah GPU, isi angka '''<code>1</code>''' apabila pakai tilla | |||
|- | |||
! | |||
|- | |||
!''<code>Number of hours</code>'' | |||
|- | |||
|Waktu maksimal sesi Jupyter, range '''<code>1 - 72</code>''' untuk torti dan tilla'''.''' | |||
|- | |||
! | |||
|- | |||
|'''Form CPU, RAM, GPU, dan hours mempunyai limit''' berdasarkan: | |||
*Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']]. | |||
*Spesifikasi sistem dan software komputasi. | |||
Langkah melihat limit: | |||
*Buka menu '''Clusters > Aleleon Shell Access''' | |||
[[Berkas:Shellaccess.png|nirbing|200x200px]] | |||
*Jalankan perintah: | |||
'''$ slimit-python''' | |||
|- | |||
! | |||
|- | |||
!''<code>Choose how to launch Jupyter</code>'' | |||
|- | |||
|Pilih <code>'''Anaconda/Mamba'''</code> | |||
|- | |||
! | |||
|- | |||
!''<code>Choose Anaconda/Mamba version</code>'' | |||
|- | |||
|Pilih versi yang digunakan untuk membuat conda env user. | |||
|- | |||
! | |||
|- | |||
!''<code>Conda/Mamba environment directory</code>'' | |||
|- | |||
|Isi nama conda env user, contoh: <code>skripsi</code> | |||
|- | |||
! | |||
|- | |||
!''<code>Software Modules</code>'' | |||
|- | |||
|Memuat modul software diluar conda env user , ''isi apabila ada''. | |||
*Perhatikan note berikut bagi yang memilih '''partition tilla''': | |||
''<small><code>Klik expand / kembangkan</code></small>'' | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!User tilla dan software modules NVIDIA CUDA | |||
|- | |||
|'''Note:''' | |||
*Muat modul CUDA untuk memanfaatkan GPU di Tilla. | |||
**Telusuri kebutuhan versi CUDA untuk package user. | |||
*Berikut daftar modul CUDA tersedia: | |||
**Secara umum hiraukan versi cuDNN kecuali butuh spesifik. | |||
**Apabila tidak ada kebutuhan spesifik, pilih versi terbaru. | |||
{| class="wikitable" | |||
!Versi CUDA | |||
!Nama modul | |||
|- | |||
|11.2 | |||
|<code>cuda/11.2-cuDNN8.1.1</code> | |||
|- | |||
|11.6 | |||
|<code>cuda/11.6-cuDNN8.3.3</code> | |||
|- | |||
|11.8 | |||
|<code>cuda/11.8-cuDNN8.6.0</code> | |||
|- | |||
|12.0 | |||
|<code>cuda/12.0-cuDNN8.7.0</code> | |||
|- | |||
|12.1 | |||
|<code>cuda/12.1-cuDNN8.8.1</code> | |||
|- | |||
|12.3 | |||
|<code>cuda/12.3-cuDNN8.9.6</code> | |||
|- | |||
|12.4 | |||
|<code>cuda/12.4-cuDNN9.2.1</code> | |||
|- | |||
|12.5 | |||
|<code>cuda/12.5-cuDNN9.2.1</code> | |||
|} | |||
*Apabila modul CUDA yang dibutuhkan tidak ada: | |||
**Hubungi tim admin di '''support@efisonlt.com''' untuk instalasi. | |||
*Berikut info khusus untuk package tertentu: | |||
''<small><code>(klik expand / kembangkan)</code></small>'' | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Bagi user yang menjalankan TensorFlow / PyTorch GPU | |||
|- | |||
| | |||
*Membutuhkan library NVIDIA CUDA spesifik untuk berjalan. | |||
**Panduan memuat modul CUDA ada pada template script. | |||
*Kebutuhan TensorFlow GPU lihat '''[[https://www.tensorflow.org/install/pip#linux Install TensorFlow with pip]]''' | |||
**Lihat bagian '''Software Requirements''' poin CUDA Toolkit | |||
*Kebutuhan PyTorch GPU mengikuti pilihan instalasi user. | |||
*Sesuaikan dengan nama modul CUDA ALELEON ''(cukup jelas)''. | |||
|- | |||
!--- | |||
|} | |||
|} | |||
|- | |||
! | |||
|- | |||
!''<code>Environment setup</code>'' | |||
|- | |||
|Memuat environment variable, ''isi apabila ada''. | |||
|- | |||
! | |||
|- | |||
!''<code>Additional Jupyter arguments</code>'' | |||
|- | |||
|Memuat argumen tambahan Jupyter, ''isi apabila ada''. | |||
|- | |||
! | |||
|- | |||
!''<code>Email address</code>'' | |||
|- | |||
|Notifikasi email untuk status mulai dan selesainya Jupyter. | |||
*''Isi apabila berkenan.'' | |||
|} | |||
* | |||
|- | |||
!5 | |||
|- | |||
|Klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter. | |||
*User akan diarahkan ke halaman '''<code>My Interactive Sessions</code>'''. | |||
*Tunggu hingga sesi Jupyter siap diakses. | |||
[[Berkas:Jupyternotebookqueue.png|nirbing|500x500px]] | |||
|- | |||
!6 | |||
|- | |||
|Apabila status '''Running''', klik tombol '''<code>Connect to Jupyter</code>'''. | |||
*Sistem mulai menghitung Core Hour! | |||
*Untuk menghentikan sesi yang sedang running, klik tombol '''<code>Cancel</code>''' | |||
[[Berkas:Newjupyter120124.png|nirbing|500x500px]] | |||
|- | |||
!7 | |||
|- | |||
|Pilih Notebook Python 3 untuk memulai sesi notebook Python 3.[[Berkas:Jupyternotebookkernelupdated.png|al=|nir|jmpl|200x200px|''Gunakan Notebook Python 3 untuk menjalankan kernel conda env user di Jupyter Notebook'']][[Berkas:Rjupyterlab.png|nir|jmpl|225x225px|''Gunakan Notebook Python 3 untuk menjalankan kernel conda env user di Jupyter Lab'']] | |||
|- | |||
!8 | |||
|- | |||
|User dapat mengunjungi sesi Jupyter yang sedang berjalan pada: | |||
*Menu '''<code>My Interactive Sessions</code>''' pada homepage EFIRO. | |||
*Kolom '''<code>Active interactive sessions</code>''' pada homepage EFIRO. | |||
|- | |- | ||
!--- | !--- |
Revisi per 23 Januari 2025 04.25
Berkas:Logo Python - Anaconda - Mamba ALELEON.png
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 menggunakan Anaconda atau Mamba.
|
Instalasi Package di Conda Environment
Menggunakan terminal!
| |||||||||||||||||||||||||||||||||||||||||||||
1 | |||||||||||||||||||||||||||||||||||||||||||||
Aktifkan conda env yang akan dipakai untuk instalasi package ini. | |||||||||||||||||||||||||||||||||||||||||||||
2 | |||||||||||||||||||||||||||||||||||||||||||||
Pilih tutorial instalasi sesuai kebutuhan:
|
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:
![]() | ||||||||||||||||
| ||||||||||||||||
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