Komputasi dengan Container Apptainer: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) |
WilsonLisan (bicara | kontrib) (test) |
||
Baris 11: | Baris 11: | ||
== '''Pilihan Image Container''' == | == '''Pilihan Image Container''' == | ||
ALELEON Supercomputer menyediakan tiga pilihan: | ALELEON Supercomputer menyediakan tiga pilihan yaitu: | ||
* Image global siap pakai yang disediakan ALELEON Supercomputer | |||
* User melakukan pull image dari container registry | |||
* User membuat image sendiri | |||
=== Image Global === | === Image Global === | ||
Baris 121: | Baris 125: | ||
== '''Sesi Jupyter dengan Container''' == | == '''Sesi Jupyter dengan Container''' == | ||
{| class="wikitable" | |||
!Langkah Interactive Job Sesi Jupyter dengan Container | |||
[[Berkas:Efirojupyterlab.png|400x400px]] | |||
|- | |||
!1 | |||
|- | |||
| '''[https: / wiki.efisonlt.com wiki Menggunakan_ALELEON_Supercomputer_via_EFIRO#1_ |'''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#1_|_Login_Web_EFIRO Login ke web EFIRO]''' ALELEON Supercomputer. | |||
|- | |||
!2 | |||
|- | |||
|Buka app '''Jupyter''' [[Berkas:New Pinnedapps jupyter.png|nirbing|116x116px]] di homepage EFIRO. | |||
|- | |||
!3 | |||
|- | |||
|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 -> CPU saja | |||
**tilla -> CPU dan GPU | |||
{| class="wikitable" | |||
!Alokasi komputasi | |||
!torti | |||
!tilla | |||
|- | |||
|Number of CPU core(s) | |||
| colspan="2" |1 - 32 | |||
|- | |||
|Amount of memory/RAM (GB) | |||
| colspan="2" |1 - 64 | |||
|- | |||
|Number of GPUs | |||
| - | |||
|1 | |||
|- | |||
|Number of hours | |||
| colspan="2" |1 - 72 | |||
|- | |||
| colspan="3" |'''Pada akun perseorangan, sesi Jupyter tidak akan berjalan apabila:''' | |||
*Alokasi CPU * hours > sisa CPU Core Hour | |||
*Alokasi GPU * hours > sisa GPU Hour | |||
Cek sisa Core Hour dengan: | |||
#Buka app [[Berkas:Pinnedapps terminal.png|nirbing|116x116px]] di homepage EFIRO | |||
#Jalankan perintah '''<code>sausage</code>''' | |||
|} | |||
*'''Choose how to launch Jupyter''' -> ''silahkan pilih:'' | |||
**'''Container''' -> menggunakan image siap pakai dari ALELEON | |||
**'''Custom container''' -> menggunakan image yang dipull / buat user | |||
*'''Choose Anaconda version''' | |||
**''Pilih versi yang digunakan untuk membuat conda env user'' | |||
*'''Pilih image atau menyediakan direktori & nama image''' | |||
*'''Software modules''' -> ''kosongkan'' | |||
*'''Environment setup''' | |||
**''Memuat environment variable, isi apabila ada'' | |||
*'''Additional Jupyter arguments''' | |||
**Memuat argument tambahan Jupyter, isi apabila ada | |||
*'''Email address''' | |||
**''Notifikasi email untuk status mulai dan selesainya sesi Jupyter.'' | |||
**''Isi apabila berkenan.'' | |||
|- | |||
!4 | |||
|- | |||
|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|nir|jmpl|''Status sesi Jupyter mengantri menunggu alokasi hardware'']] | |||
|- | |||
!5 | |||
|- | |||
|Apabila status '''Running''', klik tombol '''<code>Connect to Jupyter</code>'''. | |||
*Sistem mulai menghitung Core Hour! | |||
[[Berkas:Newjupyter120124.png|nir|jmpl|''Sesi Jupyter siap diakses.'']]Untuk menghentikan sesi, klik tombol '''<code>Cancel</code>'''. | |||
|- | |||
!6 | |||
|- | |||
|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'']] | |||
|- | |||
!7 | |||
|- | |||
|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 15 Mei 2024 09.53
Berkas:Python apptainer logo.png
Halaman ini menjelaskan komputasi Python dengan container Apptainer di ALELEON Supercomputer. Apptainer (dahulu Singularity) adalah container yang dirancang untuk sistem superkomputer / HPC.
Langkah Menjalankan Komputasi dan Limitasi
Terdapat 3 langkah utama:
- Memilih atau menyiapkan image container yang digunakan.
- Melengkapi image container dengan Python package apabila dibutuhkan.
- Saat ini container hanya dapat dijalankan dengan app Jupyter
pada interactive node.
Pilihan Image Container
ALELEON Supercomputer menyediakan tiga pilihan yaitu:
- Image global siap pakai yang disediakan ALELEON Supercomputer
- User melakukan pull image dari container registry
- User membuat image sendiri
Image Global
Adalah image container yang disediakan oleh ALELEON Supercomputer dan siap pakai untuk sesi interaktif Jupyter:
Daftar Image Global yang tersedia | |
---|---|
Nama Image | Keterangan |
pytorch_23.08-py3.sif | Pytorch dari NVIDIA NGC Catalog |
tensorflow2.13_jupyter_cuda.sif | TensorFlow 2.13 custom dari admin ALELEON |
Melakukan Pull Image
User dapat melakukan pull image dari container registry manapun.
Kegiatan ini dilakukan pada terminal:
- Diakses melalui login SSH, atau
- Pada web EFIRO, buka app Aleleon Shell Access
Langkah Melakukan Pull Image dengan Apptainer |
---|
1 |
Muat modul Apptainer:
|
2 |
Lakukan pull dengan rumus:
Contoh pull TensorFlow 24.01-tf2-py3 dari NVIDIA NGC Catalog:
|
Membuat Image Sendiri
User juga dapat membuat image sendiri melalui sandbox Apptainer di ALELEON Supercomputer. Kegiatan ini dilakukan pada terminal:
Langkah Membuat Image Container dengan Apptainer |
---|
1 |
Muat modul Apptainer:
|
2 |
Buat sandbox dengan image sif:
|
3 |
Jalankan sanbox dengan memperbolehkan modifikasi
|
4 |
Lakukan modifikasi sesuai keinginan user
Apptainer> [command-untuk-modifikasi...] Apptainer> exit |
5 |
Bangun image baru dari sandbox tersebut:
|
Instalasi Python Package pada Image Container
User dapat menambah Python package pada image container dimana terinstal pada HOME user.
Kegiatan ini dilakukan pada terminal:
- Diakses melalui login SSH, atau
- Pada web EFIRO, buka app Aleleon Shell Access
Langkah Instalasi Package ke Image Container |
---|
1 |
Muat modul Apptainer:
|
2 |
Muat image container dengan rumus:
Apabila butuh GPU NVIDIA saat instalasi package, tambahkan flag --nv:
|
Apabila menggunakan image global yang disediakan, nama image menjadi:
Contoh -> |
3 |
Lakukan instalasi package dengan pip
|
Sesi Jupyter dengan Container
Langkah Interactive Job Sesi Jupyter dengan Container | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||||
2 | ||||||||||||||||||
Buka app Jupyter ![]() | ||||||||||||||||||
3 | ||||||||||||||||||
Isi formulir untuk memulai sesi Jupyter dengan panduan berikut:
| ||||||||||||||||||
4 | ||||||||||||||||||
Klik tombol Launch untuk memulai sesi Jupyter.
| ||||||||||||||||||
5 | ||||||||||||||||||
Apabila status Running, klik tombol Connect to Jupyter .
Cancel .
| ||||||||||||||||||
6 | ||||||||||||||||||
Pilih Notebook Python 3 untuk memulai sesi notebook Python 3. | ||||||||||||||||||
7 | ||||||||||||||||||
User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
|