Komputasi Python dengan Anaconda: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Job Submission Web EFIRO: test) |
WilsonLisan (bicara | kontrib) (→Interactive Job Jupyter: test) |
||
(22 revisi perantara oleh pengguna yang sama tidak ditampilkan) | |||
Baris 16: | Baris 16: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! | !Membuat Conda Environment | ||
|- | |||
!1 | |||
|- | |- | ||
|Pilih dan aktifkan modul Anaconda yang akan digunakan. | |Pilih dan aktifkan modul Anaconda yang akan digunakan. | ||
<code>$ '''module load ''[nama-modul-anaconda]'''''</code> | <code>$ '''module load ''[nama-modul-anaconda]'''''</code> | ||
{| class="wikitable" | {| class="wikitable" | ||
! colspan="2" |Daftar nama modul Anaconda | ! colspan="2" |Daftar nama modul Anaconda | ||
Baris 42: | Baris 41: | ||
|} | |} | ||
|- | |- | ||
| | !2 | ||
|- | |||
|Buat conda env di direktori HOME dan aktifkan dengan perintah: | |Buat conda env di direktori HOME dan aktifkan dengan perintah: | ||
$ '''conda create --name ''[nama-conda-env]'' pip''' | $ '''conda create --name ''[nama-conda-env]'' pip''' | ||
Baris 51: | Baris 51: | ||
|} | |} | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! | !Mengaktifkan Conda Environment dan Instalasi Package | ||
|- | |||
!0 | |||
|- | |- | ||
|''Aktifkan modul Anaconda yang digunakan untuk membuat conda env user.'' | |''Aktifkan modul Anaconda yang digunakan untuk membuat conda env user.'' | ||
|- | |- | ||
| | !1 | ||
|- | |||
|Aktifkan conda env dengan perintah: | |Aktifkan conda env dengan perintah: | ||
$ '''source activate ''[nama-conda-env]''''' | $ '''source activate ''[nama-conda-env]''''' | ||
Baris 62: | Baris 64: | ||
''Contoh mengaktifkan conda env 'skripsi''' | ''Contoh mengaktifkan conda env 'skripsi''' | ||
$ source activate '''skripsi''' | $ source activate '''skripsi''' | ||
|- | |||
!2 | |||
|- | |- | ||
|User dapat melihat daftar conda env yang dibuat sebelumnya dengan: | |User dapat melihat daftar conda env yang dibuat sebelumnya dengan: | ||
<code>$ '''conda env list'''</code> | <code>$ '''conda env list'''</code> | ||
|- | |- | ||
| | !3 | ||
|- | |||
|Lakukan instalasi package Python yang dibutuhkan dengan '''<code>pip</code>''' | |Lakukan instalasi package Python yang dibutuhkan dengan '''<code>pip</code>''' | ||
* Contoh [https://pytorch.org/get-started/locally/ instalasi PyTorch dengan pip]. | * Contoh [https://pytorch.org/get-started/locally/ instalasi PyTorch dengan pip]. | ||
* Contoh [https://www.tensorflow.org/install/pip instalasi TensorFlow dengan pip]. | * Contoh [https://www.tensorflow.org/install/pip instalasi TensorFlow dengan pip]. | ||
|- | |- | ||
| | !4 | ||
|- | |||
|Untuk menonaktifkan conda env jalankan perintah: | |Untuk menonaktifkan conda env jalankan perintah: | ||
<code>$ '''conda deactivate'''</code> | <code>$ '''conda deactivate'''</code> | ||
|} | |} | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! | !Manajemen Conda Environment | ||
|- | |||
|Deactivate conda env untuk melakukan manajemen ini | |||
|- | |- | ||
!a | |||
|- | |- | ||
|Untuk mengubah nama conda env: | |Untuk mengubah nama conda env: | ||
$ '''conda rename -n ''[nama-saat-ini]'' ''[nama-baru]''''' | $ '''conda rename -n ''[nama-saat-ini]'' ''[nama-baru]''''' | ||
Baris 87: | Baris 93: | ||
''Contoh mengubah nama env skripsi ke tesis'' | ''Contoh mengubah nama env skripsi ke tesis'' | ||
$ conda rename -n skripsi tesis | $ conda rename -n skripsi tesis | ||
|- | |||
!b | |||
|- | |- | ||
|Untuk menghapus conda env: | |Untuk menghapus conda env: | ||
Baris 107: | Baris 115: | ||
# Tutorial ini mengasumsikan user familiar dengan terminal Linux. | # Tutorial ini mengasumsikan user familiar dengan terminal Linux. | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! | !Langkah Job Submission Terminal | ||
[[Berkas:Sbatch Terminal.png|tepi|400x400px]] | [[Berkas:Sbatch Terminal.png|tepi|400x400px]] | ||
|- | |- | ||
| | !1 | ||
|Lakukan [https: | |- | ||
| Lakukan [https: / wiki.efisonlt.com wiki Menggunakan_ALELEON_Supercomputer_via_Terminal#1_ |[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#1_|_Login_SSH '''Login SSH'''] ke ALELEON Supercomputer. | |||
|- | |||
!2 | |||
|- | |- | ||
|Siapkan conda env dan file komputasi yang dibutuhkan. | |Siapkan conda env dan file komputasi yang dibutuhkan. | ||
* User dapat upload / download file dengan [[Upload File dengan Aplikasi FTP|'''software FTP''']]. | * User dapat upload / download file dengan [[Upload File dengan Aplikasi FTP|'''software FTP''']]. | ||
|- | |- | ||
!3 | |||
|- | |||
|Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi. | |Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi. | ||
* Nama file bebas dengan format .sh, contoh '''<code>submit.sh</code>''' | * Nama file bebas dengan format .sh, contoh '''<code>submit.sh</code>''' | ||
|- | |||
! | |||
|- | |- | ||
|Contoh template Submit Script, ikuti petunjuk NOTES didalamnya. | |Contoh template Submit Script, ikuti petunjuk NOTES didalamnya. | ||
Baris 245: | Baris 258: | ||
Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']]. | Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']]. | ||
|- | |- | ||
| | ! | ||
|- | |||
| | |||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Panduan nilai maksimal alokasi komputasi SBATCH | !Panduan nilai maksimal alokasi komputasi SBATCH | ||
Baris 251: | Baris 266: | ||
|Pada akun perseorangan, SLURM akan menahan job apabila: | |Pada akun perseorangan, SLURM akan menahan job apabila: | ||
* ntasks * time (jam) | * ntasks * time (jam) > sisa CPU Core Hour | ||
* gpus * time (jam) | * gpus * time (jam) > sisa GPU Hour | ||
Cek sisa Core Hour dengan perintah ''' | Cek sisa Core Hour dengan perintah <code>'''sausage'''</code> di terminal. | ||
|- | |- | ||
!'''Limitasi [[Limitasi Fair Usage ALELEON Supercomputer|fair policy usage]] untuk menjaga kualitas layanan''' | |||
{| class="wikitable" | {| class="wikitable" | ||
!ntasks | !total ntasks | ||
!mem | !total mem | ||
!gpus | !total gpus | ||
!time | !time | ||
|- | |- | ||
Baris 268: | Baris 283: | ||
|72:00:00 | |72:00:00 | ||
|} | |} | ||
User dapat mengajukan permintaan membuka limitasi melalui [https://efisonlt.com/pelaporan-kendala-aleleon-supercomputer/ '''form ini'''] | |- | ||
|User dapat mengajukan permintaan membuka limitasi melalui [https://efisonlt.com/pelaporan-kendala-aleleon-supercomputer/ '''form ini'''] | |||
|- | |||
! | |||
|- | |- | ||
|'''Versi CPU dan GPU:''' | |'''Versi CPU dan GPU:''' | ||
Baris 293: | Baris 311: | ||
|} | |} | ||
<nowiki>*</nowiki>Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | <nowiki>*</nowiki>Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | ||
|- | |||
! | |||
|- | |- | ||
|'''Versi MPI (dengan MPI4PY):''' | |'''Versi MPI (dengan MPI4PY):''' | ||
Baris 312: | Baris 332: | ||
* Info detail buka laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | * Info detail buka laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | ||
|} | |} | ||
|- | |- | ||
| | !4 | ||
|- | |||
|Jalankan job komputasi dengan perintah: | |Jalankan job komputasi dengan perintah: | ||
$ '''sbatch ''[nama-submit-script]''''' | $ '''sbatch ''[nama-submit-script]''''' | ||
Baris 321: | Baris 341: | ||
$ sbatch submit.sh | $ sbatch submit.sh | ||
|- | |- | ||
| | !5 | ||
|- | |||
|User dapat melihat status jalannya job dengan perintah: | |User dapat melihat status jalannya job dengan perintah: | ||
'''<code>$ squeue -ul $USER</code>''' | '''<code>$ squeue -ul $USER</code>''' | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! colspan="2" |Daftar ST (STATE) | ! colspan="2" |Daftar ST (STATE) menunjukkan status jalannya job: | ||
|- | |- | ||
!STATE | !STATE | ||
Baris 349: | Baris 370: | ||
|} | |} | ||
|- | |- | ||
| | ! | ||
|- | |||
|Apabila user ingin menghentikan job yang berjalan, jalankan perintah: | |Apabila user ingin menghentikan job yang berjalan, jalankan perintah: | ||
'''$ scancel ''[job-ID]''''' | '''$ scancel ''[job-ID]''''' | ||
''Job ID ada pada squeue diatas. | ''Job ID ada pada squeue diatas.'' | ||
contoh membatalkan job ID 231: | contoh membatalkan job ID 231: | ||
$ scancel 231 | $ scancel 231 | ||
|} | |} | ||
Baris 365: | Baris 387: | ||
# Berjalan di Compute Node. | # Berjalan di Compute Node. | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! | !Langkah Job Submission Web EFIRO | ||
[[Berkas:Efirojobcomposer3.png|nirbing|400x400px]] | [[Berkas:Efirojobcomposer3.png|nirbing|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. | ||
|Buka app '''<code>Job Composer</code>''' di Pinned Apps.[[Berkas: | |- | ||
!2 | |||
|- | |||
|[[Berkas:Pinnedapps jc.png|nir|jmpl|143x143px|Buka app '''<code>Job Composer</code>''' di Pinned Apps.]][[Berkas:Jcnewjobmarked.png|nir|jmpl|180x180px|Pilih menu '''<code>New Job</code>''' -> '''<code>From Template</code>''']] | |||
|- | |||
!3 | |||
|- | |- | ||
| | | | ||
{| class="wikitable" | {| class="wikitable" | ||
Baris 388: | Baris 413: | ||
|Menjalankan Anaconda Python versi GPU | |Menjalankan Anaconda Python versi GPU | ||
|} | |} | ||
Kemudian Isi '''<code>Job Name</code>''' dan klik '''<code>Create New Job</code>'''[[Berkas:Jctemplate-2.png| | Kemudian Isi '''<code>Job Name</code>''' dan klik '''<code>Create New Job</code>''' | ||
[[Berkas:Jctemplate-2.png|nirbing]] | |||
|- | |||
!4 | |||
|- | |- | ||
|Upload dan edit file untuk menjalankan komputasi pada '''<code>Edit Files</code>''' | |||
|Upload dan edit file untuk menjalankan komputasi pada '''<code>Edit Files</code>'''[[Berkas:Jcjoboption.png| | [[Berkas:Jcjoboption.png|nirbing|400x400px]] | ||
* Untuk upload file tunggal diatas 2GB gunakan [[Upload File dengan Aplikasi FTP|'''software FTP''']]. | * Untuk upload file tunggal diatas 2GB gunakan [[Upload File dengan Aplikasi FTP|'''software FTP''']]. | ||
* Apabila butuh akses terminal buka <code>'''Open Terminal'''</code>. | * Apabila butuh akses terminal buka <code>'''Open Terminal'''</code>. | ||
|- | |- | ||
| | !5 | ||
|Lengkapi '''Submit Script''' melalui tombol '''<code>Open Editor</code>'''.[[Berkas:Jceditor3.png|al=| | |- | ||
|Lengkapi '''Submit Script''' melalui tombol '''<code>Open Editor</code>'''. | |||
[[Berkas:Jceditor3.png|al=|nirbing|400x400px]] | |||
* Submit script adalah 'formulir' untuk menjalankan job komputasi. | * Submit script adalah 'formulir' untuk menjalankan job komputasi. | ||
* Ikuti petunjuk NOTES didalamnya | * Ikuti petunjuk NOTES didalamnya | ||
* Klik '''<code>Save</code>''' setiap kali mengubah script. | * Klik '''<code>Save</code>''' setiap kali mengubah script. | ||
|- | |- | ||
! | |||
|- | |- | ||
| | | | ||
Baris 410: | Baris 440: | ||
|Pada akun perseorangan, SLURM akan menahan job apabila: | |Pada akun perseorangan, SLURM akan menahan job apabila: | ||
* ntasks * time (jam) | * ntasks * time (jam) > sisa CPU Core Hour | ||
* gpus * time (jam) | * gpus * time (jam) > sisa GPU Hour | ||
Cek sisa Core Hour dengan langkah: | Cek sisa Core Hour dengan langkah: | ||
Baris 418: | Baris 448: | ||
# Jalankan perintah '''<code>sausage</code>''' | # Jalankan perintah '''<code>sausage</code>''' | ||
|- | |- | ||
!'''Limitasi [[Limitasi Fair Usage ALELEON Supercomputer|fair policy usage]] untuk menjaga kualitas layanan''' | |||
{| class="wikitable" | {| class="wikitable" | ||
!ntasks | !total ntasks | ||
!mem | !total mem | ||
!gpus | !total gpus | ||
!time | !time | ||
|- | |- | ||
Baris 430: | Baris 460: | ||
|72:00:00 | |72:00:00 | ||
|} | |} | ||
|- | |- | ||
|'''Versi CPU:''' | |User dapat mengajukan permintaan membuka limitasi melalui [https://efisonlt.com/pelaporan-kendala-aleleon-supercomputer/ '''form ini'''] | ||
|- | |||
! | |||
|- | |||
|'''Versi CPU dan GPU:''' | |||
{| class="wikitable" | {| class="wikitable" | ||
! | !Jenis komputasi | ||
!ntasks | !ntasks | ||
!mem | !mem | ||
Baris 440: | Baris 473: | ||
!time | !time | ||
|- | |- | ||
|normal | |CPU normal | ||
| rowspan="2" |128 | | rowspan="2" |128 | ||
|240GB | |240GB | ||
| rowspan="2" | - | | rowspan="2" | - | ||
| rowspan=" | | rowspan="3" |72:00:00 | ||
|- | |- | ||
|high-mem* | |CPU high-mem* | ||
|500GB | |500GB | ||
|- | |- | ||
|GPU | |||
|32 | |32 | ||
|120GB | |120GB | ||
|2 | |2 | ||
|} | |} | ||
<nowiki>*</nowiki>Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | |||
|- | |||
! | |||
|- | |- | ||
|'''Versi MPI (dengan MPI4PY):''' | |'''Versi MPI (dengan MPI4PY):''' | ||
Baris 483: | Baris 510: | ||
|} | |} | ||
|- | |- | ||
!6 | |||
|- | |- | ||
|Jalankan job dengan klik tombol '''<code>Submit</code>'''. | |||
|Jalankan job dengan klik tombol '''<code>Submit</code>'''.[[Berkas:Jcsubmit2.png|al=| | [[Berkas:Jcsubmit2.png|al=|nirbing|400x400px]] | ||
* Pantau kolom status yang menjelaskan status jalannya job. | * Pantau kolom status yang menjelaskan status jalannya job. | ||
* Apabila ingin membatalkan job yang berjalan, klik '''<code>Stop</code>'''. | * Apabila ingin membatalkan job yang berjalan, klik '''<code>Stop</code>'''. | ||
Baris 494: | Baris 519: | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! colspan="2" |Daftar status job | ! colspan="2" |Daftar status job: | ||
|- | |- | ||
!Status | !Status | ||
Baris 519: | Baris 544: | ||
|} | |} | ||
|- | |- | ||
| | !7 | ||
|- | |||
|Lihat output file komputasi pada kolom '''<code>Folder Contents</code>''' | |Lihat output file komputasi pada kolom '''<code>Folder Contents</code>''' | ||
*Atau dengan membuka '''<code>Edit Files</code>''' | *Atau dengan membuka '''<code>Edit Files</code>''' | ||
Baris 531: | Baris 557: | ||
# Berjalan di Interactive Node. | # Berjalan di Interactive Node. | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! | !Langkah Interactive Job Sesi Jupyter | ||
[[Berkas:Efirojupyterlab.png|400x400px]] | [[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. | ||
|Buka app '''<code>Jupyter</code>''' di Pinned Apps. | |- | ||
!2 | |||
|- | |||
|[[Berkas:Pinnedapps jupyter.png|nir|jmpl|141x141px|Buka app '''<code>Jupyter</code>''' di Pinned Apps pada homepage EFIRO.]] | |||
|- | |||
!3 | |||
|- | |- | ||
|Isi formulir untuk memulai sesi Jupyter dengan panduan berikut: | |Isi formulir untuk memulai sesi Jupyter dengan panduan berikut: | ||
Baris 546: | Baris 575: | ||
** ''pilih sesuai preferensi user, Jupyter Lab atau Notebook'' | ** ''pilih sesuai preferensi user, Jupyter Lab atau Notebook'' | ||
* '''Partition''' -> ''pilih sesuai kebutuhan:'' | * '''Partition''' -> ''pilih sesuai kebutuhan:'' | ||
** torti -> CPU saja | ** torti -> CPU saja | ||
** tilla -> CPU dan GPU | ** tilla -> CPU dan GPU | ||
Baris 568: | Baris 597: | ||
|- | |- | ||
| colspan="3" |'''Pada akun perseorangan, sesi Jupyter tidak akan berjalan apabila:''' | | colspan="3" |'''Pada akun perseorangan, sesi Jupyter tidak akan berjalan apabila:''' | ||
* Alokasi CPU * hours | * Alokasi CPU * hours > sisa CPU Core Hour | ||
* Alokasi GPU * hours | * Alokasi GPU * hours > sisa GPU Hour | ||
Cek sisa Core Hour dengan: | Cek sisa Core Hour dengan: | ||
Baris 585: | Baris 614: | ||
** ''Membuat modul software, isi sesuai kebutuhan user'' | ** ''Membuat modul software, isi sesuai kebutuhan user'' | ||
** ''Apabila menggunakan tilla, isi modul '''NVIDIA CUDA''' yang sesuai'' | ** ''Apabila menggunakan tilla, isi modul '''NVIDIA CUDA''' yang sesuai'' | ||
* '''Environment setup''' | {| class="wikitable mw-collapsible mw-collapsed" | ||
|- | |||
! colspan="2" |Daftar Software Modules NVIDIA CUDA | |||
|- | |||
!Nama Software Modules | |||
!Versi | |||
|- | |||
|cuda/11.2-cuDNN8.1.1 | |||
|CUDA 11.2 + cuDNN 8.1.1 | |||
|- | |||
|cuda/11.6-cuDNN8.3.3 | |||
|CUDA 11.6 + cuDNN 8.3.3 | |||
|- | |||
|cuda/11.8-cuDNN8.6.0 | |||
|CUDA 11.8 + cuDNN 8.6.0 | |||
|- | |||
|cuda/12.0-cuDNN8.7.0 | |||
|CUDA 12.0 + cuDNN 8.7.0 | |||
|- | |||
|cuda/12.1-cuDNN8.8.1 | |||
|CUDA 12.1 + cuDNN 8.8.1 | |||
|- | |||
|cuda/12.3-cuDNN8.9.6 | |||
|CUDA 12.3 + cuDNN 8.9.6 | |||
|} | |||
*'''Environment setup''' | |||
** ''Memuat environment variable, isi apabila ada'' | ** ''Memuat environment variable, isi apabila ada'' | ||
* '''Additional Jupyter arguments''' | * '''Additional Jupyter arguments''' | ||
Baris 592: | Baris 646: | ||
** ''Notifikasi email untuk status mulai dan selesainya sesi Jupyter.'' | ** ''Notifikasi email untuk status mulai dan selesainya sesi Jupyter.'' | ||
** ''Isi apabila berkenan.'' | ** ''Isi apabila berkenan.'' | ||
|- | |- | ||
| | !4 | ||
|- | |||
|Klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter. | |Klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter. | ||
*User akan diarahkan ke halaman '''<code>My Interactive Sessions</code>'''. | *User akan diarahkan ke halaman '''<code>My Interactive Sessions</code>'''. | ||
Baris 600: | Baris 654: | ||
[[Berkas:Jupyternotebookqueue.png|nir|jmpl|''Status sesi Jupyter mengantri menunggu alokasi hardware'']] | [[Berkas:Jupyternotebookqueue.png|nir|jmpl|''Status sesi Jupyter mengantri menunggu alokasi hardware'']] | ||
|- | |- | ||
| | !5 | ||
|- | |||
|Apabila status '''Running''', klik tombol '''<code>Connect to Jupyter</code>'''. | |Apabila status '''Running''', klik tombol '''<code>Connect to Jupyter</code>'''. | ||
Baris 607: | Baris 662: | ||
[[Berkas:Newjupyter120124.png|nir|jmpl|''Sesi Jupyter siap diakses.'']]Untuk menghentikan sesi, klik tombol '''<code>Cancel</code>'''. | [[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'']] | |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: | |User dapat mengunjungi sesi Jupyter yang sedang berjalan pada: | ||
Revisi per 5 April 2024 09.04
Halaman ini menjelaskan menjalankan komputasi Python dengan environment Anaconda di ALELEON Supercomputer.
Langkah Menjalankan Komputasi
Terdapat dua langkah utama:
- Membuat dan menyiapkan conda environment untuk komputasi user.
- Memilih metode menjalankan komputasi.
Membuat Conda Environment
Kegiatan ini dilakukan pada terminal:
- Diakses melalui login SSH, atau
- Pada web EFIRO, buka menu Clusters -> Aleleon Shell Access
Membuat Conda Environment | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||
Pilih dan aktifkan modul Anaconda yang akan digunakan.
| ||||||||||||
2 | ||||||||||||
Buat conda env di direktori HOME dan aktifkan dengan perintah:
$ conda create --name [nama-conda-env] pip Contoh nama 'skripsi' $ conda create --name skripsi pip |
Mengaktifkan Conda Environment dan Instalasi Package |
---|
0 |
Aktifkan modul Anaconda yang digunakan untuk membuat conda env user. |
1 |
Aktifkan conda env dengan perintah:
$ source activate [nama-conda-env] Contoh mengaktifkan conda env 'skripsi' $ source activate skripsi |
2 |
User dapat melihat daftar conda env yang dibuat sebelumnya dengan:
|
3 |
Lakukan instalasi package Python yang dibutuhkan dengan pip
|
4 |
Untuk menonaktifkan conda env jalankan perintah:
|
Manajemen Conda Environment |
---|
Deactivate conda env untuk melakukan manajemen ini |
a |
Untuk mengubah nama conda env:
$ conda rename -n [nama-saat-ini] [nama-baru] Contoh mengubah nama env skripsi ke tesis $ conda rename -n skripsi tesis |
b |
Untuk menghapus conda env:
|
Metode Menjalankan Komputasi
User dapat memilih metode menjalankan komputasi sesuai keinginan:
- Job submission di terminal
- Job submission di web EFIRO
- Interactive job Jupyter Lab / Notebook
Job Submission Terminal
Ketentuan:
- Menjalankan file Python di terminal dengan scheduler SLURM.
- File ipynb harus dikonversi ke file Python.
- Berjalan di Compute Node.
- Tutorial ini mengasumsikan user familiar dengan terminal Linux.
Langkah Job Submission Terminal | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||||||||||||||||
Login SSH ke ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||||||||||||||||
Siapkan conda env dan file komputasi yang dibutuhkan.
| ||||||||||||||||||||||||||||||||||||||||
3 | ||||||||||||||||||||||||||||||||||||||||
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi.
| ||||||||||||||||||||||||||||||||||||||||
Contoh template Submit Script, ikuti petunjuk NOTES didalamnya.
Info script lebih detail lihat Submit Script ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||
4 | ||||||||||||||||||||||||||||||||||||||||
Jalankan job komputasi dengan perintah:
$ sbatch [nama-submit-script] Contoh: $ sbatch submit.sh | ||||||||||||||||||||||||||||||||||||||||
5 | ||||||||||||||||||||||||||||||||||||||||
User dapat melihat status jalannya job dengan perintah:
| ||||||||||||||||||||||||||||||||||||||||
Apabila user ingin menghentikan job yang berjalan, jalankan perintah:
$ scancel [job-ID] Job ID ada pada squeue diatas. contoh membatalkan job ID 231: $ scancel 231 |
Job Submission Web EFIRO
Ketentuan:
- Menjalankan file Python di web EFIRO Job Composer dengan scheduler SLURM.
- File ipynb harus dikonversi ke file Python.
- Berjalan di Compute Node.
Langkah Job Submission Web EFIRO | ||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||||||||||||||||
3 | ||||||||||||||||||||||||||||||||||||||||
Kemudian Isi | ||||||||||||||||||||||||||||||||||||||||
4 | ||||||||||||||||||||||||||||||||||||||||
Upload dan edit file untuk menjalankan komputasi pada Edit Files
| ||||||||||||||||||||||||||||||||||||||||
5 | ||||||||||||||||||||||||||||||||||||||||
Lengkapi Submit Script melalui tombol Open Editor .
| ||||||||||||||||||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||||||||||||
6 | ||||||||||||||||||||||||||||||||||||||||
Jalankan job dengan klik tombol Submit .
| ||||||||||||||||||||||||||||||||||||||||
7 | ||||||||||||||||||||||||||||||||||||||||
Lihat output file komputasi pada kolom Folder Contents
|
Interactive Job Jupyter
Ketentuan:
- Menjalankan sesi interaktif Jupyter Lab atau Notebook.
- Berjalan di Interactive Node.
Langkah Interactive Job Sesi Jupyter | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||||||||||
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:
|