Komputasi Python dengan Conda Environment: Perbedaan antara revisi

Dari ALELEON by EFISON
(→‎Batch Job: fix formatting)
 
(33 revisi perantara oleh pengguna yang sama tidak ditampilkan)
Baris 2: Baris 2:
[[Berkas:Logo Python Anaconda Mamba ALELEON tp.png|400x400px]]
[[Berkas:Logo Python Anaconda Mamba ALELEON tp.png|400x400px]]


Halaman ini menjelaskan menjalankan komputasi Python dengan '''conda environment''' di ALELEON Supercomputer.  
Halaman ini menjelaskan menjalankan komputasi / aplikasi Python dengan '''conda environment''' di ALELEON Supercomputer.  
{| class="wikitable"
{| class="wikitable"
!''Laman ini merupakan bagian laman ->'' [[Komputasi Python]]
!''Laman ini merupakan bagian laman'' [<nowiki/>[[Komputasi Python]]]
|}
|}


== '''Langkah Menjalankan Komputasi''' ==
== '''''Langkah Menjalankan Komputasi''''' ==
Terdapat tiga langkah utama:  
Terdapat tiga langkah utama:  


# Buat conda environment  
# Buat conda environment untuk menampung instalasi package.
# Instal package yang diperlukan di dalam conda env.
# Instal package Python yang diperlukan di conda env tersebut.
# Menjalankan komputasi dengan conda env tersebut.
# Menggunakan conda env tersebut untuk menjalankan komputasi.


== '''Membangun Conda Environment''' ==
=== Spesifikasi ===
ALELEON Supercomputer menyediakan pilihan package manager Python untuk membuat conda environment. Pilih sesuai preferensi user:
Tutorial ini memandu membuat conda environment dengan '''site-packages terisolasi di dalamnya'''.
{| class="wikitable"
{| class="wikitable"
! colspan="2" |Keterangan simbol perintah terminal
|-
|-
![[Berkas:Anaconda transparent logo.png|nirbing|130x130px]]
|<code>'''<big>$</big>'''</code>
![[Berkas:Mamba transparent logo.png|nirbing|100x100px]]
|Perintah ketika conda env tidak aktif
|-
|-
|
|'''<code><big><sub>(env)</sub>$</big></code>'''
*PM Python paling banyak digunakan.
|Perintah ketika conda env aktif
*Saat ini menjadi standar industri.
|
*Alternatif Anaconda, dibuat dengan C++.
*Dikembangkan oleh komunitas.
*Dalam beberapa kasus lebih ringan dan cepat.
|}
|}
=== Membuat dan Manajemen Conda Environment ===
 
{| class="wikitable"
== '''''Membuat Conda Environment''''' ==
!
ALELEON Supercomputer menyediakan pilihan Python Package Manager (PPM) berikut untuk membuat conda environment. Pilih sesuai preferensi user:
|-
 
|[[Berkas:Icon apps terminal cropped.png|kiri|nirbing|80x80px]]Menggunakan terminal!
* '''Anaconda:''' PPM Python paling banyak digunakan dimana saat ini menjadi standar industri.
* User web EFIRO buka app '''<code>Aleleon Shell Access</code>'''.
* '''Mamba:''' PPM Python alternatif Anaconda versi ''open-source'' yang dikembangkan komunitas.
|-
!1
|-
|Pilih skenario berikut yang sesuai dengan kebutuhan user:
''<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"
!<nowiki>- Membuat conda env secara umum dengan Anaconda |</nowiki>
!- Membuat conda env dengan Anaconda -
[[Berkas:Anaconda transparent logo.png|nirbing|90x90px]]
[[Berkas:Anaconda transparent logo.png|nirbing|90x90px]]
|-
|-
!1
!<big>0</big>
|-
|[[Berkas:EOD Apps Shell full.png|kiri|nirbing|101x101px]]'''Menggunakan terminal!'''
* User EFIRO klik app '''<code>Aleleon Shell Access</code>'''
* ''atau'' menu '''<code>Apps > Aleleon Shell Access</code>'''
|-
!<big>1</big>
|-
|-
|Pilih dan aktifkan modul Anaconda untuk membuat conda env:
|Pilih dan aktifkan modul Anaconda untuk membuat conda env:
<code>$ '''module load ''[nama-modul-anaconda]'''''</code>
 
* ''Ingat atau catat modul Anaconda yang dipakai.''
* ''Kedepannya digunakan untuk mengaktifkan conda env ini.''
 
$ '''module load ''[nama-modul-anaconda]'''''
{| class="wikitable"
{| class="wikitable"
|+Daftar nama modul Anaconda 3
|+Daftar nama modul Anaconda 3
Baris 75: Baris 77:
|}
|}
|-
|-
! 2
!<big>2</big>
|-
|-
| '''Ingat atau catat''' modul Anaconda yang dipakai.
|[[Berkas:GMB warning wololo.png|nirbing|50x50px]] ''Package apa yang akan diinstal user di conda env ini?''
*Kedepannya digunakan untuk mengaktifkan conda env ini.
* Beberapa package membutuhkan Python versi spesifik
 
* Gunakan opsi '''<big>3B</big>''' untuk membuat conda env.
''<small>Update 29 April 2025</small>''
{| class="wikitable"
|+Package yang diketahui butuh Python versi spesifik
!Package
!Versi Python
|-
|-
! 3
|TensorFlow
|Lihat '''[[https://www.tensorflow.org/install/source#tested_build_configurations TensorFlow Tested Build Configurations]]'''
|-
|-
|Buat conda env di direktori HOME:
|PyTorch
<code>$ '''conda create -n ''[nama-conda-env]'''''</code>
|3.9 - 3.12
 
<small>''Contoh nama 'skripsi' ->'' <code>$ conda create -n '''skripsi'''</code></small>
|-
|-
!4
|AutoGluon
|3.9 - 3.12
|}
|-
|-
|Aktifkan conda env dengan perintah source:
! <big>3</big>
<code>$ '''source activate ''[nama-conda-env]'''''</code>
 
<small>''Contoh nama 'skripsi' ->'' <code>$ source activate '''skripsi'''</code></small>
|-
|-
!MANAJEMEN ESENSIAL
!Buat conda env dengan opsi:
|-
|-
|
|'''<big>3A</big> -''' Conda env kosong dengan Python 3 versi terbaru '''(3.13)''':
'''-''' Menonaktifkan conda env:
  $ '''conda create -n ''[nama-conda-env]'' pip'''
  '''<small>(env-user)</small>$ conda deactivate'''
   
   
  '''-''' Mengaktifkan kembali conda env:
  <small>''Contoh dengan nama 'skripsi'''</small>
  ''Lakukan langkah 1 dan 4 diatas''
<small>$ conda create -n '''skripsi''' pip</small>
|-
!
|-
|'''<big>3B</big> -''' Conda env kosong dengan Python versi tertentu:
  $ '''conda create -n ''[nama-conda-env]'' python=''[versi]'''''
   
   
  - Melihat daftar conda env yang dibuat user:
  <small>''Contoh dengan Python 3.10''</small>
  '''$ conda env list'''
  <small>$ conda create -n '''skripsi python=3.10'''</small>
|-
- Menghapus conda env:
!Saran
'''$ conda remove -n ''[nama-conda-env]'' --all'''
|-
|Pilih nama conda env yang mengandung unsur nama modul:
- Manajemen lainnya lihat:
 
'''[[https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html Conda Managing environments]]'''
* ''Untuk mengingat modul yang digunakan membuat conda env.''
* ''Contoh user memilih modul Anaconda3/2024-02-1''
* ''Gunakan nama conda env seperti <code>'''A2024-skripsi'''</code>''
|-
|-
!---
!---
Baris 116: Baris 129:


{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
!<nowiki>- Membuat conda env secara umum dengan Mamba |</nowiki>
!- Membuat conda env dengan Mamba -
[[Berkas:Mamba transparent logo.png|nirbing|90x90px]]
[[Berkas:Mamba transparent logo.png|nirbing|90x90px]]
|-
|-
!1
!<big>0</big>
|-
|[[Berkas:EOD Apps Shell full.png|kiri|nirbing|101x101px]]'''Menggunakan terminal!'''
* User EFIRO klik app '''<code>Aleleon Shell Access</code>'''
* ''atau'' menu '''<code>Apps > Aleleon Shell Access</code>'''
|-
!<big>1</big>
|-
|-
|Pilih dan aktifkan modul Mamba untuk membuat conda env:
|Pilih dan aktifkan modul Mamba untuk membuat conda env:
<code>$ '''module load ''[nama-modul-mamba]'''''</code>
 
* ''Ingat atau catat modul Mamba yang dipakai.''
* ''Kedepannya digunakan untuk mengaktifkan conda env ini.''
 
$ '''module load ''[nama-modul-mamba]'''''
{| class="wikitable"
{| class="wikitable"
|+Daftar nama modul Mamba
|+Daftar nama modul Mamba
Baris 134: Baris 157:
|}
|}
|-
|-
!2
!<big>2</big>
|-
|-
|'''Ingat atau catat''' modul Mamba yang dipakai.
|[[Berkas:GMB warning wololo.png|nirbing|50x50px]] ''Package apa yang akan diinstal user di conda env ini?''
*Kedepannya digunakan untuk mengaktifkan conda env ini.
* Beberapa package membutuhkan Python versi spesifik
 
* Gunakan opsi '''<big>3B</big>''' untuk membuat conda env.
''<small>Update 29 April 2025</small>''
{| class="wikitable"
|+Package yang diketahui butuh Python versi spesifik
!Package
!Versi Python
|-
|-
! 3
|TensorFlow
|Lihat '''[[https://www.tensorflow.org/install/source#tested_build_configurations TensorFlow Tested Build Configurations]]'''
|-
|-
|Buat conda env di direktori HOME:
|PyTorch
<code>$ '''mamba create -n ''[nama-conda-env]'''''</code>
|3.9 - 3.12
 
<small>''Contoh nama 'skripsi' ->'' <code>$ mamba create -n '''skripsi'''</code></small>
|-
|-
!4
|AutoGluon
|3.9 - 3.12
|}
|-
|-
|Aktifkan conda env dengan perintah source:
! <big>3</big>
<code>$ '''source activate ''[nama-conda-env]'''''</code>
 
<small>''Contoh nama 'skripsi' ->'' <code>$ source activate '''skripsi'''</code></small>
|-
|-
!5
!Buat conda env dengan opsi:
[[Berkas:Logo Mamba Jupyter tp.png|nirbing|150x150px]]
|-
|-
|Bagi user yang mau pakai sesi Jupyter, instal:
|'''<big>3A</big> -''' Conda env kosong dengan Python 3 versi terbaru '''(3.13)''':
<small>(env-user)$</small> '''mamba install -c conda-forge jupyterlab'''
$ '''mamba create -n ''[nama-conda-env]'' pip'''
  <small>(env-user)$</small> '''mamba install -c conda-forge jupyter'''
  <small>''Contoh dengan nama 'skripsi'''</small>  
<small>$ mamba create -n '''skripsi''' pip</small>
|-
|-
!MANAJEMEN ESENSIAL
!
|-
|-
|
|'''<big>3B</big> -''' Conda env kosong dengan Python versi tertentu:
'''-''' Menonaktifkan conda env:
  $ '''mamba create -n ''[nama-conda-env]'' python=''[versi]'''''
  '''<small>(env-user)</small>$ conda deactivate'''
   
   
  '''-''' Mengaktifkan kembali conda env:
  <small>''Contoh dengan Python 3.10''</small>
''Lakukan langkah 1 dan 4 diatas''
<small>$ mamba create -n '''skripsi python=3.10'''</small>
|-
- Melihat daftar conda env yang dibuat user:  
!Saran
'''$ conda env list'''
|-
|Pilih nama conda env yang mengandung unsur nama modul:
- Menghapus conda env:
 
'''$ conda remove -n ''[nama-conda-env]'' --all'''
* ''Untuk mengingat modul yang digunakan membuat conda env.''
* ''Contoh user memilih modul Mamba/23.11.0-0''
- Manajemen lainnya lihat:
* ''Gunakan nama conda env seperti <code>'''M23-skripsi'''</code>''
'''[[https://docs.conda.io/projects/conda/en/latest/user-guide/tasks/manage-environments.html Conda Managing environments]]'''
|-
|-
!---
!---
|}
|}
|}
== '''''Mengaktifkan Conda Env dan Instalasi Package''''' ==
 
[[Berkas:GMB warning wololo.png|nirbing|50x50px]] Ada baiknya user melengkapi instalasi package '''sebelum menjalankan komputasi''' karena:
=== Instalasi Package di Conda Environment ===
[[Berkas:GMB warning wololo.png|nirbing|50x50px]] '''Note:'''  


# Ada baiknya user melengkapi instalasi package sebelum menjalankan komputasi:
# Batch job -> supaya script Python berjalan tanpa error ''missing package''.
#* 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.
#* 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.


Instalasi ini berjalan di login node sehingga '''tidak mengkonsumsi Core Hour.'''
{| class="wikitable"
{| class="wikitable"
!
!Mengaktifkan Conda Environment
|-
|-
|[[Berkas:Icon apps terminal cropped.png|kiri|nirbing|80x80px]]Menggunakan terminal!
!<big>0</big>
*User web EFIRO buka app '''<code>Aleleon Shell Access</code>'''.
|-
|-
!1
|[[Berkas:EOD Apps Shell full.png|kiri|nirbing|101x101px]]'''Menggunakan terminal!'''
* User EFIRO klik app '''<code>Aleleon Shell Access</code>'''
* ''atau'' menu '''<code>Apps > Aleleon Shell Access</code>'''
|-
|-
| '''Aktifkan conda env''' yang akan dipakai untuk instalasi package ini.
!<big>1</big>
|-
|-
!2
|Muat modul PPM yang digunakan untuk membuat conda env:
$ '''module load ''[Anaconda-atau-Mamba ....]'''''
Apabila lupa dengan nama conda env, cari dengan:
 
<code>$ '''conda env list'''</code>
|-
|-
|Pilih tutorial instalasi sesuai kebutuhan:
!<big>2</big>
''<small><code>(klik expand / kembangkan)</code></small>''
{| class="wikitable mw-collapsible mw-collapsed"
! colspan="2" |<nowiki>- Instalasi Package Secara Umum dengan pip / conda |</nowiki>
[[Berkas:GMB Pip Conda icon.png|nirbing|120x120px]]
|-
|-
| colspan="2" |User dapat melakukan instalasi package lainnya dengan pip atau conda
|Aktifkan conda env dengan perintah '''<big><code>source</code></big>''':
$ '''source activate ''[nama-conda-env]'''''
|-
|-
! rowspan="2" |pip
!<big>3</big>
| Contoh umum:
<code><small>(env-user)$</small> '''pip install ''[nama-package]'''''</code>
|-
|-
|Daftar package dan tutorial instal '''pip''' lihat web:
!''Pilih panduan instalasi package yang dibutuhkan''
*'''[[https://pypi.org/ PyPI The Python Package Index]]'''.
|-
|-
! colspan="2" |
|Lihat laman wiki '''[<nowiki/>[[Daftar Instalasi Package Python]]]'''.
 
* ''<small>Halaman terpisah karena daftar terlalu panjang</small> ._.''
|-
|-
! rowspan="2" |conda
!<big>4</big>
|Contoh umum:
<code><small>(env-user)$</small> '''conda install conda-forge::''[nama-package]'''''</code>
|-
|-
|Daftar package dan tutorial instal conda lihat web:
|Apabila hendak menonaktfkan conda env:
*'''[[https://conda-forge.org/packages/ Packages in Conda Forge]]'''.
<sub>(env)</sub>$ '''conda deactivate'''
|-
! colspan="2" |---
|}
|}


{| class="wikitable mw-collapsible mw-collapsed"
== '''''Pilihan Menjalankan Komputasi''''' ==
! colspan="2" |<nowiki>- Instalasi Package TensorFlow |</nowiki>
Berikut opsi menjalankan komputasi Python dengan conda env, pilih sesuai kebutuhan:
[[Berkas:Logo TF GMB pip.png|nirbing|140x140px]]
|-
| colspan="2" |Tersedia dua versi TensorFlow, pilih sesuai kebutuhan:
* Versi CPU - berjalan di CPU.
*Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA.
|-
!Versi
!Perintah pip
|-
|CPU [[Berkas:GMB CPU icon.png|nirbing|60x60px]]
| <code><small>(env-user)$</small> '''python3 -m pip install tensorflow'''</code>
|-
|GPU [[Berkas:GMB GPU icon.png|nirbing|80x80px]]
|<code><small>(env-user)$</small> '''python3 -m pip install 'tensorflow[and-cuda]''''</code>
|-
! colspan="2" |Pranala lanjut lihat [[https://www.tensorflow.org/install/pip Install TensorFlow with pip]]
|-
! colspan="2" |---
|}


{| class="wikitable mw-collapsible mw-collapsed"
# '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Batch_Job Batch job]]''' -> menjalankan script Python siap jalan yang tidak membutuhkan interaksi user melalui manajemen Slurm di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Compute%20Node|compute node]]].'''
! colspan="2" |<nowiki>- Instalasi Package PyTorch |</nowiki>
# '''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Sesi_Jupyter Sesi Jupyter]]''' -> menjalankan sesi interaktif Jupyter Lab atau Notebook di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Interactive%20Node|interactive node]]].'''
[[Berkas:Logo PyTorch GMB pip.png|nirbing|150x150px]]
===Apakah Bisa Menjalankan Job?===
Bagi akun yang berjalan dengan '''kredit Core Hour''' seperti akun perseorangan, ada baiknya untuk memantau sisa Core Hour sebelum menjalankan job:
{| class="wikitable"
!Memantau Sisa Core Hour
|-
|-
| colspan="2" |Tersedia dua versi PyTorch, pilih sesuai kebutuhan:
!<big>0</big>
*Versi CPU - berjalan di CPU.
*Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA.
|-
|-
!Versi
|[[Berkas:EOD Apps Shell full.png|kiri|nirbing|101x101px]]'''Menggunakan terminal!'''
!Perintah pip
* User EFIRO klik app '''<code>Aleleon Shell Access</code>'''
* ''atau'' menu '''<code>Apps > Aleleon Shell Access</code>''' 
|-
|-
|CPU [[Berkas:GMB CPU icon.png|nirbing|60x60px]]
!<big>1A</big>
|<code><small>(env-user)$</small> '''pip3 install torch torchvision torchaudio --index-url <nowiki>https://download.pytorch.org/whl/cpu</nowiki>'''</code>
|-
|-
| GPU - CUDA 11.8 [[Berkas:GMB GPU icon.png|nirbing|80x80px]]
|Untuk akun perseorangan, jalankan perintah:
|<code><small>(env-user)$</small> '''pip3 install torch torchvision torchaudio --index-url <nowiki>https://download.pytorch.org/whl/cu118</nowiki>'''</code>
$ '''sausage'''
''Untuk akun institusi dengan kredit Core Hour, ikuti petunjuk admin.''
|-
|-
|GPU - CUDA 12.1 [[Berkas:GMB GPU icon.png|nirbing|80x80px]]
!<big>1B</big>
|<code><small>(env-user)$</small> '''pip3 install torch torchvision torchaudio --index-url <nowiki>https://download.pytorch.org/whl/cu121</nowiki>'''</code>
|-
|-
|GPU - CUDA 12.4 [[Berkas:GMB GPU icon.png|nirbing|80x80px]]
|Untuk mengetahui limit alokasi komputasi job user:
|<code><small>(env-user)$</small> '''pip3 install torch torchvision torchaudio'''</code>
*Langkah batch job terminal, lihat step '''2B.'''
*Langkah batch job EFIRO Job Composer, lihat step '''5B.'''
|-
|-
! colspan="2" |Pranala lanjut lihat '''[[https://pytorch.org/get-started/locally/ PyTorch - Start Locally]]'''
!'''<big>2</big>'''  
|-
|-
! colspan="2" |---
|Apabila butuh beli kredit Core Hour, lihat '''[[https://wiki.efisonlt.com/wiki/Core_Hour#Penggunaan_Kredit_Core_Hour top up Kredit Core Hour]]'''
|}
{| class="wikitable mw-collapsible mw-collapsed"
! colspan="2" |<nowiki>- Instalasi Package JAX |</nowiki>
|-
|-
| colspan="2" |Tersedia dua versi JAX, pilih sesuai kebutuhan:
! ---
*Versi CPU - berjalan di CPU.
|}---
*Versi GPU - berjalan dengan akselerasi GPU NVIDIA dan lib. CUDA.
 
=== '''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:
 
{| class="wikitable"
!Mengecek Kelengkapan Package NVIDIA
|-
|-
!Versi
!<big>0</big>
!Perintah pip
|-
|-
|CPU [[Berkas:GMB CPU icon.png|nirbing|60x60px]]
|[[Berkas:EOD Apps Shell full.png|kiri|nirbing|101x101px]]'''Menggunakan terminal!'''
|<code><small>(env-user)$</small> '''pip install -U jax'''</code>
* User EFIRO klik app '''<code>Aleleon Shell Access</code>'''
* ''atau'' menu '''<code>Apps > Aleleon Shell Access</code>'''
|-
|-
|GPU [[Berkas:GMB GPU icon.png|nirbing|80x80px]]
!<big>1</big>
|<code><small>(env-user)$</small> '''pip install -U "jax[cuda12]"'''</code>
|-
|-
! colspan="2" |Pranala lanjut lihat [[https://docs.jax.dev/en/latest/installation.html JAX - Installation]]
|'''[[https://wiki.efisonlt.com/wiki/Komputasi_Python_dengan_Conda_Environment#Mengaktifkan_Conda_Env_dan_Instalasi_Package Aktifkan conda env]]''' yang akan digunakan.
|-
|-
! colspan="2" |---
!<big>2</big>
|}
[[Berkas:GMB warning wololo.png|nirbing|50x50px]] Apabila butuh tutorial instalasi package lain:
 
* Hubungi '''support@efisonlt.com'''
|}
 
=== '''Menjalankan Conda Env dengan GPU?''' ===
Berikut hal yang perlu diperhatikan untuk menjalankan package komputasi Python dan conda env di GPU ALELEON Supercomputer:
 
---
 
==== Instal Package Python Versi CUDA ====
Partisi GPU ALELEON menggunakan GPU NVIDIA sehingga:
 
* Instal package Python versi '''CUDA''' ''(apabila ada)'''''.'''
* Apabila ikut tutorial subbab diatas, pilih versi GPU [[Berkas:GMB GPU icon.png|nirbing|80x80px]].
 
---
 
==== Apakah Perlu Memuat Modul CUDA? ====
Package Python versi CUDA membutuhkan '''library CUDA yang sesuai''' untuk berjalan. Biasanya instalasi package Python versi CUDA juga menginstal library CUDA yang diperlukan. Berikut langkah cek kelengkapan library CUDA: 
{| class="wikitable"
!
|-
|-
|Setelah instalasi package, cek ketersediaan library CUDA di conda env:
|Cek ketersediaan library CUDA di conda env tersebut:
  - Apabila instal package dengan pip
  - Apabila instal package dengan pip
  '''<small>(env-user)</small>$ pip list | grep cuda'''
  <sub>(env)</sub>$ '''pip list | grep cuda'''
   
   
  - Apabila instal package dengan conda
  - Apabila instal package dengan conda
  '''<small>(env-user)</small>$ conda list | grep cuda'''
  <sub>(env)</sub>$ '''conda list | grep cuda'''
|-
|-
!Apabila ada output cuda:
!<big>3A</big>
|-
|-
|Conda env siap digunakan, user '''tidak perlu memuat modul CUDA.'''
!''Apabila ada output:''
|-
|-
![[Berkas:GMB warning wololo.png|nirbing|50x50px]] Apabila tidak ada output cuda:
|Conda env siap digunakan.
 
* User '''tidak perlu memuat modul CUDA.'''
|-
!<big>3B</big>
|-
![[Berkas:GMB warning wololo.png|nirbing|50x50px]] ''Apabila tidak ada output:''
|-
|-
|User '''harus memuat modul CUDA''' dengan ketentuan:
|User '''harus memuat modul CUDA''' dengan ketentuan:
# Perhatikan versi CUDA yang dibutuhkan.  
# Perhatikan versi CUDA '''yang dibutuhkan package'''.
# Lihat dokumentasi package tersebut.
# Lihat dokumentasi package tersebut.
 
''<small><code>(klik expand / kembangkan)</code></small>''
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
! colspan="2" |<nowiki>- Tutorial memuat dan daftar modul CUDA |</nowiki>
! colspan="2" |- Tutorial memuat dan daftar modul CUDA -
[[Berkas:Logo CUDA ALELEON tp.png|nirbing|150x150px]]
[[Berkas:Logo CUDA ALELEON tp.png|nirbing|150x150px]]
|-
|-
| colspan="2" |'''Bagi yang menjalankan conda env dengan batch job:'''
! colspan="2" |'''Opsi Komputasi Batch Job'''
* Tambah perintah berikut pada submit script:
|-
 
| colspan="2" |Tambah perintah berikut pada submit script:
  ...
  ...
  # Memuat modul
  # Memuat modul
  module load ${PM}
  module load ${PM}
  '''module load ''[nama-modul-CUDA]'''''
  '''module load ''[Nama-modul-CUDA]'''''
  ...
  ...
|-
|-
! colspan="2" |
! colspan="2" |'''Opsi Komputasi Jupyter'''
|-
|-
| colspan="2" |'''Bagi yang menjalankan conda env dengan sesi Jupyter:'''
| colspan="2" |Isi nama modul pada kolom '''Software Modules'''
* Isi nama modul pada kolom '''<code>Software Modules</code>'''.
|-
|-
! colspan="2" |
! colspan="2" |
|-
! colspan="2" |DAFTAR MODUL CUDA ALELEON
|-
|-
!Versi CUDA
!Versi CUDA
Baris 387: Baris 380:
| colspan="2" |Permintaan instalasi CUDA versi lain:
| colspan="2" |Permintaan instalasi CUDA versi lain:


* Hubungi tim admin di '''''support@efisonlt.com'''''.
* Hubungi tim admin di '''''support@efisonlt.com'''''
* Layanan gratis.
|-
|-
! colspan="2" |---
! colspan="2" |---
Baris 395: Baris 387:
!---
!---
|}
|}
---


== '''Pilihan Menjalankan Komputasi''' ==
User dapat menjalankan komputasi dengan conda env melalui pilihan berikut, pilih sesuai kebutuhan:
=== Batch Job ===
=== Batch Job ===
Menjalankan script Python siap jalan tanpa interaksi user melalui manajemen Slurm di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Compute%20Node|compute node]]].'''
menjalankan script Python siap jalan yang tidak membutuhkan interaksi user melalui manajemen Slurm di '''[<nowiki/>[[Spesifikasi ALELEON Supercomputer#Spesifikasi%20Compute%20Node|compute node]]].'''
*[[Berkas:GMB warning wololo.png|nirbing|50x50px]]Perhatikan untuk '''file <code>.ipynb</code>''' harus dikonversi ke '''file <code>.py</code>'''.
*[[Berkas:GMB warning wololo.png|nirbing|50x50px]]Perhatikan '''file <code>.ipynb</code>''' harus dikonversi ke '''file <code>.py</code>'''.
*Tersedia dua pilihan tampilan yaitu terminal dan web EFIRO. Pilih sesuai keinginan.
*Tersedia dua pilihan tampilan yaitu terminal dan web EFIRO. Pilih sesuai keinginan.
''<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"
!<nowiki>- Langkah Job Submission Slurm di Terminal |</nowiki>
!- Langkah Batch Job di Terminal -
[[Berkas:Sbatch terminal display rev2.png|tepi|400x400px]]
[[Berkas:Sbatch terminal display rev2.png|tepi|400x400px]]
|-
|-
| Lakukan [https: / wiki.efisonlt.com wiki Menggunakan_ALELEON_Supercomputer_via_Terminal#1_ |[[Berkas:Icon apps terminal cropped.png|kiri|nirbing|80x80px]]Menggunakan terminal!
!''Tutorial ini mengasumsikan user familiar dengan terminal Linux''
*User web EFIRO buka app '''<code>Aleleon Shell Access</code>'''.
|-
!<big>0</big>
|-
|[[Berkas:EOD Apps Shell full.png|kiri|nirbing|101x101px]]'''Menggunakan terminal!'''
* User EFIRO klik app '''<code>Aleleon Shell Access</code>'''
* ''atau'' menu '''<code>Apps > Aleleon Shell Access</code>'''
|-
!<big>1</big>
|-
|-
!1
!Lakukan persiapan:
|-
|-
|Siapkan conda env dan file komputasi yang dibutuhkan.
|'''Pastikan package lengkap pada conda env yang akan digunakan:'''
*User dapat upload / download file dengan [[Upload File dengan Aplikasi FTP|'''software FTP''']].
* Package tidak lengkap akan menyebabkan job gagal berjalan.
*User web EFIRO juga dapat gunakan app '''<code>Home Directory</code>'''
'''Siapkan file komputasi yang dibutuhkan:'''
* Upload / download file lihat '''[[https://wiki.efisonlt.com/wiki/Manajemen_File_di_ALELEON_Supercomputer#Upload_dan_Download_File Upload / Dow][https://wiki.efisonlt.com/wiki/Manajemen_File_di_ALELEON_Supercomputer#Upload_dan_Download_File nload File HOME]]'''
|-
|-
!2A
!<big>2A</big>
|-
|-
|Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi.
|Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi:
*Nama file bebas dengan format .'''<code>sh</code>''', contoh '''<code>submit.sh</code>'''
*Nama file bebas dengan format .sh, contoh '''<code>submit.sh</code>'''
*''Biasanya submit script berada satu folder dengan file komputasi.''
$ '''nano submit.sh'''
''<small>atau vim</small>''
|-
|-
!
!
|-
|-
|Contoh template Submit Script
|Contoh template Submit Script:
*Ikuti petunjuk '''NOTES dan alur script''' di dalamnya.
*Ikuti petunjuk '''NOTES dan alur script''' di dalamnya.
''<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"
!<nowiki>- Template submit script Conda Environment versi CPU |</nowiki>
!- Template submit script Conda Environment versi CPU -
[[Berkas:GMB CPU icon.png|nirbing|80x80px]]
[[Berkas:GMB CPU icon.png|nirbing|80x80px]]
|-
|-
Baris 491: Baris 493:
|
|
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
!<nowiki>- Template submit script conda environment versi GPU |</nowiki>
!- Template submit script conda environment versi GPU -
[[Berkas:GMB GPU icon.png|nirbing|100x100px]]
[[Berkas:GMB GPU icon.png|nirbing|100x100px]]
|-
|-
|[[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_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan 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 562: Baris 569:
</syntaxhighlight>
</syntaxhighlight>
|}
|}
|-
!
|-
|-
|
|
*''<small>Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']].</small>''
*''<small>Info script lebih detail lihat '''[<nowiki/>[[Submit Script ALELEON Supercomputer]]]'''</small>''
*''<small>Untuk SBATCH notifikasi email status jalannya job lihat [https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM '''Slurm Jojo'''].</small>''
 
*''<small>Untuk SBATCH notifikasi email status jalannya job lihat '''[[https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM Slurm Jojo]]'''</small>''
|-
|-
!2B
!<big>2B</big>
|-
|-
|'''SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit''' berdasarkan:
|SBATCH komputasi (ntasks, mem, time, dll) '''punya limit''' berdasarkan:
*Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']].
*Sisa Core Hour user dan '''[<nowiki/>[[Limitasi Fair Usage ALELEON Supercomputer|Fair Usage Limit]]]'''
*Spesifikasi sistem dan software komputasi.
*Spesifikasi sistem dan software komputasi.
Untuk melihat limit, jalankan perintah:
Untuk melihat limit, jalankan perintah berikut:
  '''$ slimit-python'''
  $ '''slimit-python'''
[[Berkas:GMB warning wololo.png|nirbing|50x50px]] '''Note untuk saat ini:'''
*''Jalankan ketika tidak ada job user yang berjalan atau antri.''
*''Sementara berlaku untuk akun perseorangan saja.''
|-
|-
!3
!<big>3</big>
|-
|-
|Jalankan job komputasi dengan perintah:
|Jalankan job dengan perintah:
  $ '''sbatch ''[nama-submit-script]'''''
  $ '''sbatch ''[nama-submit-script]'''''
   
   
  <small>''Contoh:''
  ''Contoh:''
  $ sbatch submit.sh</small>
  $ sbatch submit.sh
|-
|-
!4
!<big>4</big>
|-
|-
|User dapat melihat status jalannya job dengan perintah:
|User dapat melihat status jalannya job dengan perintah:
'''<code>$ squeue -ul $USER</code>'''
$ '''squeue -ul $USER'''
{| class="wikitable"
{| class="wikitable"
! colspan="2" |''Kolom ST atau STATE menunjukkan status jalannya job.''
|+Kolom ST atau STATE menunjukkan status jalannya job:
|-
|-
!STATE
!STATE
!Penjelasan
!Penjelasan
|-
|-
|R (RUN)
|<code>R (RUN)</code>
|Job berjalan
|Job berjalan
|-
|-
|PD (PENDING)
|<code>PD (PENDING)</code>
|Job tertahan, lihat [[Daftar Reason NODELIST ALELEON Supercomputer|'''NODELIST(REASON)''']]
|Job tertahan, lihat '''[<nowiki/>[[Daftar Job Reason ALELEON Supercomputer|Daftar Job Reason]]]'''
|-
|-
|CG (COMPLETING)
|<code>CG (COMPLETING)</code>
|Job selesai dan dalam proses clean-up
|Job selesai dan dalam proses clean-up
|-
|-
|CA (CANCELED)
|<code>CA (CANCELED)</code>
|Job dibatalkan user
|Job dibatalkan user
|-
|-
|PR (PREEMPETED)
|<code>PR (PREEMPETED)</code>
|Job dibatalkan admin, alasan dikabarkan via email
|Job dibatalkan admin, alasan dikabarkan via email
|-
|-
|S (SUSPENDED)
|<code>S (SUSPENDED)</code>
|Job ditahan admin, alasan dikabarkan via email
|Job ditahan admin, alasan dikabarkan via email
|}
|}
|-
|-
!
!<big>5</big>
|-
|User dapat memantau file output dengan perintah Unix seperti:
 
* '''<code>ls</code>''', '''<code>cat</code>''', '''<code>more</code>''', '''<code>tail</code>''', dll
|-
!<big>6</big>
|-
|-
|Apabila user ingin menghentikan job yang berjalan, jalankan perintah:
|Apabila user ingin menghentikan job yang berjalan, jalankan perintah:
  '''$ scancel ''[job-ID]'''''
  $ '''scancel ''[job-ID]'''''
   
   
  <small>''Job ID ada pada squeue diatas.''
  <small>''Job ID ada pada squeue diatas.''
contoh membatalkan job ID 231:
  contoh membatalkan job ID 231:
$ scancel 231</small>
  $ scancel 231</small>
|-
|-
!---
!---
|}
|}
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
!<nowiki>- Langkah Job Submission Slurm di web EFIRO |</nowiki>
!- Langkah Batch Job di web EFIRO -
[[Berkas:Efiro jobcomposer display.png|nirbing|400x400px]]
[[Berkas:Efiro jobcomposer display.png|nirbing|400x400px]]
|-
|-
!1
!<big>1</big>
|-
|-
| [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.
| [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
!<big>2</big>
|-
|-
|[[Berkas:EOD Apps Job Composer full.png|nirbing|126x126px]]Buka pinned apps '''Job Composer'''  di homepage EFIRO.
|
Pilih menu '''<code>New Job</code>''' -> '''<code>From Template</code>'''
{| class="wikitable"
|[[Berkas:EOD Apps Job Composer full.png|nirbing|126x126px]]
|Klik app '''<code><big>Job Composer</big></code>''' di homepage EFIRO.


[[Berkas:Jcnewjobmarked.png|nirbing|180x180px]]
* ''atau'' menu '''<big><code>Apps > Job Composer</code></big>'''
|}
|-
|[[Berkas:Jcnewjobmarked.png|nirbing|170x170px]]Pilih menu <big>'''<code>New Job > From Template</code>'''</big>
|-
!<big>3</big>
|-
|-
!3
!Buat ruang job untuk menjalankan komputasi:
|-
|-
|
|
{| class="wikitable"
{| class="wikitable"
! colspan="2" |Pilih template Anaconda Python yang diinginkan:
|+Pilih template Anaconda Python yang diinginkan:
|-
|-
!Nama Template
!Nama Template
Baris 652: Baris 678:
|Conda Environment Python (GPU)
|Conda Environment Python (GPU)
|Menjalankan conda env pada GPU
|Menjalankan conda env pada GPU
|}Kemudian Isi '''<code>Job Name</code>''' dan klik '''<code>Create New Job</code>'''
|}Kemudian Isi '''Job Name''' dan klik '''<code><big>Create New Job</big></code>'''


[[Berkas:Jctemplate-2.png|nirbing]]
[[Berkas:Jctemplate-2.png|nirbing]]
|-
|-
!4
!<big>4</big>
|-
!Lakukan persiapan:
|-
|-
|Siapkan file komputasi dan conda env yang dibutuhkan:
|'''Pastikan package lengkap pada conda env yang akan digunakan:'''
*Upload / download / edit file via menu <code>'''Edit Files'''</code>
* Package tidak lengkap akan menyebabkan job gagal berjalan.
*Akses terminal untuk manajemen conda env via menu '''<code>Open Terminal</code>'''
* Akses terminal apabila butuh via menu '''<code><big>Open Terminal</big></code>'''
'''Siapkan file komputasi yang dibutuhkan di ruang job:'''
 
* ''Pastikan ruang job yang dipilih adalah yang akan digunakan.''
 
*Upload / download / edit file via menu <code>'''<big>Edit Files</big>'''</code>
 
*Upload / download file tunggal diatas 2GB gunakan '''[[https://wiki.efisonlt.com/wiki/Manajemen_File_di_ALELEON_Supercomputer#Upload_/_Download_Ruang_Job_Composer software FTP]]'''
[[Berkas:JC job menu.png|nirbing|500x500px]]
[[Berkas:JC job menu.png|nirbing|500x500px]]
|-
|-
!5A
!<big>5A</big>
|-
|-
|Lengkapi '''Submit Script''' melalui tombol '''<code>Open Editor:</code>'''
|Lengkapi '''Submit Script''' melalui tombol '''<code><big>Open Editor</big></code>'''
*Submit script adalah 'formulir' untuk menjalankan job komputasi.
*Submit script adalah 'formulir' untuk menjalankan job komputasi.
**Ikuti petunjuk '''NOTES dan alur script''' didalamnya.
* Ikuti petunjuk '''NOTES dan alur script''' di dalamnya.
*Klik '''<code>Save</code>''' setiap kali mengubah script.
*Klik '''<code><big>Save</big></code>''' setiap kali mengubah script.
[[Berkas:Jceditor3.png|al=|nirbing|400x400px]]
[[Berkas:Jceditor3.png|al=|nirbing|400x400px]]
|-
|-
|[[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_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan 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]'''''
...
|-
!
|-
|-
|
|
*''<small>Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']].</small>''
*''<small>Info script lebih detail lihat '''[<nowiki/>[[Submit Script ALELEON Supercomputer]]]'''</small>''
*''<small>Untuk SBATCH notifikasi email status jalannya job lihat [https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM '''Slurm Jojo'''].</small>''
 
*''<small>Untuk SBATCH notifikasi email status jalannya job lihat '''[[https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM Slurm Jojo]]'''</small>''
|-
|-
!5B
!<big>5B</big>
|-
|-
|SBATCH komputasi (ntasks, mem, time, dll) '''mempunyai limit''' berdasarkan:
|SBATCH komputasi (ntasks, mem, time, dll) '''punya limit''' berdasarkan:
*Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']].
*Sisa Core Hour user dan '''[<nowiki/>[[Limitasi Fair Usage ALELEON Supercomputer|Fair Usage Limit]]]'''
*Spesifikasi sistem dan software komputasi.
*Spesifikasi sistem dan software komputasi.
Untuk melihat limit, jalankan perintah ini via menu '''<code>Open Terminal</code>''':
Untuk melihat limit, jalankan perintah berikut:
'''$ slimit-python'''  
$ '''slimit-python'''
[[Berkas:GMB warning wololo.png|nirbing|50x50px]] '''Note untuk saat ini:'''
*''Jalankan ketika tidak ada job user yang berjalan atau antri.''
*''Sementara berlaku untuk akun perseorangan saja.''
|-
|-
!6
!<big>6</big>
|-
|-
|Jalankan job dengan klik tombol '''<code>Submit</code>'''.
|Jalankan job dengan klik tombol '''<code><big>Submit</big></code>'''
[[Berkas:JC job runstop.png|al=|nirbing|500x500px]]
[[Berkas:JC job runstop.png|al=|nirbing|400x400px]]
*Pantau kolom status yang menjelaskan status jalannya job.
*Apabila ingin membatalkan job yang berjalan, klik '''<code>Stop</code>'''.
{| class="wikitable"
{| class="wikitable"
! colspan="2" |<nowiki>- Daftar Status Job |</nowiki>
|+Kolom Status menunjukkan status jalannya job:
|-
|-
!Status
!Status
Baris 706: Baris 750:
|Job berjalan.
|Job berjalan.
|-
|-
|Queue
| Queue
|Job mengantri dan belum berjalan.
|Job mengantri dan belum berjalan.
|-
|-
|Completed
|Completed
|Job selesai berjalan.
| Job selesai berjalan.
|-
|-
|Failed
|Failed
|Job berhenti karena error atau di stop user.
|Job berhenti karena error atau di stop user.
|-
|-
| colspan="2" |'''Untuk melihat alasan job yang queue:'''[[Berkas:Active Jobs detail.png|nir|jmpl|300x300px|''Buka pinned apps '''Active Jobs''' di homepage EFIRO. Ubah opsi All jobs ke '''Your Jobs'''. Klik simbol '''>''' untuk melihat status job yang pending pada kolom Reason. Arti reason lihat laman [[Daftar Reason NODELIST ALELEON Supercomputer|'''Daftar Reason NODELIST ALELEON Supercomputer''']].'']]
! colspan="2" |'''Melihat alasan job yang queue:'''
|-
| colspan="2" |[[Berkas:Active Jobs detail.png|nir|jmpl|300x300px|''Buka menu '''Apps >''' '''Active Jobs''' di homepage EFIRO. Ubah opsi All jobs ke '''Your Jobs'''. Klik simbol '''>''' untuk melihat status job yang pending pada kolom Reason. Arti reason lihat laman '''[[Daftar Job Reason ALELEON Supercomputer]]''''']]
|}
|}
|-
|-
!7
!'''<big>7</big>'''
|-
|-
|Lihat output file komputasi pada kolom '''<code>Folder Contents</code>'''
|Lihat output file komputasi pada kolom '''Folder Contents'''
*Atau dengan membuka '''<code>Edit Files</code>'''
*Atau dengan membuka menu '''<code><big>Edit Files</big></code>'''
[[Berkas:Jcfoldercontentsedit.png|al=|nir|jmpl|''Kolom '''<code>Folder Contents</code>'''.'']]
[[Berkas:Jcfoldercontentsedit.png|al=|nir|jmpl|''Kolom '''<code>Folder Contents</code>''''']]
|-
|-
!8
!<big>8</big>
|-
|Apabila user ingin menghentikan job yang berjalan, klik '''<code><big>Stop</big></code>'''
|-
!<big>9</big>
|-
|-
|Untuk menghapus ruang job dan datanya:
|Untuk menghapus ruang job dan datanya:
*Pilih ruang job yang akan dihapus.
*Pilih ruang job yang akan dihapus.
*Klik menu '''<code>Delete</code>'''
*Perhatikan opsi ini juga '''menghapus data di ruang job tersebut.'''
[[Berkas:JC delete menu.png|nirbing|500x500px]]
*Klik menu '''<code><big>Delete</big></code>'''
[[Berkas:JC delete menu.png|nirbing|400x400px]]
|-
|-
!---
!---
Baris 736: Baris 787:
=== Sesi Jupyter ===
=== Sesi Jupyter ===
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]]].'''
''<small><code>(klik expand / kembangkan)</code></small>''
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
!<nowiki>- Langkah Sesi Jupyter |</nowiki>
!- Langkah Sesi Jupyter -
[[Berkas:Efiro jupyter display.png|400x400px]]
[[Berkas:Efiro jupyter display.png|400x400px]]
|-
|-
!1
!'''<big>1</big>'''
|-
| '''[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.
|-
|-
| '''[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.
!<big>2</big>
|-
|-
!2
!Lakukan persiapan sebelum sesi Jupyter:
|-
|-
|Siapkan '''conda environment''' yang akan digunakan.
|[[Berkas:GMB warning wololo.png|nirbing|50x50px]] <big>User PPM '''Mamba'''</big> harus instal '''package Jupyter:'''
*Bagi user Mamba, jangan lupa instal package Jupyter di conda env.
# Muat modul Mamba yang digunakan untuk membuat conda env.
# Aktifkan conda env yang akan digunakan.
# Instal package Jupyter:
 
<sub>(env)</sub>$ '''pip install jupyter jupyterlab'''
|-
|-
|Untuk sesi Jupyter efektif terkait batasan waktu dan konsumsi Core Hour:
|'''Untuk efisiensi sesi terkait batasan waktu dan konsumsi Core Hour:'''
*Disarankan melengkapi instalasi package sebelum sesi Jupyter.
* Lengkapi instalasi package pada conda env yang akan dipakai.
*Hindari instalasi package besar selama sesi Jupyter.
* Upload file besar lihat '''[[https://wiki.efisonlt.com/wiki/Manajemen_File_di_ALELEON_Supercomputer Upload / Download File HOME]]'''
** Direktori standar sesi Jupyter adalah $HOME user.
|-
|-
!3
!<big>3</big>
|-
|-
|
|
{| class="wikitable"
{| class="wikitable"
|[[Berkas:New Pinnedapps jupyter.png|nirbing|116x116px]]
|[[Berkas:New Pinnedapps jupyter.png|nirbing|116x116px]]
|Buka pinned apps '''Jupyter'''  di homepage EFIRO.
|Klik app '''<code><big>Jupyter</big></code>'''  di homepage EFIRO.
 
* ''atau'' menu '''<big><code>Apps > Jupyter</code></big>'''
|}
|}
|-
|-
!4
!<big>4</big>
|-
|-
|Isi formulir untuk memulai sesi Jupyter dengan panduan berikut:
|Isi formulir untuk memulai sesi Jupyter dengan panduan berikut:
Baris 774: Baris 836:
|-
|-
|Pilih sesuai kebutuhan:
|Pilih sesuai kebutuhan:
*<code>torti</code> -> interactive node CPU
*<code>'''torti'''</code> -> interactive node CPU [[Berkas:GMB CPU icon.png|nirbing|60x60px]]
*<code>tilla</code> -> interactive node GPU
*<code>'''tilla'''</code> -> interactive node GPU [[Berkas:GMB GPU icon.png|nirbing|90x90px]]
|-
|-
!
!
Baris 781: Baris 843:
!<code>''Number of CPU thread(s)''</code>
!<code>''Number of CPU thread(s)''</code>
|-
|-
|Alokasi core CPU, range <code>2 - 32</code> untuk torti dan tilla.
|Alokasi core CPU, range <code><big>'''2 - 32'''</big></code>
|-
|-
!
!
Baris 787: Baris 849:
!<code>''Amount of memory/RAM (GB)''</code>
!<code>''Amount of memory/RAM (GB)''</code>
|-
|-
|Alokasi RAM dalam satuan GB, range <code>1 - 64</code> untuk torti dan tilla.
|Alokasi RAM dalam satuan GB, range <code><big>'''1 - 64'''</big></code>
|-
|-
!
!
|-
|-
!''<code>Number of GPUs</code>''
!''<code>Number of GPUs</code> (apabila pilih partition tilla)''
|-
|-
|Jumlah GPU, isi angka <code>1</code> apabila pakai tilla
|Jumlah GPU, isi angka <code><big>'''1'''</big></code>
|-
|-
!
!
Baris 799: Baris 861:
!''<code>Number of hours</code>''
!''<code>Number of hours</code>''
|-
|-
|Waktu maksimal sesi Jupyter, range <code>1 - 72</code> untuk torti dan tilla'''.'''
|Waktu maksimal sesi Jupyter, range <code><big>'''1 - 72'''</big></code>
|-
|-
!
!
|-
|-
|'''Form CPU, RAM, GPU, dan hours mempunyai limit''' berdasarkan:
|Form CPU, RAM, GPU, dan hours '''punya limit''' berdasarkan:
*Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']].
*Sisa Core Hour user dan '''[<nowiki/>[[Limitasi Fair Usage ALELEON Supercomputer|Fair Usage Limit]]]'''  
*Spesifikasi sistem dan software komputasi.
*Spesifikasi sistem dan software komputasi.
Langkah melihat limit:
Untuk melihat limit:
*Buka menu '''Clusters > Aleleon Shell Access'''
 
[[Berkas:Shellaccess.png|nirbing|200x200px]]
# Buka menu '''<code><big>Apps > Aleleon Shell Access</big></code>'''
*Jalankan perintah:
# Jalankan perintah:
'''$ slimit-python'''
 
$ '''slimit-python'''
[[Berkas:GMB warning wololo.png|nirbing|50x50px]] '''Note untuk saat ini:'''
*''Jalankan ketika tidak ada job user yang berjalan atau antri.''
*''Sementara berlaku untuk akun perseorangan saja.''
|-
|-
!
!
Baris 816: Baris 882:
!''<code>Choose how to launch Jupyter</code>''
!''<code>Choose how to launch Jupyter</code>''
|-
|-
|Pilih <code>Anaconda/Mamba</code>
|Pilih <code>'''Anaconda/Mamba'''</code>
|-
|-
!
!
Baris 838: Baris 904:
|[[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_Conda_Env_dengan_GPU? Menjalankan Conda Env dengan 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.
|-
|-
!
!
Baris 862: Baris 929:
*
*
|-
|-
!5
!<big>5</big>
|-
|-
|Klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter.
|Klik tombol '''<code><big>Launch</big></code>''' untuk memulai sesi Jupyter:
*User akan diarahkan ke halaman '''<code>My Interactive Sessions</code>'''.
*User akan diarahkan ke halaman '''<code><big>My Interactive Sessions</big></code>'''
*Tunggu hingga sesi Jupyter siap diakses.
*Tunggu hingga sesi Jupyter siap diakses.
[[Berkas:Jupyternotebookqueue.png|nirbing|500x500px]]
[[Berkas:Jupyternotebookqueue.png|nirbing|500x500px]]
|-
|-
!6
!<big>6</big>
|-
|-
|Apabila status '''Running''', klik tombol '''<code>Connect to Jupyter</code>'''.
|Apabila status '''Running''', klik tombol '''<code><big>Connect to Jupyter</big></code>'''
*Sistem mulai menghitung Core Hour!
*'''Sistem mulai menghitung Core Hour!'''
*Untuk menghentikan sesi yang sedang running, klik tombol '''<code>Cancel</code>'''
*Untuk menghentikan sesi yang running, klik tombol '''<code><big>Cancel</big></code>'''
[[Berkas:Newjupyter120124.png|nirbing|500x500px]]
[[Berkas:Newjupyter120124.png|nirbing|500x500px]]
|-
|-
!7
!<big>7</big>
|-
|-
|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'']]
|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
!<big>8</big>
|-
|-
|User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
|User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
*Menu '''<code>My Interactive Sessions</code>''' pada homepage EFIRO.
*Menu '''<code><big>My Interactive Sessions</big></code>'''  
*Kolom '''<code>Active interactive sessions</code>''' pada homepage EFIRO.
*Kolom '''<code><big>Active interactive sessions</big></code>''' di homepage EFIRO.
|-
|-
!---
!---
|}
|}
=='''Pelaporan Kendala dan Support'''==
=='''''Pelaporan Kendala dan Support'''''==
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini.
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini.



Revisi terkini sejak 4 Mei 2025 16.01

Logo Python Anaconda Mamba ALELEON tp.png

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:

  1. Buat conda environment untuk menampung instalasi package.
  2. Instal package Python yang diperlukan di conda env tersebut.
  3. 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 -

Anaconda transparent logo.png

0
EOD Apps Shell full.png
Menggunakan terminal!
  • User EFIRO klik app Aleleon Shell Access
  • atau menu Apps > Aleleon Shell Access
1
Pilih dan aktifkan modul Anaconda untuk membuat conda env:
  • Ingat atau catat modul Anaconda yang dipakai.
  • Kedepannya digunakan untuk mengaktifkan conda env ini.
$ module load [nama-modul-anaconda]
Daftar nama modul Anaconda 3
Versi Nama Modul Versi Py default
2024-02-1 Anaconda3/2024.02-1 3.11.7
2023.07-2 Anaconda3/2023.07-2 3.11.4
2022.05 Anaconda3/2022.05 3.9.12
2021.05 Anaconda3/2021.05 3.8.8
2020.11 Anaconda3/2020.11 3.8.5
2
GMB warning wololo.png Package apa yang akan diinstal user di conda env ini?
  • Beberapa package membutuhkan Python versi spesifik
  • Gunakan opsi 3B untuk membuat conda env.

Update 29 April 2025

Package yang diketahui butuh Python versi spesifik
Package Versi Python
TensorFlow Lihat [TensorFlow Tested Build Configurations]
PyTorch 3.9 - 3.12
AutoGluon 3.9 - 3.12
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:
  • Untuk mengingat modul yang digunakan membuat conda env.
  • Contoh user memilih modul Anaconda3/2024-02-1
  • Gunakan nama conda env seperti A2024-skripsi
---
- Membuat conda env dengan Mamba -

Mamba transparent logo.png

0
EOD Apps Shell full.png
Menggunakan terminal!
  • User EFIRO klik app Aleleon Shell Access
  • atau menu Apps > Aleleon Shell Access
1
Pilih dan aktifkan modul Mamba untuk membuat conda env:
  • Ingat atau catat modul Mamba yang dipakai.
  • Kedepannya digunakan untuk mengaktifkan conda env ini.
$ module load [nama-modul-mamba]
Daftar nama modul Mamba
Versi Nama Modul Versi Py default
23.11.0-0 Mamba/23.11.0-0 3.10.13
2
GMB warning wololo.png Package apa yang akan diinstal user di conda env ini?
  • Beberapa package membutuhkan Python versi spesifik
  • Gunakan opsi 3B untuk membuat conda env.

Update 29 April 2025

Package yang diketahui butuh Python versi spesifik
Package Versi Python
TensorFlow Lihat [TensorFlow Tested Build Configurations]
PyTorch 3.9 - 3.12
AutoGluon 3.9 - 3.12
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:
  • Untuk mengingat modul yang digunakan membuat conda env.
  • Contoh user memilih modul Mamba/23.11.0-0
  • Gunakan nama conda env seperti M23-skripsi
---

Mengaktifkan Conda Env dan Instalasi Package

GMB warning wololo.png Ada baiknya user melengkapi instalasi package sebelum menjalankan komputasi karena:

  1. Batch job -> supaya script Python berjalan tanpa error missing package.
  2. 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
EOD Apps Shell full.png
Menggunakan terminal!
  • User EFIRO klik app Aleleon Shell Access
  • atau menu Apps > Aleleon Shell Access
1
Muat modul PPM yang digunakan untuk membuat conda env:
$ module load [Anaconda-atau-Mamba ....]

Apabila lupa dengan nama conda env, cari dengan:

$ conda env list

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].
  • Halaman terpisah karena daftar terlalu panjang ._.
4
Apabila hendak menonaktfkan conda env:
(env)$ conda deactivate

Pilihan Menjalankan Komputasi

Berikut opsi menjalankan komputasi Python dengan conda env, pilih sesuai kebutuhan:

  1. [Batch job] -> menjalankan script Python siap jalan yang tidak membutuhkan interaksi user melalui manajemen Slurm di [compute node].
  2. [Sesi Jupyter] -> menjalankan sesi interaktif Jupyter Lab atau Notebook di [interactive node].

Apakah Bisa Menjalankan Job?

Bagi akun yang berjalan dengan kredit Core Hour seperti akun perseorangan, ada baiknya untuk memantau sisa Core Hour sebelum menjalankan job:

Memantau Sisa Core Hour
0
EOD Apps Shell full.png
Menggunakan terminal!
  • User EFIRO klik app Aleleon Shell Access
  • atau menu Apps > Aleleon Shell Access
1A
Untuk akun perseorangan, jalankan perintah:
$ sausage

Untuk akun institusi dengan kredit Core Hour, ikuti petunjuk admin.

1B
Untuk mengetahui limit alokasi komputasi job user:
  • Langkah batch job terminal, lihat step 2B.
  • Langkah batch job EFIRO Job Composer, lihat step 5B.
2
Apabila butuh beli kredit Core Hour, lihat [top up Kredit Core Hour]
---

---

Menjalankan Package Python versi GPU?

Perhatikan hal berikut apabila user menginstal package Python versi CUDA dan hendak menggunakan compute / interactive node GPU:

  1. Package membutuhkan jenis dan versi library NVIDIA sesuai seperti CUDA, cuDNN untuk dapat berjalan di GPU NVIDIA.
  2. Umumnya (walau tidak semua) package Python CUDA saat ini juga menginstal package NVIDIA yang dibutuhkan.
  3. Berikut metode mengecek dan melengkapi library NVIDIA yang dibutuhkan package:
Mengecek Kelengkapan Package NVIDIA
0
EOD Apps Shell full.png
Menggunakan terminal!
  • User EFIRO klik app Aleleon Shell Access
  • atau menu Apps > Aleleon Shell Access
1
[Aktifkan conda env] yang akan digunakan.
2
Cek ketersediaan library CUDA di conda env tersebut:
- Apabila instal package dengan pip
(env)$ pip list | grep cuda

- Apabila instal package dengan conda
(env)$ conda list | grep cuda
3A
Apabila ada output:
Conda env siap digunakan.
  • User tidak perlu memuat modul CUDA.
3B
GMB warning wololo.png Apabila tidak ada output:
User harus memuat modul CUDA dengan ketentuan:
  1. Perhatikan versi CUDA yang dibutuhkan package.
  2. Lihat dokumentasi package tersebut.

(klik expand / kembangkan)

- Tutorial memuat dan daftar modul CUDA -

Logo CUDA ALELEON tp.png

Opsi Komputasi Batch Job
Tambah perintah berikut pada submit script:
...
# Memuat modul
module load ${PM}
module load [Nama-modul-CUDA]
...
Opsi Komputasi Jupyter
Isi nama modul pada kolom Software Modules
DAFTAR MODUL CUDA ALELEON
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:
  • Hubungi tim admin di support@efisonlt.com
---
---

---

Batch Job

menjalankan script Python siap jalan yang tidak membutuhkan interaksi user melalui manajemen Slurm di [compute node].

  • GMB warning wololo.pngPerhatikan 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 -

Sbatch terminal display rev2.png

Tutorial ini mengasumsikan user familiar dengan terminal Linux
0
EOD Apps Shell full.png
Menggunakan terminal!
  • User EFIRO klik app Aleleon Shell Access
  • atau menu Apps > Aleleon Shell Access
1
Lakukan persiapan:
Pastikan package lengkap pada conda env yang akan digunakan:
  • Package tidak lengkap akan menyebabkan job gagal berjalan.

Siapkan file komputasi yang dibutuhkan:

2A
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi:
  • Nama file bebas dengan format .sh, contoh submit.sh
  • Biasanya submit script berada satu folder dengan file komputasi.
$ nano submit.sh
atau vim
Contoh template Submit Script:
  • Ikuti petunjuk NOTES dan alur script di dalamnya.

Klik expand / kembangkan

- Template submit script Conda Environment versi CPU -

GMB CPU icon.png

#!/bin/bash

# -----------------------------------------------------
# Template SLURM Submit Script
# Python dengan Conda Environment (CPU) | rev.210125
#
# NOTES:
# 1. Isi bagian yang ditandai 4 garing (////).
# 2. Template ini bersifat referensi.
#    User dapat mengubah bagian yang perlu diubah.
# 3. Pastikan user sudah melengkapi conda environment.
# -----------------------------------------------------

# -----------------------------------------------------
# Alokasi komputasi SBATCH dan file input
# -----------------------------------------------------

# Alokasi jumlah core thread CPU
#SBATCH --ntasks=////

# Alokasi jumlah memori RAM (satuan GB)
#SBATCH --mem=////GB

# Alokasi limit waktu menjalankan job
# Format HH:MM:SS atau D-HH:MM:SS
#SBATCH --time=////

# Definisi file untuk menampung output terminal program
#SBATCH --output=result-%j.txt

# Definisi file untuk menampung output error log
#SBATCH --error=error-%j.txt

# Input nama modul package manager yang digunakan untuk membuat
# conda env user. Daftar nama:
# Anaconda3/2020.11   || Anaconda3/2021.05   || Anaconda3/2022.05 ||
# Anaconda3/2023.07-2 || Anaconda3/2024.02-1 || Mamba/23.11.0-0   ||
PM="////"

# Nama conda environment yang digunakan
CONDA_NAME="////"

# ----------------------------------------------------
# Script jalannya program
# ----------------------------------------------------

# Memuat modul
module load ${PM}

# Mengaktifkan Conda Environment
source activate ${CONDA_NAME}

# Tuliskan perintah menjalankan komputasi Python user
# contoh -> python3 [nama-file-python]
////
- Template submit script conda environment versi GPU -

GMB GPU icon.png

GMB warning wololo.pngNote:
...
module load ${PM}
module load [Nama-modul-CUDA]
...
#!/bin/bash

# -----------------------------------------------------
# Template SLURM Submit Script
# Python dengan Conda Environment (GPU) | rev.210125
#
# NOTES:
# 1. Isi bagian yang ditandai 4 garing (////).
# 2. Template ini bersifat referensi.
#    User dapat mengubah bagian yang perlu diubah.
# 3. Pastikan user sudah melengkapi conda environment.
# -----------------------------------------------------

# -----------------------------------------------------
# Alokasi komputasi SBATCH dan file input
# -----------------------------------------------------

# Partisi compute node GPU
#SBATCH --partition=ampere

# Alokasi jumlah core thread CPU
#SBATCH --ntasks=////

# Alokasi jumlah GPU
#SBATCH --gpus=////

# Alokasi jumlah memori RAM (satuan GB)
#SBATCH --mem=////GB

# Alokasi limit waktu menjalankan job
# Format HH:MM:SS atau D-HH:MM:SS
#SBATCH --time=////

# Definisi file untuk menampung output terminal program
#SBATCH --output=result-%j.txt

# Definisi file untuk menampung output error log
#SBATCH --error=error-%j.txt

# Input nama modul package manager yang digunakan untuk membuat
# conda env user. Daftar nama:
# Anaconda3/2020.11   || Anaconda3/2021.05   || Anaconda3/2022.05 ||
# Anaconda3/2023.07-2 || Anaconda3/2024.02-1 || Mamba/23.11.0-0   ||
PM="////"

# Nama conda environment yang digunakan
CONDA_NAME="////"

# ----------------------------------------------------
# Script jalannya program
# ----------------------------------------------------

# Memuat modul
module load ${PM} 

# Mengaktifkan Conda Environment
source activate ${CONDA_NAME}

# Tuliskan perintah menjalankan komputasi Python user
# contoh -> python3 [nama-file-python]
////
  • Untuk SBATCH notifikasi email status jalannya job lihat [Slurm Jojo]
2B
SBATCH komputasi (ntasks, mem, time, dll) punya limit berdasarkan:
  • Sisa Core Hour user dan [Fair Usage Limit]
  • Spesifikasi sistem dan software komputasi.

Untuk melihat limit, jalankan perintah berikut:

$ slimit-python

GMB warning wololo.png Note untuk saat ini:

  • Jalankan ketika tidak ada job user yang berjalan atau antri.
  • Sementara berlaku untuk akun perseorangan saja.
3
Jalankan job dengan perintah:
$ sbatch [nama-submit-script]

Contoh:
$ sbatch submit.sh
4
User dapat melihat status jalannya job dengan perintah:
$ squeue -ul $USER
Kolom ST atau STATE menunjukkan status jalannya job:
STATE Penjelasan
R (RUN) Job berjalan
PD (PENDING) Job tertahan, lihat [Daftar Job Reason]
CG (COMPLETING) Job selesai dan dalam proses clean-up
CA (CANCELED) Job dibatalkan user
PR (PREEMPETED) Job dibatalkan admin, alasan dikabarkan via email
S (SUSPENDED) Job ditahan admin, alasan dikabarkan via email
5
User dapat memantau file output dengan perintah Unix seperti:
  • ls, cat, more, tail, dll
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 -

Efiro jobcomposer display.png

1
[Login ke web EFIRO] ALELEON Supercomputer.
2
EOD Apps Job Composer full.png Klik app Job Composer di homepage EFIRO.
  • atau menu Apps > Job Composer
Jcnewjobmarked.pngPilih menu New Job > From Template
3
Buat ruang job untuk menjalankan komputasi:
Pilih template Anaconda Python yang diinginkan:
Nama Template Penjelasan
Conda Environment Python (CPU) Menjalankan conda env pada CPU
Conda Environment Python (GPU) Menjalankan conda env pada GPU
Kemudian Isi Job Name dan klik Create New Job

Jctemplate-2.png

4
Lakukan persiapan:
Pastikan package lengkap pada conda env yang akan digunakan:
  • Package tidak lengkap akan menyebabkan job gagal berjalan.
  • Akses terminal apabila butuh via menu Open Terminal

Siapkan file komputasi yang dibutuhkan di ruang job:

  • Pastikan ruang job yang dipilih adalah yang akan digunakan.
  • Upload / download / edit file via menu Edit Files
  • Upload / download file tunggal diatas 2GB gunakan [software FTP]

JC job menu.png

5A
Lengkapi Submit Script melalui tombol Open Editor
  • Submit script adalah 'formulir' untuk menjalankan job komputasi.
  • Ikuti petunjuk NOTES dan alur script di dalamnya.
  • Klik Save setiap kali mengubah script.

GMB warning wololo.png Bagi yang memilih template GPU:
  • Perhatikan apakah perlu memuat modul CUDA?
...
module load ${PM}
module load [Nama-modul-CUDA]
...
  • Untuk SBATCH notifikasi email status jalannya job lihat [Slurm Jojo]
5B
SBATCH komputasi (ntasks, mem, time, dll) punya limit berdasarkan:
  • Sisa Core Hour user dan [Fair Usage Limit]
  • Spesifikasi sistem dan software komputasi.

Untuk melihat limit, jalankan perintah berikut:

$ slimit-python

GMB warning wololo.png Note untuk saat ini:

  • Jalankan ketika tidak ada job user yang berjalan atau antri.
  • Sementara berlaku untuk akun perseorangan saja.
6
Jalankan job dengan klik tombol Submit

Kolom Status menunjukkan status jalannya job:
Status Arti
Not Submitted Job belum pernah dijalankan.
Running Job berjalan.
Queue Job mengantri dan belum berjalan.
Completed Job selesai berjalan.
Failed Job berhenti karena error atau di stop user.
Melihat alasan job yang queue:
Buka menu Apps > Active Jobs di homepage EFIRO. Ubah opsi All jobs ke Your Jobs. Klik simbol > untuk melihat status job yang pending pada kolom Reason. Arti reason lihat laman Daftar Job Reason ALELEON Supercomputer
7
Lihat output file komputasi pada kolom Folder Contents
  • Atau dengan membuka menu Edit Files
Kolom Folder Contents
8
Apabila user ingin menghentikan job yang berjalan, klik Stop
9
Untuk menghapus ruang job dan datanya:
  • Pilih ruang job yang akan dihapus.
  • Perhatikan opsi ini juga menghapus data di ruang job tersebut.
  • Klik menu Delete

JC delete menu.png

---

Sesi Jupyter

Menjalankan sesi interaktif Jupyter Lab atau Notebook di [interactive node].

(klik expand / kembangkan)

- Langkah Sesi Jupyter -

Efiro jupyter display.png

1
[Login ke web EFIRO] ALELEON Supercomputer.
2
Lakukan persiapan sebelum sesi Jupyter:
GMB warning wololo.png User PPM Mamba harus instal package Jupyter:
  1. Muat modul Mamba yang digunakan untuk membuat conda env.
  2. Aktifkan conda env yang akan digunakan.
  3. Instal package Jupyter:
(env)$ pip install jupyter jupyterlab
Untuk efisiensi sesi terkait batasan waktu dan konsumsi Core Hour:
  • Lengkapi instalasi package pada conda env yang akan dipakai.
  • Upload file besar lihat [Upload / Download File HOME]
    • Direktori standar sesi Jupyter adalah $HOME user.
3
New Pinnedapps jupyter.png Klik app Jupyter di homepage EFIRO.
  • atau menu Apps > Jupyter
4
Isi formulir untuk memulai sesi Jupyter dengan panduan berikut:
Choose Jupyter version
Pilih sesuai preferensi user, Jupyter Lab atau Notebook
Partition
Pilih sesuai kebutuhan:
  • torti -> interactive node CPU GMB CPU icon.png
  • tilla -> interactive node GPU GMB GPU icon.png
Number of CPU thread(s)
Alokasi core CPU, range 2 - 32
Amount of memory/RAM (GB)
Alokasi RAM dalam satuan GB, range 1 - 64
Number of GPUs (apabila pilih partition tilla)
Jumlah GPU, isi angka 1
Number of hours
Waktu maksimal sesi Jupyter, range 1 - 72
Form CPU, RAM, GPU, dan hours punya limit berdasarkan:
  • Sisa Core Hour user dan [Fair Usage Limit]
  • Spesifikasi sistem dan software komputasi.

Untuk melihat limit:

  1. Buka menu Apps > Aleleon Shell Access
  2. Jalankan perintah:
$ slimit-python

GMB warning wololo.png Note untuk saat ini:

  • Jalankan ketika tidak ada job user yang berjalan atau antri.
  • Sementara berlaku untuk akun perseorangan saja.
Choose how to launch Jupyter
Pilih Anaconda/Mamba
Choose Anaconda/Mamba version
Pilih versi yang digunakan untuk membuat conda env user.
Conda/Mamba environment directory
Isi nama conda env user, contoh: skripsi
Software Modules
Memuat modul software diluar conda env user , isi apabila ada.
GMB warning wololo.png Bagi user yang memilih partition tilla:
Environment setup
Memuat environment variable, isi apabila ada.
Additional Jupyter arguments
Memuat argumen tambahan Jupyter, isi apabila ada.
Email address
Notifikasi email untuk status mulai dan selesainya Jupyter.
  • Isi apabila berkenan.
5
Klik tombol Launch untuk memulai sesi Jupyter:
  • User akan diarahkan ke halaman My Interactive Sessions
  • Tunggu hingga sesi Jupyter siap diakses.

Jupyternotebookqueue.png

6
Apabila status Running, klik tombol Connect to Jupyter
  • Sistem mulai menghitung Core Hour!
  • Untuk menghentikan sesi yang running, klik tombol Cancel

Newjupyter120124.png

7
Pilih Notebook Python 3 untuk memulai sesi notebook Python 3.
Gunakan Notebook Python 3 untuk menjalankan kernel conda env user di Jupyter Notebook
Gunakan Notebook Python 3 untuk menjalankan kernel conda env user di Jupyter Lab
8
User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
  • Menu My Interactive Sessions
  • Kolom Active interactive sessions di homepage EFIRO.
---

Pelaporan Kendala dan Support

Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini.

Wiki-pelaporankendala.jpg

Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email:

support@efisonlt.com