Anaconda Python: Perbedaan antara revisi

Dari ALELEON by EFISON
(Rewrite halaman Python)
(→‎Modul Anaconda: menyelesaikan jupyter)
Baris 39: Baris 39:
| -
| -
|-
|-
|Anaconda 3 2022.05
| rowspan="2" |Anaconda 3 2022.05
|Anaconda3/2022.05
|Anaconda3/2022.05  
|V
| rowspan="2" |V
|V
| rowspan="2" |V
|V
| rowspan="2" |V
|V
| rowspan="2" |V
| -
| rowspan="2" | -
|-
|Anaconda3
|}
|}
=='''Alternatif Menjalankan Python di ALELEON Supercomputer'''==
=='''Alternatif Menjalankan Python di ALELEON Supercomputer'''==
Sebelum melakukan komputasi Python di ALELEON Supercomputer, user harus membuat '''Conda Environment''' supaya dapat mengisolasi dan mengatur instalasi package Python di dalamnya.  
Sebelum melakukan komputasi Python di ALELEON Supercomputer, user harus membuat '''Conda Environment''' supaya dapat mengisolasi dan mengatur instalasi package Python di dalamnya.  
{| class="wikitable"
{| class="wikitable"
|'''Note:'''''Instalasi package Python '''tidak''' mengurangi Kredit Core Hour user.''
|'''Note:'''
* ''Instalasi package Python '''tidak''' mengurangi Kredit Core Hour user.''
|}
|}
Kemudian, ALELEON Supercomputer menawarkan user untuk menjalankan komputasi Python melalui Conda Environment dengan skema '''job submission''' melalui scheduler atau '''''interaktif''''' melalui sesi Jupyter Notebook / Lab dengan detail penjelasan berikut:
Kemudian, ALELEON Supercomputer menawarkan user untuk menjalankan komputasi Python via Conda Environment dengan skema '''job submission''' melalui scheduler atau '''''interaktif''''' melalui sesi Jupyter Notebook / Lab dengan detail penjelasan berikut:
{| class="wikitable"
{| class="wikitable"
|-
|-
Baris 76: Baris 79:
|-
|-
|1
|1
|Aktifkan modul Anaconda, tim admin EFISON menyarankan menggunakan Anaconda3 terbaru. Untuk versi lainnya lihat '''subbab Modul Anaconda'''.
|Aktifkan modul Anaconda, tim admin EFISON menyarankan menggunakan Anaconda3 terbaru.
  $ module load '''Anaconda3'''
  $ module load '''Anaconda3'''
Apabila membutuhkan versi lainnya, lihat daftar modul Anacona pada '''subbab Modul Anaconda'''.
|-
|-
|2
|2
Baris 98: Baris 102:
Kemudian user dapat melakukan instalasi package melalui '''[https://pip.pypa.io/en/stable/cli/pip_install/ pip install]:'''
Kemudian user dapat melakukan instalasi package melalui '''[https://pip.pypa.io/en/stable/cli/pip_install/ pip install]:'''
  $ pip install '''''<nama-package>'''''
  $ pip install '''''<nama-package>'''''
|-
|4B
|
=== Instalasi pip Jupyter ===
User dapat sekaligus melakukan instalasi Jupyter dan Jupyter Lab apabila kedepannya membutuhkan sesi interaktif Jupyter Notebook / Lab:
# pip install jupyter
# pip install jupyterlab
|-
|-
| colspan="2" |
| colspan="2" |
Baris 106: Baris 117:
  $ conda-env list
  $ conda-env list
|}
|}
== '''Menjalankan R Melalui Job Submission''' ==


=='''Menjalankan Python dengan Sesi Interaktif Jupyter'''==
=='''Menjalankan Python dengan Sesi Interaktif Jupyter'''==
Terdapat 3 langkah besar untuk menjalankan komputasi Python melalui sesi interaktif Jupyter yaitu:
#[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#1_-_Login_Web_EFIRO '''Login ke EFIRO'''] karena fitur ini hanya bisa diakses melalui EFIRO.
#Membuat Conda Environment yang sudah terdapat package Jupyter dan package sesuai kebutuhan komputasi user.
#Mengisi formulir sesi interaktif Jupyter Notebook atau Lab.
Berikut adalah langkah untuk memulai sesi Jupyter menggunakan Conda Environment yang dibuat user:
{| class="wikitable"
{| class="wikitable"
|+Memulai sesi Jupyter
|'''1'''
|'''1'''
|Buka menu dashboard EFIRO '''<code>Interactive Apps</code> > <code>Jupyter Notebook</code>'''
|Buka menu '''Interactive Apps''' kemudian user bebas memilih menggunakan Jupyter Notebook atau Lab.
 
[[Berkas:Efirojupyternotebooklab.png|nirbing|238x238px]]
[[Berkas:Interactive apps JN.png|nirbing|200x200px]]
|-
|-
|'''2'''
|'''2'''
|User mengisi formulir untuk memulai sesi Jupyter Notebook. Terdapat dua skenario pengisian formulir untuk menjalankan komputasi Python yaitu dengan '''CPU atau plus akselerasi GPU'''.  
|User mengisi formulir untuk memulai sesi Jupyter Notebook. Terdapat dua pilihan pengisian formulir yaitu menggunakan '''Partisi Torti (CPU)''' atau '''Partisi Tilla (dengan akselerasi GPU)'''.  
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
!Panduan Formulir Menjalankan Jupyter Notebook CPU
!Panduan Formulir Menggunakan Partisi Torti (CPU)
|-
|-
|
|
*'''Partition'''
*'''Partition'''
**''Pilih '''torti'''''
**Pilih '''torti'''
**Alokasi hardware maksimal 16 core CPU (dengan RAM 30GB)
*'''Number of CPU Cores'''
*'''Number of CPU Cores'''
**Alokasi jumlah core CPU yang akan digunakan, isi sesuai keinginan user
**Alokasi jumlah core CPU yang akan digunakan, isi sesuai keinginan user
**Minimal: '''1'''
**Minimal: '''1'''
**Maksimal: '''16'''
**Maksimal: '''32'''
*'''Number of GPUs'''
*'''Number of GPUs'''
**''kosongkan''
**''kosongkan''
*'''Number of hours'''
*'''Number of hours'''
**Durasi sesi Jupyter Notebook dalam satuan jam, isi sesuai keinginan user
**Durasi sesi Jupyter dalam satuan jam, isi sesuai keinginan user
**Minimal: '''1'''
**Minimal: '''1'''
**Maksimal: '''336'''
**Maksimal: '''72'''
*'''Anaconda Selection'''
*'''Anaconda Selection'''
**''Bebas pilih versi apapun''
**''Pilih versi terbaru''
**atau pilih versi Anaconda yang digunakan saat membuat Conda Environment user
*'''Conda Environment Directory'''  
*'''Conda Environment Directory'''  
**Isi dengan alamat direktori Conda Environment user yang sudah terinstal Jupyter.
**Isi dengan alamat direktori Conda Environment user yang akan digunakan dengan format:
**Contoh: '''''<code>$HOME/.conda/envs/skripsi</code>'''''
'''''<code>$CONDA/<nama-conda-env></code>'''''
*'''Software Modules'''
*'''Software Modules'''
**''kosongkan''
**''kosongkan''
Baris 146: Baris 162:
**Sistem akan mengirim notifikasi ke email user saat sesi Jupyter Notebook sudah siap diakses.
**Sistem akan mengirim notifikasi ke email user saat sesi Jupyter Notebook sudah siap diakses.
**Apabila membutuhkan, ''isi dengan email user''
**Apabila membutuhkan, ''isi dengan email user''
|-
|User dapat menghitung penggunaan kredit CPU Core Hour dengan rumus:
* CPU Core Hour terpakai = '''Number of CPU Cores * Number of hours'''
|}
|}
{| class="wikitable mw-collapsible mw-collapsed"
{| class="wikitable mw-collapsible mw-collapsed"
!Panduan Formulir Menjalankan Jupyter Notebook GPU
!Panduan Formulir Menggunakan Partisi Tilla (GPU)
|-
|-
|
|
*'''Partition'''
*'''Partition'''
**''Pilih '''tilla'''''
**Pilih '''tilla'''
**Alokasi hardware maksimal 12 core CPU dan 1 GPU (dengan RAM 64GB)
*'''Number of CPU Cores'''
*'''Number of CPU Cores'''
**Alokasi jumlah core CPU yang akan digunakan, isi sesuai keinginan user
**Alokasi jumlah core CPU yang akan digunakan, isi sesuai keinginan user
**Minimal: '''1'''
**Minimal: '''1'''
**Maksimal: '''12'''
**Maksimal: '''32'''
*'''Number of GPUs'''
*'''Number of GPUs'''
**Isi: '''1'''
**Isi: '''1'''
Baris 166: Baris 178:
**Durasi sesi Jupyter Notebook dalam satuan jam, isi sesuai keinginan user
**Durasi sesi Jupyter Notebook dalam satuan jam, isi sesuai keinginan user
**Minimal: '''1'''
**Minimal: '''1'''
**Maksimal: '''336'''
**Maksimal: '''72'''
*'''Anaconda Selection'''
*'''Anaconda Selection'''
**''Bebas pilih versi apapun''
**''Pilih versi terbaru''
**atau pilih versi Anaconda yang digunakan saat membuat Conda Environment user
*'''Conda Environment Directory'''
*'''Conda Environment Directory'''  
**Isi dengan alamat direktori Conda Environment user yang akan digunakan dengan format:
**Isi dengan alamat direktori Conda Environment user yang sudah terinstal Jupyter.
'''''<code>$CONDA/<nama-conda-env></code>'''''
**Contoh: '''''<code>$HOME/.conda/envs/skripsi</code>'''''
*'''Software Modules'''
*'''Software Modules'''
**Isi: '''''<code>cuda/11.2-cuDNN8.1.1</code>'''''
**Pada bagian ini user memasukkan nama modul untuk NVIDIA CUDA. Terdapat dua alternatif:
***Mengisi modul CUDA versi terbaru
***atau memilih modul CUDA versi lainnya apabila dibutuhkan oleh package Python user.
***Lihat daftar modul CUDA pada [https://wiki.efisonlt.com/wiki/Katalog_Software_ALELEON_Supercomputer#Modul_NVIDIA_CUDA_Toolkit_(Standalone) '''Daftar Modul CUDA Toolkit ALELEON Supercomputer'''].
*'''Environment Setup'''
*'''Environment Setup'''
**''kosongkan''
**''kosongkan''
Baris 180: Baris 194:
**Sistem akan mengirim notifikasi ke email user saat sesi Jupyter Notebook sudah siap diakses.
**Sistem akan mengirim notifikasi ke email user saat sesi Jupyter Notebook sudah siap diakses.
**Apabila membutuhkan, ''isi dengan email user''
**Apabila membutuhkan, ''isi dengan email user''
|-
|User dapat menghitung penggunaan kredit CPU Core Hour dan GPU Hour dengan rumus:
* CPU Core Hour terpakai = '''Number of CPU Cores * Number of hours'''
* GPU Hour terpakai = '''Number of GPUs * Number of hours'''
|}
|}
|-
|-
|'''3'''
|'''3'''
|Apabila formulir sudah terisi, klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter Notebook. User akan diarahkan ke halaman ''My Interactive Sessions''. Tunggu hingga sesi Jupyter Notebook user siap diakses.[[Berkas:JNqueue.png|nir|jmpl|Status sesi Jupyter Notebook mengantri menunggu alokasi hardware]]
|Apabila formulir sudah terisi, klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter. User akan diarahkan ke halaman ''My Interactive Sessions''. Tunggu hingga sesi Jupyter user siap diakses.[[Berkas:JNqueue.png|nir|jmpl|Status sesi Jupyter Notebook mengantri menunggu alokasi hardware]]
|-
|-
|'''4'''
|'''4A'''
|
|Apabila status menunjukkan Running atau kolom berwarna hijau, klik <code>'''Connect to Jupyter'''</code>. Perlu diperhatikan bahwa sistem mulai menghitung Kredit Core Hour saat status Jupyter menunjukkan running.[[Berkas:JNrun.png|nir|jmpl|Sesi Jupyter Notebook siap diakses. ]]
=== Memulai Sesi Jupyter Notebook ===
Apabila status menunjukkan Running atau kolom berwarna hijau Klik '''<code>Connect to Jupyter</code>'''.[[Berkas:JNrun.png|nir|jmpl|Sesi Jupyter Notebook siap diakses. Klik tombol '''<code>Connect to Jupyter</code>.''']]
 
{| class="wikitable"
|'''Note:'''
* Perlu diketahui bahwa sistem menghitung Kredit Core Hour saat sesi Jupyter Notebook berjalan.
|}
|-
|-
|'''5'''
|'''4B'''
|
|
=== Menghentikan (Stop / Cancel) Sesi Jupyter Notebook ===
=== Menghentikan (Stop / Cancel) Sesi Jupyter ===
User dapat menghentikan sesi Jupyter Notebook yang sedang berjalan melalui menu dashboard <code>'''EFIRO Jobs'''</code> > <code>'''Active Jobs'''</code>.
User dapat menghentikan sesi Jupyter yang sedang berjalan dengan klik tombol '''<code>Delete</code>'''.
 
---
|}
|}



Revisi per 17 Mei 2023 12.42

ALELEON Supercomputer menggunakan suite Anaconda dan Conda Environment untuk komputasi yang membutuhkan environment Python. Anaconda adalah suite katalog packages Python dan R untuk komputasi data science dan machine learning.

W00t!

Halaman ini sedang dalam proses penulisan ulang. Penulisan selesai ketika user tidak melihat W00t! ini.

Modul Anaconda

Berikut adalah detail versi Anaconda yang tersedia secara global di ALELEON Supercomputer:

Modul Anaconda
Versi Nama modul Modul

DEFAULT

Dukungan hardware
CPU GPU OMP

Threading

MPI

multi-node

Anaconda 3 2020.11 Anaconda3/2020.11 - V V V -
Anaconda 3 2021.05 Anaconda3/2021.05 - V V V -
Anaconda 3 2022.05 Anaconda3/2022.05 V V V V -
Anaconda3

Alternatif Menjalankan Python di ALELEON Supercomputer

Sebelum melakukan komputasi Python di ALELEON Supercomputer, user harus membuat Conda Environment supaya dapat mengisolasi dan mengatur instalasi package Python di dalamnya.

Note:
  • Instalasi package Python tidak mengurangi Kredit Core Hour user.

Kemudian, ALELEON Supercomputer menawarkan user untuk menjalankan komputasi Python via Conda Environment dengan skema job submission melalui scheduler atau interaktif melalui sesi Jupyter Notebook / Lab dengan detail penjelasan berikut:

Menjalankan Python melalui Job Submission:
Menjalankan R dengan sesi interaktif Jupyter:

Membuat Conda Environment

Berikut adalah langkah untuk membuat Conda Environment di ALELEON Supercomputer:

Membuat Conda Environment
0A Instalasi package dilakukan melalui terminal.
0B Bagi user EFIRO, buka terminal melalui dashboard EFIRO menu Clusters > Aleleon Shell Access.

Shellaccess.png

1 Aktifkan modul Anaconda, tim admin EFISON menyarankan menggunakan Anaconda3 terbaru.
$ module load Anaconda3

Apabila membutuhkan versi lainnya, lihat daftar modul Anacona pada subbab Modul Anaconda.

2 Buat Conda Environment secara default di direktori HOME dengan format perintah:
$ conda create --name <nama-conda-environment>
Contoh:
$ conda create --name tensortest
3 Admin EFISON merekomendasikan user untuk mengaktifkan Conda Environment melalui perintah source activate:
$ source activate $CONDA/<nama-conda-environment>
Contoh:
$ source activate $CONDA/tensortest
  • Pada contoh di atas, Conda Environment tensortest aktif ditandai dengan munculnya tulisan tensortest pada bash terminal user:
(tensortest) [wololo@login ~]$
4A Tim admin menyarankan user untuk melakukan instalasi package Python (seperti Tensorflow, PyTorch, Numpy, dll) yang dibutuhkan melalui pip install. Sebelumya lakukan instalasi pip dengan conda:
$ conda install pip

Kemudian user dapat melakukan instalasi package melalui pip install:

$ pip install <nama-package>
4B

Instalasi pip Jupyter

User dapat sekaligus melakukan instalasi Jupyter dan Jupyter Lab apabila kedepannya membutuhkan sesi interaktif Jupyter Notebook / Lab:

# pip install jupyter
# pip install jupyterlab

Mengakses Kembali Conda Environment User

Ketika user ingin kembali mengakses Conda Environment yang dibuat lakukan langkah 1 dan 3.

Apabila lupa dengan nama dan direktori Conda Environment, user dapat melihat semua Conda Environment yang dibuat dengan perintah

$ conda-env list

Menjalankan R Melalui Job Submission

Menjalankan Python dengan Sesi Interaktif Jupyter

Terdapat 3 langkah besar untuk menjalankan komputasi Python melalui sesi interaktif Jupyter yaitu:

  1. Login ke EFIRO karena fitur ini hanya bisa diakses melalui EFIRO.
  2. Membuat Conda Environment yang sudah terdapat package Jupyter dan package sesuai kebutuhan komputasi user.
  3. Mengisi formulir sesi interaktif Jupyter Notebook atau Lab.

Berikut adalah langkah untuk memulai sesi Jupyter menggunakan Conda Environment yang dibuat user:

Memulai sesi Jupyter
1 Buka menu Interactive Apps kemudian user bebas memilih menggunakan Jupyter Notebook atau Lab.

Efirojupyternotebooklab.png

2 User mengisi formulir untuk memulai sesi Jupyter Notebook. Terdapat dua pilihan pengisian formulir yaitu menggunakan Partisi Torti (CPU) atau Partisi Tilla (dengan akselerasi GPU).
Panduan Formulir Menggunakan Partisi Torti (CPU)
  • Partition
    • Pilih torti
  • Number of CPU Cores
    • Alokasi jumlah core CPU yang akan digunakan, isi sesuai keinginan user
    • Minimal: 1
    • Maksimal: 32
  • Number of GPUs
    • kosongkan
  • Number of hours
    • Durasi sesi Jupyter dalam satuan jam, isi sesuai keinginan user
    • Minimal: 1
    • Maksimal: 72
  • Anaconda Selection
    • Pilih versi terbaru
  • Conda Environment Directory
    • Isi dengan alamat direktori Conda Environment user yang akan digunakan dengan format:
$CONDA/<nama-conda-env>
  • Software Modules
    • kosongkan
  • Environment Setup
    • kosongkan
  • Email Address
    • Sistem akan mengirim notifikasi ke email user saat sesi Jupyter Notebook sudah siap diakses.
    • Apabila membutuhkan, isi dengan email user
Panduan Formulir Menggunakan Partisi Tilla (GPU)
  • Partition
    • Pilih tilla
  • Number of CPU Cores
    • Alokasi jumlah core CPU yang akan digunakan, isi sesuai keinginan user
    • Minimal: 1
    • Maksimal: 32
  • Number of GPUs
    • Isi: 1
  • Number of hours
    • Durasi sesi Jupyter Notebook dalam satuan jam, isi sesuai keinginan user
    • Minimal: 1
    • Maksimal: 72
  • Anaconda Selection
    • Pilih versi terbaru
  • Conda Environment Directory
    • Isi dengan alamat direktori Conda Environment user yang akan digunakan dengan format:
$CONDA/<nama-conda-env>
  • Software Modules
    • Pada bagian ini user memasukkan nama modul untuk NVIDIA CUDA. Terdapat dua alternatif:
  • Environment Setup
    • kosongkan
  • Email Address
    • Sistem akan mengirim notifikasi ke email user saat sesi Jupyter Notebook sudah siap diakses.
    • Apabila membutuhkan, isi dengan email user
3 Apabila formulir sudah terisi, klik tombol Launch untuk memulai sesi Jupyter. User akan diarahkan ke halaman My Interactive Sessions. Tunggu hingga sesi Jupyter user siap diakses.
Status sesi Jupyter Notebook mengantri menunggu alokasi hardware
4A Apabila status menunjukkan Running atau kolom berwarna hijau, klik Connect to Jupyter. Perlu diperhatikan bahwa sistem mulai menghitung Kredit Core Hour saat status Jupyter menunjukkan running.
Sesi Jupyter Notebook siap diakses.
4B

Menghentikan (Stop / Cancel) Sesi Jupyter

User dapat menghentikan sesi Jupyter yang sedang berjalan dengan klik tombol Delete.

User dapat mengunjungi halaman My Interactive Sessions melalui menu di dasboard EFIRO.

Interactivesession.png

Default Notebook untuk Python

User dapat menjalankan komputasi Python pada Notebook default yaitu Python 3 (ipykernel).

  • User juga dapat melakukan instalasi package (via pip atau conda) di Notebook.
  • Package akan terinstal di dalam Conda Environment user yang digunakan pada sesi Jupyter Notebook tersebut.
Python 3 adalah kernel default Notebook di Jupyter ALELEON Supercomputer.

Upload Data ke Jupyter

User dapat melakukan upload data di Jupyter, akan tetapi dengan limit ukuran upload 2GB per file. Gunakan aplikasi FTP apabila user hendak mengupload file tunggal diatas 2GB.

  • Jupyter pada ALELEON Supercomputer berada di direktori HOME user (dengan asumsi user membuat Conda Environment di direktori HOME).
  • Apabila mengggunakan aplikasi FTP, upload data ke direktori HOME user.