R: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Alternatif Menjalankan R di ALELEON Supercomputer: memberi link ada judul menjalankan R) |
WilsonLisan (bicara | kontrib) (overhaul page R) |
||
Baris 20: | Baris 20: | ||
multi-node | multi-node | ||
|- | |- | ||
|4. | |4.3.0 "Already Tomorrow" | ||
|R/4. | |R/4.3.0-GCC11.3-MKL | ||
|V | |V | ||
|V | |V | ||
| - | | - | ||
| - | | - | ||
|V melalui [https://cran.r-project.org/web/packages/Rmpi/Rmpi.pdf '''RMPI''']''<sup>1</sup>'' | |||
|} | |} | ||
'''''Keterangan:''''' | |||
# RMPI dapat dicapai dengan pemrograman R dari pihak user menggunakan wrapper Rmpi. | |||
== '''Alternatif Menjalankan R di ALELEON Supercomputer''' == | == '''Alternatif Menjalankan R di ALELEON Supercomputer''' == | ||
ALELEON Supercomputer menawarkan user untuk menjalankan R dengan skema | ALELEON Supercomputer menawarkan user untuk menjalankan R dengan pilihan skema: | ||
{| class="wikitable" | {| class="wikitable" | ||
|- | |- | ||
|'''[https://wiki.efisonlt.com/wiki/R#Menjalankan_R_Melalui_Job_Submission Menjalankan R melalui Job Submission]''' | |'''[https://wiki.efisonlt.com/wiki/R#Menjalankan_R_Melalui_Job_Submission Menjalankan R melalui Job Submission]''' | ||
* Menjalankan file R siap jalan melalui scheduler | * Menjalankan file R siap jalan melalui scheduler SLURM. | ||
* Berjalan di | * Berjalan di Compute Node CPU epyc dengan spesifikasi hingga CPU 128 core dan RAM 500GB | ||
** R versi MPI (RMPI) dapat berjalan paralel hingga CPU 384 core. | |||
|- | |- | ||
|'''[https://wiki.efisonlt.com/wiki/R#Menjalankan_R_dengan_Sesi_Interaktif_Jupyter Menjalankan R dengan sesi interaktif Jupyter]''' | |'''[https://wiki.efisonlt.com/wiki/R#Menjalankan_R_dengan_Sesi_Interaktif_Jupyter Menjalankan R dengan sesi interaktif Jupyter]''' | ||
* Menjalankan R melalui sesi interaktif via Jupyter Notebook atau Lab. | * Menjalankan R melalui sesi interaktif via Jupyter Notebook atau Lab. | ||
* Berjalan di | * Berjalan di Interactive Node Torti dengan spesifikasi CPU 32 core dan RAM 64GB. | ||
|} | |} | ||
=='''Instalasi Library Package R'''== | =='''Instalasi Library Package R'''== | ||
Baris 52: | Baris 49: | ||
# Melayangkan permintaan instalasi package ke admin melalui email '''support@efisonlt.com;''' atau | # Melayangkan permintaan instalasi package ke admin melalui email '''support@efisonlt.com;''' atau | ||
# Melakukan instalasi mandiri dengan langkah berikut: | # Melakukan instalasi mandiri pada HOME user dengan langkah berikut: | ||
{| class="wikitable" | {| class="wikitable" | ||
| | ! colspan="2" |Panduan instalasi modul R di HOME user | ||
|- | |||
|'''0A''' | |'''0A''' | ||
|Instalasi package dilakukan melalui '''terminal'''. | |Instalasi package dilakukan melalui '''terminal'''. | ||
|- | |- | ||
|'''0B''' | |'''0B''' | ||
|Bagi user EFIRO, buka terminal melalui | |Bagi user EFIRO, buka terminal melalui menu '''Clusters > Aleleon Shell Access'''. | ||
[[Berkas:Shellaccess.png|nirbing|200x200px]] | [[Berkas:Shellaccess.png|nirbing|200x200px]] | ||
|- | |- | ||
Baris 69: | Baris 67: | ||
!Perintah Terminal | !Perintah Terminal | ||
|- | |- | ||
|4. | |4.3.0 | ||
|<code>$ module load R/4. | |<code>$ module load R/4.3.0-GCC11.3-MKL</code> | ||
|} | |} | ||
|- | |- | ||
|''' | |'''2A''' | ||
|Jalankan R dan lakukan instalasi package dengan format perintah standar: | |Jalankan R dan lakukan instalasi package dengan format perintah standar: | ||
$ R | $ R | ||
Baris 83: | Baris 78: | ||
Package akan terinstal di direktori '''HOME user'''. | Package akan terinstal di direktori '''HOME user'''. | ||
|- | |- | ||
|''' | |'''2B''' | ||
|'''''Bagi user yang pertama kali melakukan instalasi package R:''''' | |'''''Bagi user yang pertama kali melakukan instalasi package R:''''' | ||
Akan terdapat | Akan terdapat prompt untuk instalasi package di personal library, jawab '''yes'''. | ||
Warning in install.packages("benchmarkme") : | Warning in install.packages("benchmarkme") : | ||
'lib = "/comp/R/4.1.2-GCC10-MKL/lib64/R/library"' is not writable | 'lib = "/comp/R/4.1.2-GCC10-MKL/lib64/R/library"' is not writable | ||
Would you like to use a personal library instead? (yes/No/cancel) '''yes''' | Would you like to use a personal library instead? (yes/No/cancel) '''yes''' | ||
R akan meminta izin untuk menginstal package R di direktori HOME user | R akan meminta izin untuk menginstal package R di direktori HOME user. Jawab '''yes'''. | ||
Would you like to create a personal library | Would you like to create a personal library | ||
‘~/R/x86_64-pc-linux-gnu-library/4.1’ | ‘~/R/x86_64-pc-linux-gnu-library/4.1’ | ||
Baris 96: | Baris 91: | ||
== '''Menjalankan R Melalui Job Submission''' == | == '''Menjalankan R Melalui Job Submission''' == | ||
User dapat menjalankan R melalui job submission dengan pilihan cara menjalankan komputasi: | User dapat menjalankan R melalui job submission dengan pilihan cara melalui tampilan terminal atau GUI web EFIRO. | ||
===Mengecek Kredit Core Hour bagi Akun Perseorangan=== | |||
User dengan akun perseorangan disarankan untuk selalu mengecek sisa Kredit Core Hour sebelum melakukan job submission dengan menjalankan perintah pada terminal: | |||
$ '''sausage''' | |||
Bagi yang login ke web EFIRO, buka terminal pada menu '''<code>Clusters</code> > <code>Aleleon Shell Access</code>''' | |||
===Terminal - SLURM sbatch=== | |||
[[Berkas:Sbatch Terminal.png|nirbing|500x500px]] | |||
Menjalankan komputasi pada terminal melalui job submission SLURM sbatch. | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
! colspan="2" |Langkah Menjalankan R via SLURM sbatch | |||
|- | |||
| rowspan="2" |'''0''' | |||
|Sebelum login, [[Koneksi VPN ALELEON Supercomputer|'''user harus terhubung ke jaringan VPN ALELEON Supercomputer''']]. | |||
|- | |||
|Login dengan SSH: | |||
*User OS Windows dan MacOS -> <code>'''$ ssh <''username''>@aleleon.hpc'''</code> | |||
*User OS Linux -> <code>'''$ ssh <''username''>@10.192.50.10'''</code> | |||
|- | |||
|'''1''' | |||
|Siapkan file yang dibutuhkan untuk menjalankan komputasi user. | |||
*[[Upload File dengan Aplikasi FTP|'''User dapat melakukan upload / download file dengan bantuan aplikasi FTP''']] | |||
|- | |||
|'''2''' | |||
| Buat '''SLURM Submit Script''' yaitu 'formulir' untuk menjalankan job dengan panduan berikut: | |||
*Nama script dibebaskan dengan format file .sh (bash), contoh ''<code>my_job_submission.sh</code>'' | |||
*Buat script pada direktori yang sama dengan file komputasi yang akan dijalankan. | |||
*Ikuti panduan template berikut dan petunjuk pada NOTES di dalamnya. | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Template SLURM Submit Script untuk R | |||
|- | |||
|<syntaxhighlight lang="bash" line="1"> | |||
#!/bin/bash | |||
=== | # ------------------------------------------------------------- | ||
# | Template SLURM Submit Script | |||
# | Software : R | |||
# | Update script : 06/10/2023 | |||
# | | |||
# | NOTES: | |||
# | 1. Isi bagian yang ditandai 4 garing (////). | |||
# | 2. Template ini bersifat referensi. | |||
# | User dapat mengubah bagian yang sekiranya perlu diubah. | |||
# | 3. Panduan menjalankan CP2K di ALELEON lihat: | |||
# | https://wiki.efisonlt.com/wiki/R | |||
# ------------------------------------------------------------- | |||
# -------------------------------------------------- | |||
# Alokasi komputasi, modul software, 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 | |||
#SBATCH --output=result-%j.txt | |||
# Definisi file untuk menampung output error log | |||
#SBATCH --error=error-%j.txt | |||
# Nama input file R dengan format file-nya | |||
INPUT_FILE='////.R' | |||
# Memuat modul software R yang akan digunakan user | |||
# Daftar modul R lihat subbab "Modul R" pada | |||
# https://wiki.efisonlt.com/wiki/R | |||
module load R//// | |||
# ------------------------------------------------- | |||
# RUN SCRIPT | |||
# ------------------------------------------------- | |||
# Perintah menjakankan R | |||
Rscript ${INPUT_FILE} | |||
</syntaxhighlight> | |||
|} | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Template SLURM Submit Script untuk R versi MPI (RMPI) | |||
|- | |||
|<syntaxhighlight lang="bash" line="1"> | |||
#!/bin/bash | |||
# ------------------------------------------------------------- | |||
# | Template SLURM Submit Script | |||
# | Software : R versi MPI (RMPI) | |||
# | Update script : 06/10/2023 | |||
# | | |||
# | NOTES: | |||
# | 1. Isi bagian yang ditandai 4 garing (////). | |||
# | 2. Template ini bersifat referensi. | |||
# | User dapat mengubah bagian yang sekiranya perlu diubah. | |||
# | 3. Panduan menjalankan CP2K di ALELEON lihat: | |||
# | https://wiki.efisonlt.com/wiki/R | |||
# ------------------------------------------------------------- | |||
# -------------------------------------------------- | |||
# Alokasi komputasi, modul software, 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 | |||
#SBATCH --output=result-%j.txt | |||
# Definisi file untuk menampung output error log | |||
#SBATCH --error=error-%j.txt | |||
# Nama input file R dengan format file-nya | |||
INPUT_FILE='////.R' | |||
# Memuat modul software R yang akan digunakan user | |||
# Daftar modul R lihat subbab "Modul R" pada | |||
# https://wiki.efisonlt.com/wiki/R | |||
module load R//// | |||
# Memuat modul software Open MPI untuk menjalankan RMPI | |||
module load openmpi | |||
# ------------------------------------------------- | |||
# RUN SCRIPT | |||
# ------------------------------------------------- | |||
# Perintah menjakankan R | |||
mpirun -np $SLURM_NTASKS --mca pml ucx --mca osc ucx Rscript ${INPUT_FILE} | |||
</syntaxhighlight> | |||
|} | |||
{| class="wikitable" | |||
! colspan="6" |Panduan nilai maksimal SBATCH untuk R''<sup>1</sup>'' | |||
|- | |||
! rowspan="2" | Skenario Menjalankan CP2K | |||
! rowspan="2" |Berjalan di | |||
Compute Node | |||
! colspan="4" |Nilai maksimal SBATCH | |||
|- | |||
!ntasks | |||
(CPU) | |||
!mem | |||
(RAM) | |||
!gpus | |||
(GPU) | |||
!time | |||
(time limit) | |||
|- | |||
| colspan="2" |''Acuan fair policy usage<sup>2</sup>'' | |||
|''128'' | |||
|''128GB'' | |||
|''2'' | |||
| rowspan="4" |3-00:00:00 | |||
atau 72:00:00 | |||
|- | |||
| R biasa''<sup>3</sup>'' | |||
|epyc (CPU) | |||
|128 | |||
|240GB | |||
|0 | |||
|- | |||
|R versi MPI (RMPI)''<sup>4</sup>'' | |||
|epyc (CPU) | |||
|384 | |||
|240GB | |||
|0 | |||
|- | |||
|R biasa dan RMPI di high-mem node''<sup>5</sup>'' | |||
| epyc (CPU) | |||
| 128 | |||
|500GB | |||
|0 | |||
|}'''''Keterangan:'''''#Info SBATCH lebih detail lihat laman [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']] | |||
#Limitasi fair policy usage untuk menjaga kualitas layanan ALELEON Supercomputer. | |||
#*User dapat mengajukan permintaan membuka limitasi apabila job membutuhkan alokasi lebih. | |||
#*Info lebih detail lihat laman [[Limitasi Fair Usage ALELEON Supercomputer|'''Limitasi Fair Usage ALELEON Supercomputer''']] | |||
#R biasa tidak mendukung komputasi paralel MPI hingga maksimum berjalan 1 node atau 128 core. | |||
#R versi MPI (RMPI) mendukung komputasi paralel MPI untuk berjalan ''multi-node'' : | |||
#*Satu node epyc mempunyai CPU 128 core. | |||
#*Pada jumlah ntasks >128, SLURM otomatis menjalankan job secara multi-node. | |||
#**Dalam kaitan ini, parameter mem adalah alokasi memori RAM per-node. | |||
#*Info lebih detail lihat laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | |||
#High-mem node epyc yaitu epyc001 memungkinkan user mengalokasikan RAM hingga 500GB. | |||
#*Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | |||
|- | |||
|'''3''' | |||
|Jalankan job dengan perintah sbatch. | |||
$ '''sbatch''' '''''<nama-SLURM-Submit-script>''''' | |||
Contoh menjalankan nama script <code>my_job_submission.sh</code>. | |||
$ sbatch my_job_submission.sh | |||
|- | |||
|'''4A''' | |||
|User dapat melihat status jalannya job dengan perintah squeue berikut. | |||
*Apabila tidak ada output artinya tidak ada job user yang berjalan / antri pada waktu itu. | |||
$ '''squeue -ul $USER''' | |||
Berikut adalah daftar STATE (ST) dari squeue yang menunjukkan status berjalannya job: | |||
{| class="wikitable" | {| class="wikitable" | ||
|+ | |+Daftar STATE squeue SLURM | ||
! | ! STATE | ||
! Kepanjangan | |||
!Penjelasan | !Penjelasan | ||
|- | |- | ||
|R | |R | ||
| | |RUN | ||
|Job berjalan | |||
|- | |- | ||
| | |PD | ||
| | |PENDING | ||
|Job tertahan, lihat keterangan [[Daftar Reason NODELIST ALELEON Supercomputer|'''NODELIST(REASON)''']] | |||
|- | |- | ||
| | |CG | ||
| | |COMPLETING | ||
|Job selesai dan dalam proses clean-up SLURM | |||
|- | |- | ||
| | |CA | ||
| | |CANCELED | ||
|Job dibatalkan oleh user | |||
|- | |||
|PR | |||
|PREEMPETED | |||
|Job dibatalkan oleh admin EFISON, alasan dikabarkan melalui email | |||
|- | |||
| S | |||
|SUSPENDED | |||
| Job ditahan oleh admin EFISON | |||
|} | |} | ||
|- | |||
|'''4B''' | |||
|Apabila user ingin membatalkan job, gunakan perintah scancel berdasarkan job ID. | |||
* Job ID dapat dilihat melalui perintah squeue pada kolom JOBID. | |||
* User hanya bisa membatalkan job submission milik user sendiri. | |||
$ '''scancel <''job-ID-submission-user''>''' | |||
Contoh user membatalkan job submission milik user dengan ID 231. | |||
$ scancel 231 | |||
|} | |||
===GUI Web - EFIRO Job Composer=== | |||
[[Berkas:Efirojobcomposer3.png|nirbing|500x500px]] | |||
=== [[ | Menjalankan komputasi dengan tampilan grafis pada formulir job submission EFIRO Job Composer. | ||
{| class="wikitable mw-collapsible mw-collapsed" | |||
! colspan="2" |Langkah Menjalankan R via EFIRO Job Composer | |||
|- | |||
| rowspan="2" |'''0''' | |||
|Sebelum login, [[Koneksi VPN ALELEON Supercomputer|'''user harus terhubung ke jaringan VPN ALELEON Supercomputer''']]. | |||
|- | |||
|Buka alamat web '''<code><nowiki>http://aleleon.ood</nowiki></code>''' kemudian masukkan username dan password user. | |||
*Bagi user Linux, buka alamat <code>'''<nowiki>http://10.192.50.11</nowiki>'''</code> | |||
|- | |||
|'''1''' | |||
|Buka menu dashboard EFIRO '''<code>Jobs</code> > <code>Jobs Composer</code>''' | |||
[[Berkas:Efirojobcomposermenu.png|nirbing|300x300px|al=]] | |||
|- | |||
|'''2''' | |||
|Pilih '''<code>New Jobs</code> > <code>From Template</code>''' | |||
[[Berkas:Jcnewjobmarked.png|al=|nirbing|180x180px]] | |||
|- | |||
|'''3''' | |||
|[[Berkas:Jcselecttemplate3.png|al=|nir|jmpl|Pilih template R yang diinginkan. Isi atau ganti <code>'''Job Name'''</code> sesuai keinginan user, kemudian klik <code>'''Create New Job'''</code>.|400x400px]] | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! colspan="2" |Template R yang tersedia | ||
|- | |- | ||
!Nama Template | |||
!Penjelasan | |||
|- | |||
|R 4.3.0 "Already Tomorrow" | |||
|Menjalankan R versi 4.3.0 | |||
|- | |||
|RMPI 4.3.0 "Already Tomorrow" | |||
|Menjalankan R versi 4.3.0 dengan MPI | |||
|} | |} | ||
|- | |||
|'''4''' | |||
|[[Berkas:Jcjoboption3.png|nirbing|600x600px]] | |||
Gunakan menu '''<code>Edit Files</code>''' untuk upload file yang dibutuhkan'''.''' | |||
*Laman Edit Files juga dapat melakukan view / download / edit / rename / delete file. | |||
*''Fitur upload pada laman Edit Files '''mempunyai batasan ukuran upload 2GB per file'''.'' | |||
**''Gunakan [[Upload File dengan Aplikasi FTP|'''aplikasi FTP''']] apabila user hendak mengupload file tunggal diatas 2GB.'' | |||
|- | |||
|'''5''' | |||
|[[Berkas:Jceditor3.png|al=|nirbing|300x300px]] | |||
Melalui '''<code>Open Editor</code>''', lengkapi Submit Script dengan mengganti bagian yang di tandai 4 garis miring (////). | |||
*''Jangan lupa klik <code>'''Save'''</code> setiap sekali mengubah script.'' | |||
*Template ini bersifat referensi, user dapat mengubah bagian yang sekiranya perlu diubah. | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! colspan="6" |Panduan nilai maksimal SBATCH untuk R''<sup>1</sup>'' | ||
|- | |||
! rowspan="2" | Skenario Menjalankan CP2K | |||
! rowspan="2" |Berjalan di | |||
Compute Node | |||
! colspan="4" |Nilai maksimal SBATCH | |||
|- | |||
!ntasks | |||
(CPU) | |||
!mem | |||
(RAM) | |||
!gpus | |||
(GPU) | |||
!time | |||
(time limit) | |||
|- | |- | ||
| | | colspan="2" |''Acuan fair policy usage<sup>2</sup>'' | ||
|''128'' | |||
|''128GB'' | |||
|''2'' | |||
| rowspan="4" |3-00:00:00 | |||
atau 72:00:00 | |||
|- | |||
| R biasa''<sup>3</sup>'' | |||
|epyc (CPU) | |||
|128 | |||
|240GB | |||
|0 | |||
|- | |||
|R versi MPI (RMPI)''<sup>4</sup>'' | |||
|epyc (CPU) | |||
|384 | |||
|240GB | |||
|0 | |||
|- | |||
|R biasa dan RMPI di high-mem node''<sup>5</sup>'' | |||
| epyc (CPU) | |||
| 128 | |||
|500GB | |||
|0 | |||
|} | |} | ||
'''''Keterangan:'''''#Info SBATCH lebih detail lihat laman [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']] | |||
#Limitasi fair policy usage untuk menjaga kualitas layanan ALELEON Supercomputer. | |||
#*User dapat mengajukan permintaan membuka limitasi apabila job membutuhkan alokasi lebih. | |||
#*Info lebih detail lihat laman [[Limitasi Fair Usage ALELEON Supercomputer|'''Limitasi Fair Usage ALELEON Supercomputer''']] | |||
#R biasa tidak mendukung komputasi paralel MPI hingga maksimum berjalan 1 node atau 128 core. | |||
#R versi MPI (RMPI) mendukung komputasi paralel MPI untuk berjalan ''multi-node'' : | |||
#*Satu node epyc mempunyai CPU 128 core. | |||
#*Pada jumlah ntasks >128, SLURM otomatis menjalankan job secara multi-node. | |||
#**Dalam kaitan ini, parameter mem adalah alokasi memori RAM per-node. | |||
#*Info lebih detail lihat laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | |||
#High-mem node epyc yaitu epyc001 memungkinkan user mengalokasikan RAM hingga 500GB. | |||
#*Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | |||
|- | |||
|'''6A''' | |||
| Jalankan job dengan klik tombol '''<code>Submit</code>'''. | |||
[[Berkas:Jcsubmit2.png|al=|nirbing|600x600px]] | |||
Berikut penjelasan kolom '''<code>Status</code>,''' pantau dengan refresh halaman job''':''' | |||
{| class="wikitable" | |||
! Status | |||
!Arti | |||
|- | |||
|Not Submitted | |||
|Job belum pernah dijalankan. | |||
|- | |||
|Running | |||
|Job berjalan. | |||
|- | |||
| Queue | |||
|Job mengantri dan belum berjalan. | |||
|- | |||
|Completed | |||
|Job selesai berjalan. | |||
|- | |||
|Failed | |||
|Job berhenti di tengah jalan, bisa karena di Stop atau Delete oleh user. | |||
|} | |||
|- | |||
|'''6B''' | |||
|Untuk menghentikan job yang tengah berjalan, klik tombol '''Stop'''. | |||
[[Berkas:Stop.png|nirbing|600x600px]] | |||
|- | |||
|'''7A''' | |||
|Hasil output job dapat dilihat pada kolom '''<code>Folder Contents</code>''' atau membuka halaman '''<code>Edit Files</code>.'''[[Berkas:Jcfoldercontentsedit.png|al=|nir|jmpl|User dapat melihat semua file output yang keluar di kolom '''<code>Folder Contents</code>'''.]][[Berkas:Jcjoboption3.png|nir|jmpl|atau dengan membuka menu '''<code>Edit Files</code>'''.]] | |||
|- | |||
|'''7B''' | |||
|User dapat '''menjalankan ulang ruang job yang sama''' dengan mengklik kembali tombol '''<code>Submit</code>'''. | |||
|} | |||
== '''Menjalankan R dengan Sesi Interaktif Jupyter''' == | == '''Menjalankan R dengan Sesi Interaktif Jupyter''' == | ||
Terdapat 2 langkah | Terdapat 2 langkah untuk menjalankan R melalui sesi interaktif Jupyter yaitu: | ||
# Melakukan '''instalasi package IRKernel''' ketika pertama kali menggunakan Jupyter untuk R. | |||
# Melakukan '''instalasi package IRKernel''' | # Memulai sesi interaktif Jupyter Notebook atau Lab pada EFIRO web. | ||
# | |||
=== Instalasi Package | === Instalasi Package IRkernel === | ||
Berikut adalah langkah untuk instalasi package IRKernel pada masing-masing user: | Berikut adalah langkah untuk instalasi package IRKernel pada masing-masing user: | ||
{| class="wikitable" | {| class="wikitable" | ||
| | ! colspan="2" |Instalasi package IRkernel R | ||
|- | |||
|'''0A''' | |'''0A''' | ||
|Instalasi package dilakukan melalui '''terminal'''. | |Instalasi package dilakukan melalui '''terminal'''. | ||
|- | |- | ||
|'''0B''' | |'''0B''' | ||
|Bagi user EFIRO, buka terminal melalui | |Bagi user EFIRO, buka terminal melalui menu '''<code>Clusters</code> > <code>Aleleon Shell Access</code>'''. | ||
[[Berkas:Shellaccess.png|nirbing|200x200px]] | [[Berkas:Shellaccess.png|nirbing|200x200px]] | ||
|- | |- | ||
Baris 276: | Baris 498: | ||
!Perintah Terminal | !Perintah Terminal | ||
|- | |- | ||
|4. | |4.3.0 | ||
|<code>$ module load R/4. | |<code>$ module load R/4.3.0-GCC11.3-MKL</code> | ||
|} | |} | ||
|- | |- | ||
|'''2''' | |'''2''' | ||
|Jalankan R dan lakukan instalasi package dengan format perintah standar: | |Jalankan R dan lakukan instalasi package dengan format perintah standar: | ||
$ R | $ R | ||
> install.packages(' | > install.packages('IRkernel') | ||
> q() | > q() | ||
|- | |- | ||
|'''3''' | |'''3''' | ||
|Buat file R profile di direktori HOME user: | |Buat file R profile di direktori HOME user: | ||
$ cd | |||
$ nano ~/.Rprofile | $ nano ~/.Rprofile | ||
Masukkan script berikut, kemudian save and exit dengan '''ctrl+x''' diikuti input '''y''' dan enter. | Masukkan script berikut, kemudian save and exit dengan '''ctrl+x''' diikuti input '''y''' dan enter. | ||
Baris 300: | Baris 520: | ||
Berikut adalah langkah untuk memulai sesi Jupyter dan menggunakan kernel R didalamnya: | Berikut adalah langkah untuk memulai sesi Jupyter dan menggunakan kernel R didalamnya: | ||
{| class="wikitable" | {| class="wikitable" | ||
| | ! colspan="2" |Memulai sesi Jupyter untuk R | ||
|- | |||
| rowspan="2" |'''0''' | |||
|Sebelum login, [[Koneksi VPN ALELEON Supercomputer|'''user harus terhubung ke jaringan VPN ALELEON Supercomputer''']]. | |||
|- | |||
|Buka alamat web '''<code><nowiki>http://aleleon.ood</nowiki></code>''' kemudian masukkan username dan password user. | |||
*Bagi user Linux, buka alamat <code>'''<nowiki>http://10.192.50.11</nowiki>'''</code> | |||
|- | |||
|'''1''' | |'''1''' | ||
|Buka menu '''Interactive Apps''' kemudian | |Buka menu '''<code>Interactive Apps</code>''' kemudian untuk memilih menggunakan Jupyter Notebook atau Lab. | ||
[[Berkas:Efirojupyternotebooklab.png|nirbing|238x238px]] | [[Berkas:Efirojupyternotebooklab.png|nirbing|238x238px]] | ||
|- | |- | ||
Baris 309: | Baris 536: | ||
* '''Partition''' | * '''Partition''' | ||
** Pilih '''torti''' | ** Pilih '''torti''' | ||
*'''Number of CPU Cores'''** Alokasi | *'''Number of CPU Cores''' | ||
** Minimal: '''1''' | ** Alokasi CPU core yang akan digunakan | ||
**Minimal: '''1''', maksimal: '''32''' | |||
*'''Number of | *'''Number of GPU''' | ||
**''kosongkan'' | |||
* '''Number of hours''' | * '''Number of hours''' | ||
**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: '''72''' | ||
*'''Anaconda Selection''' | *'''Anaconda Selection''' | ||
**''Pilih versi terbaru'' | **''Pilih versi terbaru'' | ||
Baris 327: | Baris 554: | ||
!Nama software modules | !Nama software modules | ||
|- | |- | ||
|4. | |4.3.0 | ||
|<code>R/4. | |<code>R/4.3.0-GCC11.3-MKL</code> | ||
|} | |} | ||
*'''Environment Setup''' | *'''Environment Setup''' | ||
Baris 340: | Baris 564: | ||
|- | |- | ||
|'''3''' | |'''3''' | ||
|Apabila formulir sudah terisi, klik tombol '''<code>Launch</code>''' untuk memulai sesi Jupyter | |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 siap diakses. | |||
[[Berkas:JNqueue.png|nir|jmpl|Status sesi Jupyter Notebook mengantri menunggu alokasi hardware]] | |||
|- | |- | ||
|'''4''' | |'''4''' | ||
|Apabila status menunjukkan Running atau kolom berwarna hijau, klik <code>'''Connect to Jupyter'''</code>. Perlu diperhatikan bahwa sistem mulai menghitung | |Apabila status menunjukkan Running atau kolom berwarna hijau, klik <code>'''Connect to Jupyter'''</code>. | ||
* Perlu diperhatikan bahwa sistem mulai menghitung Core Hour saat status Jupyter menunjukkan running. | |||
[[Berkas:JNrun.png|nir|jmpl|Sesi Jupyter Notebook siap diakses. ]] | |||
|- | |- | ||
|'''5''' | |'''5''' |
Revisi per 17 Oktober 2023 05.06
R adalah bahasa interpreter yang didesain untuk mengerjakan komputasi statistika. Pada perkembangannya, bahasa R digunakan untuk pengolahan data di bidang data science. Software R didukung oleh The R Foundation for Statistical Computing.
Modul R
Berikut adalah detail versi R yang tersedia secara global di ALELEON Supercomputer:
Versi | Nama modul | Modul
DEFAULT |
Dukungan hardware | |||
---|---|---|---|---|---|---|
CPU | GPU | OMP
Threading |
MPI
multi-node | |||
4.3.0 "Already Tomorrow" | R/4.3.0-GCC11.3-MKL | V | V | - | - | V melalui RMPI1 |
Keterangan:
- RMPI dapat dicapai dengan pemrograman R dari pihak user menggunakan wrapper Rmpi.
Alternatif Menjalankan R di ALELEON Supercomputer
ALELEON Supercomputer menawarkan user untuk menjalankan R dengan pilihan skema:
Menjalankan R melalui Job Submission
|
Menjalankan R dengan sesi interaktif Jupyter
|
Instalasi Library Package R
Instalasi library R pada ALELEON Supercomputer dapat dilakukan dengan alternatif cara:
- Melayangkan permintaan instalasi package ke admin melalui email support@efisonlt.com; atau
- Melakukan instalasi mandiri pada HOME user dengan langkah berikut:
Panduan instalasi modul R di HOME user | |||||
---|---|---|---|---|---|
0A | Instalasi package dilakukan melalui terminal. | ||||
0B | Bagi user EFIRO, buka terminal melalui menu Clusters > Aleleon Shell Access. | ||||
1 | Aktifkan R dengan memuat modul versi R yang akan digunakan.
| ||||
2A | Jalankan R dan lakukan instalasi package dengan format perintah standar:
$ R > install.packages('nama-package-yang-akan-diinstal') Package akan terinstal di direktori HOME user. | ||||
2B | Bagi user yang pertama kali melakukan instalasi package R:
Akan terdapat prompt untuk instalasi package di personal library, jawab yes. Warning in install.packages("benchmarkme") : 'lib = "/comp/R/4.1.2-GCC10-MKL/lib64/R/library"' is not writable Would you like to use a personal library instead? (yes/No/cancel) yes R akan meminta izin untuk menginstal package R di direktori HOME user. Jawab yes. Would you like to create a personal library ‘~/R/x86_64-pc-linux-gnu-library/4.1’ to install packages into? (yes/No/cancel) yes |
Menjalankan R Melalui Job Submission
User dapat menjalankan R melalui job submission dengan pilihan cara melalui tampilan terminal atau GUI web EFIRO.
Mengecek Kredit Core Hour bagi Akun Perseorangan
User dengan akun perseorangan disarankan untuk selalu mengecek sisa Kredit Core Hour sebelum melakukan job submission dengan menjalankan perintah pada terminal:
$ sausage
Bagi yang login ke web EFIRO, buka terminal pada menu Clusters
> Aleleon Shell Access
Terminal - SLURM sbatch
Menjalankan komputasi pada terminal melalui job submission SLURM sbatch.
Langkah Menjalankan R via SLURM sbatch | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Sebelum login, user harus terhubung ke jaringan VPN ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||||||
Login dengan SSH:
| ||||||||||||||||||||||||||||||||||||||||||
1 | Siapkan file yang dibutuhkan untuk menjalankan komputasi user. | |||||||||||||||||||||||||||||||||||||||||
2 | Buat SLURM Submit Script yaitu 'formulir' untuk menjalankan job dengan panduan berikut:
| |||||||||||||||||||||||||||||||||||||||||
3 | Jalankan job dengan perintah sbatch.
$ sbatch <nama-SLURM-Submit-script> Contoh menjalankan nama script $ sbatch my_job_submission.sh | |||||||||||||||||||||||||||||||||||||||||
4A | User dapat melihat status jalannya job dengan perintah squeue berikut.
$ squeue -ul $USER Berikut adalah daftar STATE (ST) dari squeue yang menunjukkan status berjalannya job:
| |||||||||||||||||||||||||||||||||||||||||
4B | Apabila user ingin membatalkan job, gunakan perintah scancel berdasarkan job ID.
$ scancel <job-ID-submission-user> Contoh user membatalkan job submission milik user dengan ID 231. $ scancel 231 |
GUI Web - EFIRO Job Composer
Menjalankan komputasi dengan tampilan grafis pada formulir job submission EFIRO Job Composer.
Langkah Menjalankan R via EFIRO Job Composer | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Sebelum login, user harus terhubung ke jaringan VPN ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||
Buka alamat web http://aleleon.ood kemudian masukkan username dan password user.
| ||||||||||||||||||||||||||||||||||||||
1 | Buka menu dashboard EFIRO Jobs > Jobs Composer
| |||||||||||||||||||||||||||||||||||||
2 | Pilih New Jobs > From Template
| |||||||||||||||||||||||||||||||||||||
3 |
| |||||||||||||||||||||||||||||||||||||
4 | ![]() Gunakan menu
| |||||||||||||||||||||||||||||||||||||
5 | ![]() Melalui
Keterangan:#Info SBATCH lebih detail lihat laman Submit Script ALELEON Supercomputer
| |||||||||||||||||||||||||||||||||||||
6A | Jalankan job dengan klik tombol Submit .
Berikut penjelasan kolom
| |||||||||||||||||||||||||||||||||||||
6B | Untuk menghentikan job yang tengah berjalan, klik tombol Stop. | |||||||||||||||||||||||||||||||||||||
7A | Hasil output job dapat dilihat pada kolom Folder Contents atau membuka halaman Edit Files .
| |||||||||||||||||||||||||||||||||||||
7B | User dapat menjalankan ulang ruang job yang sama dengan mengklik kembali tombol Submit .
|
Menjalankan R dengan Sesi Interaktif Jupyter
Terdapat 2 langkah untuk menjalankan R melalui sesi interaktif Jupyter yaitu:
- Melakukan instalasi package IRKernel ketika pertama kali menggunakan Jupyter untuk R.
- Memulai sesi interaktif Jupyter Notebook atau Lab pada EFIRO web.
Instalasi Package IRkernel
Berikut adalah langkah untuk instalasi package IRKernel pada masing-masing user:
Instalasi package IRkernel R | |||||
---|---|---|---|---|---|
0A | Instalasi package dilakukan melalui terminal. | ||||
0B | Bagi user EFIRO, buka terminal melalui menu Clusters > Aleleon Shell Access .
| ||||
1 | Aktifkan R dengan memuat modul versi R yang akan digunakan.
| ||||
2 | Jalankan R dan lakukan instalasi package dengan format perintah standar:
$ R > install.packages('IRkernel') > q() | ||||
3 | Buat file R profile di direktori HOME user:
$ cd $ nano ~/.Rprofile Masukkan script berikut, kemudian save and exit dengan ctrl+x diikuti input y dan enter. options(bitmapType='cairo') |
Memulai Sesi Jupyter
Berikut adalah langkah untuk memulai sesi Jupyter dan menggunakan kernel R didalamnya:
Memulai sesi Jupyter untuk R | |||||
---|---|---|---|---|---|
0 | Sebelum login, user harus terhubung ke jaringan VPN ALELEON Supercomputer. | ||||
Buka alamat web http://aleleon.ood kemudian masukkan username dan password user.
| |||||
1 | Buka menu Interactive Apps kemudian untuk memilih menggunakan Jupyter Notebook atau Lab.
| ||||
2 | Isi formulir sesi Jupyter dengan panduan berikut:
| ||||
3 | Apabila formulir sudah terisi, klik tombol Launch untuk memulai sesi Jupyter.
| ||||
4 | Apabila status menunjukkan Running atau kolom berwarna hijau, klik Connect to Jupyter .
| ||||
5 | Pilih kernel R untuk memulai sesi notebook R. |
Kontributor
EFISON mengucapkan terima kasih kepada para kontributor untuk pengujian R di ALELEON Supercomputer yang kemudian menjadi dasar penulisan tutorial di halaman ini:
- Tim Sadasa Academy.