Komputasi Python dengan Anaconda: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Interactive Job Jupyter: test) |
WilsonLisan (bicara | kontrib) (Menambah bagian kembali ke halaman utama) |
||
(12 revisi perantara oleh pengguna yang sama tidak ditampilkan) | |||
Baris 1: | Baris 1: | ||
[[Berkas:Pythonanaconda.png|500x500px]] | [[Berkas:Pythonanaconda.png|500x500px]] | ||
Halaman ini menjelaskan menjalankan komputasi Python dengan environment Anaconda di ALELEON Supercomputer. '''[https://www.anaconda.com/ Anaconda]''' adalah suite katalog packages Python dan R untuk komputasi ''data science'' dan ''machine learning''. | |||
{| class="wikitable" | |||
!''Kembali ke halaman utama ->'' [[Komputasi Python]] | |||
|} | |||
== '''Langkah Menjalankan Komputasi''' == | == '''Langkah Menjalankan Komputasi''' == | ||
Baris 10: | Baris 15: | ||
== '''Membuat Conda Environment''' == | == '''Membuat Conda Environment''' == | ||
Kegiatan ini dilakukan pada '''terminal''': | Kegiatan ini dilakukan pada '''terminal''' dan tidak mengurangi Core Hour user: | ||
* Diakses melalui [https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#1_|_Login_SSH '''login SSH'''], atau | * Diakses melalui [https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#1_|_Login_SSH '''login SSH'''], atau | ||
* Pada web EFIRO, buka | * Pada web EFIRO, buka app '''Aleleon Shell Access''' [[Berkas:Pinnedapps terminal.png|nirbing|129x129px]] | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Membuat Conda Environment | !Membuat Conda Environment dan Instalasi Package Python | ||
|- | |- | ||
!1 | !1 | ||
Baris 46: | Baris 51: | ||
$ '''conda create --name ''[nama-conda-env]'' pip''' | $ '''conda create --name ''[nama-conda-env]'' pip''' | ||
''Contoh nama 'skripsi''' | ''Contoh dengan nama 'skripsi''' | ||
$ conda create --name '''skripsi''' pip | $ conda create --name '''skripsi''' pip | ||
|- | |- | ||
! | !3 | ||
|- | |- | ||
|Aktifkan conda env dengan perintah: | |Aktifkan conda env dengan perintah: | ||
$ '''source activate ''[nama-conda-env]''''' | $ '''source activate ''[nama-conda-env]''''' | ||
''Contoh | ''Contoh:'' | ||
$ source activate '''skripsi''' | $ source activate '''skripsi''' | ||
|- | |- | ||
! | !4 | ||
|- | |- | ||
|Lakukan instalasi package Python yang dibutuhkan dengan '''<code>pip</code>''' | |Lakukan instalasi package Python yang dibutuhkan dengan '''<code>pip</code>''' | ||
Baris 76: | Baris 68: | ||
* Contoh [https://www.tensorflow.org/install/pip instalasi TensorFlow dengan pip]. | * Contoh [https://www.tensorflow.org/install/pip instalasi TensorFlow dengan pip]. | ||
|- | |- | ||
! | !5 | ||
|- | |- | ||
|Untuk menonaktifkan conda env jalankan perintah: | |Untuk menonaktifkan conda env jalankan perintah: | ||
Baris 84: | Baris 76: | ||
!Manajemen Conda Environment | !Manajemen Conda Environment | ||
|- | |- | ||
| | !a | ||
|- | |||
|'''Mengaktifkan conda env yang telah dibuat:''' | |||
# Muat modul Anaconda yang dipakai untuk membuat conda env. | |||
# Lakukan source activate. | |||
|- | |||
!b | |||
|- | |||
|'''Melihat daftar conda env yang telah dibuat:''' | |||
'''$ conda env list''' | |||
|- | |- | ||
! | !c | ||
|- | |- | ||
| | |'''Mengubah nama conda env:''' | ||
$ '''conda rename -n ''[nama-saat-ini]'' ''[nama-baru]''''' | $ '''conda rename -n ''[nama-saat-ini]'' ''[nama-baru]''''' | ||
Baris 94: | Baris 95: | ||
$ conda rename -n skripsi tesis | $ conda rename -n skripsi tesis | ||
|- | |- | ||
! | !d | ||
|- | |- | ||
| | |'''Menghapus conda env:''' | ||
<code>$ '''conda remove -n ''<nama-conda-env>'' --all'''</code> | <code>$ '''conda remove -n ''<nama-conda-env>'' --all'''</code> | ||
|} | |} | ||
Baris 103: | Baris 104: | ||
User dapat memilih metode menjalankan komputasi sesuai keinginan: | User dapat memilih metode menjalankan komputasi sesuai keinginan: | ||
* Job submission di terminal | * '''Job submission terminal''' | ||
* Job submission di web EFIRO | ** ''Menggunakan manajemen Slurm di terminal dan compute node.'' | ||
* Interactive job Jupyter Lab | ** ''Hanya untuk file Python (py), file ipynb harus diubah ke py.'' | ||
* '''Job submission web EFIRO''' | |||
** ''Menggunakan manajemen Slurm di laman web EFIRO dan compute node.'' | |||
** ''Hanya untuk file Python (py), file ipynb harus diubah ke py.'' | |||
* '''Interactive job Jupyter''' | |||
** ''Sesi IDE Jupyter Lab atau Notebook.'' | |||
** ''Menggunakan interactive node.'' | |||
=== Job Submission Terminal === | === Job Submission Terminal === | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Job Submission Terminal | !Langkah Job Submission Terminal | ||
Baris 128: | Baris 129: | ||
* 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''']]. | ||
|- | |- | ||
! | !3A | ||
|- | |- | ||
|Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi. | |Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi. | ||
Baris 258: | Baris 259: | ||
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''']]. | ||
|- | |- | ||
! | !3B | ||
Panduan nilai maksimal SBATCH | |||
|- | |- | ||
| | |SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan: | ||
* | * Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']]. | ||
* Spesifikasi sistem dan software komputasi. | |||
Untuk melihat limit, jalankan perintah berikut: | |||
'''$ slimit-python''' | |||
|- | |- | ||
!4 | !4 | ||
Baris 381: | Baris 318: | ||
=== Job Submission Web EFIRO === | === Job Submission Web EFIRO === | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Job Submission Web EFIRO | !Langkah Job Submission Web EFIRO | ||
Baris 396: | Baris 328: | ||
!2 | !2 | ||
|- | |- | ||
|Buka app '''Job Composer''' [[Berkas:New Pinnedapps jc.png|nirbing|128x128px]] di homepage EFIRO. | |||
Pilih menu '''<code>New Job</code>''' -> '''<code>From Template</code>''' | |||
[[Berkas:Jcnewjobmarked.png|nirbing|180x180px]] | |||
|- | |- | ||
!3 | !3 | ||
Baris 408: | Baris 344: | ||
|- | |- | ||
|Anaconda Python (CPU) | |Anaconda Python (CPU) | ||
|Menjalankan Anaconda Python | |Menjalankan Anaconda Python di CPU | ||
|- | |- | ||
|Anaconda Python (GPU) | |Anaconda Python (GPU) | ||
|Menjalankan Anaconda Python | |Menjalankan Anaconda Python di GPU | ||
|} | |} | ||
Kemudian Isi '''<code>Job Name</code>''' dan klik '''<code>Create New Job</code>''' | Kemudian Isi '''<code>Job Name</code>''' dan klik '''<code>Create New Job</code>''' | ||
Baris 419: | Baris 355: | ||
!4 | !4 | ||
|- | |- | ||
|Upload dan edit file untuk | |Upload dan edit file untuk job komputasi pada '''<code>Edit Files</code>''' | ||
[[Berkas:Jcjoboption.png|nirbing|400x400px]] | [[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>. | ||
|- | |- | ||
! | !5A | ||
|- | |- | ||
|Lengkapi '''Submit Script''' melalui tombol '''<code>Open Editor</code>'''. | |Lengkapi '''Submit Script''' melalui tombol '''<code>Open Editor</code>'''. | ||
Baris 432: | Baris 368: | ||
* Klik '''<code>Save</code>''' setiap kali mengubah script. | * Klik '''<code>Save</code>''' setiap kali mengubah script. | ||
|- | |- | ||
! | !5B | ||
Panduan nilai maksimal SBATCH | |||
|- | |- | ||
| | |SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan: | ||
* | * Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']]. | ||
* Spesifikasi sistem dan software komputasi. | |||
Untuk melihat limit, jalankan perintah berikut pada terminal: | |||
'''$ slimit-python''' | |||
|- | |- | ||
!6 | !6 | ||
Baris 540: | Baris 409: | ||
|- | |- | ||
| colspan="2" |'''Untuk melihat alasan queue:''' | | colspan="2" |'''Untuk melihat alasan queue:''' | ||
# Buka app '''<code>Active Jobs</code>''' | # Buka app '''<code>Active Jobs</code>''' [[Berkas:Pinnedapps activejobs.png|nirbing|127x127px]]di homepage EFIRO. | ||
# [[Berkas:Efiroqueueedit.png|nir|jmpl|''Ubah opsi '''<code>Your jobs</code>''' untuk melihat status job user saja. Klik simbol '''>''' untuk melihat status job pending pada kolom '''Reason'''. Arti reason lihat laman '''[[Daftar Reason NODELIST ALELEON Supercomputer]].''''']] | # [[Berkas:Efiroqueueedit.png|nir|jmpl|''Ubah opsi '''<code>Your jobs</code>''' untuk melihat status job user saja. Klik simbol '''>''' untuk melihat status job pending pada kolom '''Reason'''. Arti reason lihat laman '''[[Daftar Reason NODELIST ALELEON Supercomputer]].''''']] | ||
|} | |} | ||
Baris 552: | Baris 421: | ||
=== Interactive Job Jupyter === | === Interactive Job Jupyter === | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Interactive Job Sesi Jupyter | !Langkah Interactive Job Sesi Jupyter | ||
Baris 566: | Baris 431: | ||
!2 | !2 | ||
|- | |- | ||
|[[Berkas:Pinnedapps jupyter.png| | |Buka app '''Jupyter''' [[Berkas:New Pinnedapps jupyter.png|nirbing|116x116px]] di homepage EFIRO. | ||
|- | |- | ||
!3 | !3 | ||
Baris 602: | Baris 467: | ||
Cek sisa Core Hour dengan: | Cek sisa Core Hour dengan: | ||
# Buka app | # Buka app [[Berkas:Pinnedapps terminal.png|nirbing|116x116px]] di homepage EFIRO | ||
# Jalankan perintah '''<code>sausage</code>''' | # Jalankan perintah '''<code>sausage</code>''' | ||
|} | |} | ||
Baris 614: | Baris 479: | ||
** ''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 648: | Baris 538: | ||
* Kolom '''<code>Active interactive sessions</code>''' pada homepage EFIRO. | * Kolom '''<code>Active interactive sessions</code>''' pada homepage EFIRO. | ||
|} | |} | ||
=='''Pelaporan Kendala dan Support'''== | |||
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini. | |||
[[Berkas:Wiki-pelaporankendala.jpg|1000x1000px|link=https://efisonlt.com/aleleonbugreport]] | |||
Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email: | |||
'''support@efisonlt.com''' |
Revisi terkini sejak 15 Mei 2024 10.53
Halaman ini menjelaskan menjalankan komputasi Python dengan environment Anaconda di ALELEON Supercomputer. Anaconda adalah suite katalog packages Python dan R untuk komputasi data science dan machine learning.
Kembali ke halaman utama -> Komputasi Python |
---|
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 dan tidak mengurangi Core Hour user:
- Diakses melalui login SSH, atau
- Pada web EFIRO, buka app Aleleon Shell Access
Membuat Conda Environment dan Instalasi Package Python | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
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 dengan nama 'skripsi' $ conda create --name skripsi pip | ||||||||||||
3 | ||||||||||||
Aktifkan conda env dengan perintah:
$ source activate [nama-conda-env] Contoh: $ source activate skripsi | ||||||||||||
4 | ||||||||||||
Lakukan instalasi package Python yang dibutuhkan dengan pip
| ||||||||||||
5 | ||||||||||||
Untuk menonaktifkan conda env jalankan perintah:
|
Manajemen Conda Environment |
---|
a |
Mengaktifkan conda env yang telah dibuat:
|
b |
Melihat daftar conda env yang telah dibuat:
$ conda env list |
c |
Mengubah nama conda env:
$ conda rename -n [nama-saat-ini] [nama-baru] Contoh mengubah nama env skripsi ke tesis $ conda rename -n skripsi tesis |
d |
Menghapus conda env:
|
Metode Menjalankan Komputasi
User dapat memilih metode menjalankan komputasi sesuai keinginan:
- Job submission terminal
- Menggunakan manajemen Slurm di terminal dan compute node.
- Hanya untuk file Python (py), file ipynb harus diubah ke py.
- Job submission web EFIRO
- Menggunakan manajemen Slurm di laman web EFIRO dan compute node.
- Hanya untuk file Python (py), file ipynb harus diubah ke py.
- Interactive job Jupyter
- Sesi IDE Jupyter Lab atau Notebook.
- Menggunakan interactive node.
Job Submission Terminal
Langkah Job Submission Terminal | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login SSH ke ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
Siapkan conda env dan file komputasi yang dibutuhkan.
| ||||||||||||||||
3A | ||||||||||||||||
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. | ||||||||||||||||
3B
Panduan nilai maksimal SBATCH | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah berikut: $ slimit-python | ||||||||||||||||
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
Langkah Job Submission Web EFIRO | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
Buka app Job Composer di homepage EFIRO.
Pilih menu | ||||||||||||||||
3 | ||||||||||||||||
Kemudian Isi | ||||||||||||||||
4 | ||||||||||||||||
Upload dan edit file untuk job komputasi pada Edit Files
| ||||||||||||||||
5A | ||||||||||||||||
Lengkapi Submit Script melalui tombol Open Editor .
| ||||||||||||||||
5B
Panduan nilai maksimal SBATCH | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah berikut pada terminal: $ slimit-python | ||||||||||||||||
6 | ||||||||||||||||
Jalankan job dengan klik tombol Submit .
| ||||||||||||||||
7 | ||||||||||||||||
Lihat output file komputasi pada kolom Folder Contents
|
Interactive Job Jupyter
Langkah Interactive Job Sesi Jupyter | ||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||||||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||||||||||||||||||||
2 | ||||||||||||||||||||||||||||||||||
Buka app Jupyter di homepage EFIRO. | ||||||||||||||||||||||||||||||||||
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:
|
Pelaporan Kendala dan Support
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini.
Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email:
support@efisonlt.com