R: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (melengkapi R jupyter) |
WilsonLisan (bicara | kontrib) (→Interactive Job Jupyter: formatting) |
||
(49 revisi perantara oleh pengguna yang sama tidak ditampilkan) | |||
Baris 2: | Baris 2: | ||
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 [https://www.r-project.org/ '''The R Foundation for Statistical Computing''']. | 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 [https://www.r-project.org/ '''The R Foundation for Statistical Computing''']. | ||
== '''Modul R''' == | == '''Modul R''' == | ||
Berikut adalah detail versi R yang tersedia secara global di ALELEON Supercomputer: | Berikut adalah detail versi R yang tersedia secara global di ALELEON Supercomputer: | ||
{| class="wikitable" | {| class="wikitable" | ||
! rowspan="2" |Versi | ! rowspan="2" |Versi | ||
! rowspan="2" |Nama modul | ! rowspan="2" |Nama modul R | ||
! colspan="4" |Dukungan hardware | ! colspan="4" |Dukungan hardware | ||
|- | |- | ||
Baris 19: | Baris 13: | ||
!GPU | !GPU | ||
!OMP | !OMP | ||
threading | |||
!MPI | !MPI | ||
multi-node | multi-node | ||
|- | |- | ||
|4. | |4.3.0 "Already Tomorrow" | ||
|R/4. | |R/4.3.0-GCC11.3-MKL | ||
|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. | |||
== '''Langkah Menjalankan Komputasi''' == | |||
Terdapat 2 langkah utama: | |||
# Memlilih modul R yang akan digunakan dan instalasi library package R apabila dibutuhkan. | |||
# Memilih metode menjalankan komputasi -> job submission atau sesi interaktif Jupyter. | |||
== '''Instalasi Library Package R''' == | |||
Instalasi library R pada ALELEON Supercomputer dapat dilakukan dengan dua alternatif cara: | |||
=='''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 | # Melayangkan permintaan instalasi package ke admin melalui email '''support@efisonlt.com;''' atau | ||
# Melakukan instalasi mandiri dengan langkah berikut: | # Melakukan instalasi mandiri di Login Node dengan langkah berikut: | ||
{| class="wikitable" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah instalasi mandiri Library Package R di Login Node | |||
|- | |- | ||
!1 | |||
|- | |- | ||
|''' | |Masuk ke terminal melalui '''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#Login_SSH Login SSH]''' atau | ||
{| class="wikitable" | {| class="wikitable" | ||
| [[Berkas:Pinnedapps terminal.png|nirbing|129x129px]] | |||
! | | | ||
*[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#Login_Web_EFIRO '''Login ke web EFIRO''']; | |||
* Buka pinned apps '''<code>Aleleon Shell Access</code>''' | |||
|}Kegiatan ini tidak mengurangi Core Hour user. | |||
|- | |||
!2 | |||
|- | |- | ||
| | |Aktifkan R dengan memuat modul versi R yang akan digunakan: | ||
<code>'''$ module load ''[nama-modul-R]'''''</code> | |||
* ''Lihat subbab Modul R di atas.'' | |||
|- | |- | ||
!3 | |||
|- | |- | ||
|Jalankan R dan lakukan instalasi package dengan format perintah standar: | |Jalankan R dan lakukan instalasi package dengan format perintah standar: | ||
$ R | $ R | ||
Baris 86: | Baris 67: | ||
Package akan terinstal di direktori '''HOME user'''. | Package akan terinstal di direktori '''HOME user'''. | ||
|- | |- | ||
!'''''Bagi user yang pertama kali melakukan instalasi package R:''''' | |||
|- | |||
Akan | |Akan ada prompt untuk mengarahkan instalasi ke 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 | Kemudian R akan meminta izin untuk membuat personal library di 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 98: | Baris 79: | ||
|} | |} | ||
== '''Menjalankan R | == '''Metode Menjalankan Komputasi''' == | ||
User dapat memilih metode menjalankan komputasi sesuai keinginan: | |||
*'''Job submission terminal''' | |||
** ''Berjalan di [https://wiki.efisonlt.com/wiki/Spesifikasi_ALELEON_Supercomputer#Spesifikasi_Compute_Node compute node] melalui manajemen Slurm.'' | |||
**''Hanya untuk file R, file ipynb harus diubah ke R.'' | |||
* '''Job submission web EFIRO''' | |||
**''Berjalan di [https://wiki.efisonlt.com/wiki/Spesifikasi_ALELEON_Supercomputer#Spesifikasi_Compute_Node compute node] melalui manajemen Slurm via web EFIRO.'' | |||
**''Hanya untuk file R, file ipynb harus diubah ke R.'' | |||
*'''Interactive job Jupyter''' | |||
**''Sesi IDE Jupyter Lab atau Notebook.'' | |||
**''Berjalan di [https://wiki.efisonlt.com/wiki/Spesifikasi_ALELEON_Supercomputer#Spesifikasi_Interactive_Node interactive node].'' | |||
== ''' | === '''Job Submission Terminal''' === | ||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Langkah Job Submission Terminal | |||
[[Berkas:Sbatch Terminal.png|400x400px]] | |||
|- | |||
!1 | |||
|- | |||
|'''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#Login_SSH Login SSH]''' ke ALELEON Supercomputer. | |||
|- | |||
!2 | |||
|- | |||
|Siapkan file komputasi dan instalasi package R yang dibutuhkan. | |||
*User dapat upload / download file dengan [[Upload File dengan Aplikasi FTP|'''software FTP''']]. | |||
|- | |||
!3A | |||
|- | |||
|Buat '''Submit Script''' yaitu 'formulir' untuk menjalankan job komputasi. | |||
* Nama file bebas dengan format .sh, contoh '''<code>submit.sh</code>''' | |||
|- | |||
! | |||
|- | |||
|Contoh template Submit Script, ikuti petunjuk NOTES didalamnya. | |||
*''<small>Klik expand / kembangkan</small>'' | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Template R | |||
|- | |||
|<syntaxhighlight lang="bash" line="1"> | |||
#!/bin/bash | |||
# ----------------------------------------------------- | |||
# Template SLURM Submit Script | |||
# R | rev.080124 | |||
# | |||
# NOTES: | |||
# 1. Isi bagian yang ditandai 4 garing (////). | |||
# 2. Template ini bersifat referensi. | |||
# User dapat mengubah bagian yang perlu diubah. | |||
# ----------------------------------------------------- | |||
# ----------------------------------------------------- | |||
# Alokasi komputasi SBATCH, input, dan module | |||
# ----------------------------------------------------- | |||
# 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 program | |||
#SBATCH --output=result-%j.txt | |||
# | # Definisi file untuk menampung output error log | ||
#SBATCH --error=error-%j.txt | |||
=== | # Nama input file R yang dijalankan | ||
INPUT_FILE="////.R" | |||
# Memuat modul software R | |||
# Daftar modul lihat subbab "Modul R" di atas | |||
module load R//// | |||
# ---------------------------------------------------- | |||
# Script jalannya program | |||
# ---------------------------------------------------- | |||
# Perintah menjakankan R | |||
Rscript ${INPUT_FILE} | |||
</syntaxhighlight> | |||
|} | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Template R versi MPI (RMPI) | |||
|- | |||
|<syntaxhighlight lang="bash" line="1"> | |||
#!/bin/bash | |||
# ----------------------------------------------------- | |||
# Template SLURM Submit Script | |||
# R versi MPI (RMPI) | rev.080124 | |||
# | |||
# NOTES: | |||
# 1. Isi bagian yang ditandai 4 garing (////). | |||
# 2. Template ini bersifat referensi. | |||
# User dapat mengubah bagian yang perlu diubah. | |||
# ----------------------------------------------------- | |||
# ----------------------------------------------------- | |||
# Alokasi komputasi SBATCH, input, dan module | |||
# ----------------------------------------------------- | |||
# 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 program | |||
#SBATCH --output=result-%j.txt | |||
# Definisi file untuk menampung output error log | |||
#SBATCH --error=error-%j.txt | |||
# Nama input file R yang dijalankan | |||
INPUT_FILE="////.R" | |||
# Memuat modul software R | |||
# Daftar modul lihat subbab "Modul R" di atas | |||
module load R//// | |||
# ---------------------------------------------------- | |||
# Script jalannya program | |||
# ---------------------------------------------------- | |||
# Memuat modul OpenMPI default | |||
module load OpenMPI | |||
# Perintah menjakankan R | |||
mpirun -np ${SLURM_NTASKS} Rscript ${INPUT_FILE} | |||
</syntaxhighlight> | |||
|} | |||
|- | |||
| | |||
*''<small>Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']].</small>'' | |||
*''<small>Untuk SBATCH notifikasi email status jalannya job lihat [https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM '''Slurm Jojo'''].</small>'' | |||
|- | |||
!3B | |||
|- | |||
|'''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-r''' | |||
|- | |||
!4 | |||
|- | |||
|Jalankan job komputasi dengan perintah: | |||
$ '''sbatch ''[nama-submit-script]''''' | |||
''Contoh:'' | |||
$ sbatch submit.sh | |||
|- | |||
!5 | |||
|- | |||
|User dapat melihat status jalannya job dengan perintah: | |||
'''<code>$ squeue -ul $USER</code>''' | |||
{| class="wikitable" | {| class="wikitable" | ||
! colspan="2" |''Kolom ST atau STATE menunjukkan status jalannya job.'' | |||
|'' | |- | ||
| | ! STATE | ||
!Penjelasan | |||
|- | |- | ||
| | |R (RUN) | ||
| | |Job berjalan | ||
|- | |- | ||
|'''1''' | |PD (PENDING) | ||
| | |Job tertahan, lihat [[Daftar Reason NODELIST ALELEON Supercomputer|'''NODELIST(REASON)''']] | ||
|- | |||
| CG (COMPLETING) | |||
|Job selesai dan dalam proses clean-up | |||
|- | |||
|CA (CANCELED) | |||
|Job dibatalkan user | |||
|- | |||
|PR (PREEMPETED) | |||
|Job dibatalkan admin, alasan dikabarkan via email | |||
|- | |||
|S (SUSPENDED) | |||
|Job ditahan admin, alasan dikabarkan via email | |||
|} | |||
|- | |||
! | |||
|- | |||
|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 | |||
|- | |||
!Tips | |||
|- | |||
|Apabila program R gagal selesai karena package R yang belum terinstal: | |||
* File output SBATCH error merekap package R yang belum terinstal. | |||
* Berdasarkan info tersebut, lakukan instalasi package R. | |||
|} | |||
===Job Submission Web EFIRO=== | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Langkah Job Submission Web EFIRO | |||
[[Berkas:Efirojobcomposer3.png|400x400px]] | |||
|- | |||
!1 | |||
|- | |||
| [https: / wiki.efisonlt.com wiki Menggunakan_ALELEON_Supercomputer_via_EFIRO#1_ |'''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#Login_Web_EFIRO Login ke web EFIRO]''' ALELEON Supercomputer. | |||
|- | |||
!2 | |||
|- | |||
|[[Berkas:New Pinnedapps jc.png|nirbing|128x128px]]Buka pinned apps '''Job Composer''' di homepage EFIRO. | |||
Pilih menu '''<code>New Job</code>''' -> '''<code>From Template</code>''' | |||
[[Berkas:Jcnewjobmarked.png|nirbing|180x180px]] | |||
|- | |||
!3 | |||
|- | |||
| | |||
{| class="wikitable" | |||
! colspan="2" |Pilih template R yang diinginkan: | |||
|- | |||
!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 | |||
|}Kemudian Isi '''<code>Job Name</code>''' dan klik '''<code>Create New Job</code>''' | |||
[[Berkas:Jctemplate-2.png|nirbing]] | |||
|- | |||
!4 | |||
|- | |||
|Siapkan file komputasi dan instalasi package R yang dibutuhkan. | |||
*Upload / download / edit file via menu <code>'''Edit Files'''</code> | |||
**Untuk upload file tunggal diatas 2GB gunakan [[Upload File dengan Aplikasi FTP|'''software FTP''']]. | |||
*Instalasi package R di terminal melalui menu <code>'''Open Terminal'''</code>. | |||
[[Berkas:JC job menu.png|nirbing|500x500px]] | |||
|- | |||
!5A | |||
|- | |||
|Lengkapi '''Submit Script''' melalui tombol '''<code>Open Editor:</code>''' | |||
* Submit script adalah 'formulir' untuk menjalankan job komputasi. | |||
**Ikuti petunjuk NOTES didalamnya. | |||
*Klik '''<code>Save</code>''' setiap kali mengubah script. | |||
[[Berkas:Jceditor3.png|al=|nirbing|400x400px]] | |||
|- | |||
| | |||
*''<small>Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']].</small>'' | |||
*''<small>Untuk SBATCH notifikasi email status jalannya job lihat [https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM '''Slurm Jojo'''].</small>'' | |||
|- | |||
! 5B | |||
|- | |||
| '''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-r''' | |||
|- | |||
!6 | |||
|- | |||
|Jalankan job dengan klik tombol '''<code>Submit</code>'''. | |||
*Pantau kolom status yang menjelaskan status jalannya job. | |||
* Apabila ingin membatalkan job yang berjalan, klik '''<code>Stop</code>'''. | |||
[[Berkas:JC job runstop.png|al=|nirbing|500x500px]] | |||
{| class="wikitable" | {| class="wikitable" | ||
! | ! colspan="2" | Daftar status job: | ||
! | |- | ||
!Status | |||
!Arti | |||
|- | |||
|Not Submitted | |||
|Job belum pernah dijalankan. | |||
|- | |||
|Running | |||
|Job berjalan. | |||
|- | |||
|Queue | |||
|Job mengantri dan belum berjalan. | |||
|- | |||
|Completed | |||
| Job selesai berjalan. | |||
|- | |||
|Failed | |||
|Job berhenti karena error atau di stop user. | |||
|- | |||
| colspan="2" |'''''Untuk melihat alasan job yang queue:'''''[[Berkas:Active Jobs detail.png|nir|jmpl|300x300px|''Buka pinned apps '''Active Jobs''' di homepage EFIRO. Ubah opsi All jobs ke '''Your Jobs'''. Klik simbol '''>''' untuk melihat status job yang pending pada kolom Reason. Arti reason lihat laman [[Daftar Reason NODELIST ALELEON Supercomputer|'''Daftar Reason NODELIST ALELEON Supercomputer''']].'']] | |||
|} | |||
|- | |||
!7 | |||
|- | |||
| Lihat output file komputasi pada kolom '''<code>Folder Contents</code>''' | |||
*Atau dengan membuka '''<code>Edit Files</code>''' | |||
[[Berkas:Jcfoldercontentsedit.png|al=|nir|jmpl|''Kolom '''<code>Folder Contents</code>'''.'']] | |||
|- | |||
!8 | |||
|- | |||
|Untuk menghapus ruang job dan datanya: | |||
*Pilih ruang job yang akan dihapus. | |||
*Klik menu '''<code>Delete</code>''' | |||
[[Berkas:JC delete menu.png|nirbing|500x500px]] | |||
|- | |- | ||
!Tips | |||
|- | |- | ||
| | |Apabila program R gagal selesai karena package R yang belum terinstal: | ||
* File output SBATCH error merekap package R yang belum terinstal. | |||
* Berdasarkan info tersebut, lakukan instalasi package R. | |||
|} | |} | ||
''''' | |||
=== '''Interactive Job Jupyter''' === | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Langkah Interactive Job Sesi Jupyter | |||
[[Berkas:Efirojupyterlab.png|400x400px]] | |||
|- | |||
!0 | |||
|- | |||
|'''Install package IRKernel apabila pertama kali menggunakan Jupyter untuk R''' | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Langkah instalasi package IRkernel R | |||
|- | |||
!1 | |||
|- | |||
|Masuk ke terminal melalui '''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#Login_SSH Login SSH]''' atau | |||
{| class="wikitable" | |||
| [[Berkas:Pinnedapps terminal.png|nirbing|129x129px]] | |||
| | |||
*[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#Login_Web_EFIRO '''Login ke web EFIRO''']; | |||
* Buka pinned apps '''<code>Aleleon Shell Access</code>''' | |||
|}Kegiatan ini tidak mengurangi Core Hour user. | |||
|- | |||
!2 | |||
|- | |||
|Aktifkan R dengan memuat modul versi R yang akan digunakan: | |||
<code>'''$ module load ''[nama-modul-R]'''''</code> | |||
* ''Lihat subbab Modul R di atas.'' | |||
|- | |||
!3 | |||
|- | |||
|Aktifkan modul Anaconda terbaru: | |||
<code>'''$ module load Anaconda3'''</code> | |||
|- | |||
!4 | |||
|- | |- | ||
|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') | ||
> IRkernel::installspec() | |||
> q() | > q() | ||
|- | |- | ||
| | !5 | ||
|- | |||
|Buat file R profile di direktori HOME user: | |Buat file R profile di direktori HOME user: | ||
$ | $ cd | ||
$ touch ~/.Rprofile | |||
options(bitmapType='cairo') | $ echo "options(bitmapType='cairo')" >> ~/.Rprofile | ||
|} | |} | ||
|- | |||
!1 | |||
|- | |||
|'''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#Login_Web_EFIRO Login ke web EFIRO]''' ALELEON Supercomputer. | |||
|- | |||
!2 | |||
|- | |||
| | |||
{| class="wikitable" | {| class="wikitable" | ||
| | |[[Berkas:New Pinnedapps jupyter.png|nirbing|116x116px]] | ||
| | |Buka pinned apps '''Jupyter''' di homepage EFIRO. | ||
|Buka | |} | ||
|- | |- | ||
| | !3 | ||
|Isi formulir sesi Jupyter dengan panduan berikut: | |- | ||
* ''' | |Isi formulir untuk memulai sesi Jupyter dengan panduan berikut: | ||
** | * '''Choose Jupyter version''' | ||
**''pilih sesuai preferensi user, Jupyter Lab atau Notebook'' | |||
*'''Partition''' -> Torti | |||
* | |||
{| class="wikitable" | {| class="wikitable" | ||
! | !Alokasi komputasi | ||
! | !torti | ||
|- | |- | ||
| | |Number of CPU core(s) | ||
| | |1 - 32 | ||
|- | |- | ||
| | | Amount of memory/RAM | ||
| 1 - 64 | |||
|- | |||
|Number of GPUs | |||
| - | |||
|- | |||
|Number of hours | |||
|1 - 72 | |||
|- | |||
| colspan="2" |'''Pada akun perseorangan, sesi Jupyter tidak akan berjalan apabila:''' | |||
*Alokasi CPU * hours > sisa CPU Core Hour | |||
* Alokasi GPU * hours > sisa GPU HourCek sisa Core Hour dengan: | |||
# Buka menu '''<code>Clusters</code>''' '''->''' '''<code>ALELEON Shell Access</code>''' | |||
#Jalankan perintah | |||
$ '''sausage''' | |||
|} | |} | ||
*'''Environment | *'''Choose how to launch Jupyter''' -> Anaconda | ||
* | *'''Choose Anaconda version''' -> ''Pilih versi terbaru'' | ||
*'''Email | *'''Conda environment directory''' -> ''Kosongkan'' | ||
** | *'''Software modules''' -> ''Masukkan nama modul R yang digunakan'' | ||
** | |||
* '''Environment setup''' -> ''Kosongkan'' | |||
*'''Additional Jupyter arguments''' -> ''Kosongkan'' | |||
* '''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 | ||
|Pilih | |- | ||
|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 R untuk memulai sesi notebook R.[[Berkas:JNkernel.png|nir|jmpl|''Gunakan Notebook R untuk menjalankan kernel R di Jupyter Notebook''|al=|281x281px]][[Berkas:Rjupyterlab.png|nir|jmpl|225x225px|''Gunakan Notebook R untuk menjalankan kernel R 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. | |||
|} | |} | ||
=='''Pelaporan Kendala dan Support'''== | |||
Apabila menjumpai masalah teknis dalam menjalankan komputasi R, 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''' | |||
== '''Kontributor''' == | == '''Kontributor''' == | ||
EFISON mengucapkan terima kasih kepada para kontributor untuk pengujian R di ALELEON Supercomputer yang kemudian menjadi dasar penulisan tutorial di halaman ini: | EFISON mengucapkan terima kasih kepada para kontributor untuk pengujian R di ALELEON Supercomputer yang kemudian menjadi dasar penulisan tutorial di halaman ini: | ||
* Tim [https://sadasa.id/ '''Sadasa Academy''']. | * Tim [https://sadasa.id/ '''Sadasa Academy''']. |
Revisi terkini sejak 22 Juli 2024 09.21
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 R | Dukungan hardware | |||
---|---|---|---|---|---|
CPU | GPU | OMP
threading |
MPI
multi-node | ||
4.3.0 "Already Tomorrow" | R/4.3.0-GCC11.3-MKL | V | - | - | V melalui RMPI1 |
Keterangan:
- RMPI dapat dicapai dengan pemrograman R dari pihak user menggunakan wrapper Rmpi.
Langkah Menjalankan Komputasi
Terdapat 2 langkah utama:
- Memlilih modul R yang akan digunakan dan instalasi library package R apabila dibutuhkan.
- Memilih metode menjalankan komputasi -> job submission atau sesi interaktif Jupyter.
Instalasi Library Package R
Instalasi library R pada ALELEON Supercomputer dapat dilakukan dengan dua alternatif cara:
- Melayangkan permintaan instalasi package ke admin melalui email support@efisonlt.com; atau
- Melakukan instalasi mandiri di Login Node dengan langkah berikut:
Langkah instalasi mandiri Library Package R di Login Node | ||
---|---|---|
1 | ||
Masuk ke terminal melalui Login SSH atau
| ||
2 | ||
Aktifkan R dengan memuat modul versi R yang akan digunakan:
| ||
3 | ||
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. | ||
Bagi user yang pertama kali melakukan instalasi package R: | ||
Akan ada prompt untuk mengarahkan instalasi ke 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 Kemudian R akan meminta izin untuk membuat personal library di 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 |
Metode Menjalankan Komputasi
User dapat memilih metode menjalankan komputasi sesuai keinginan:
- Job submission terminal
- Berjalan di compute node melalui manajemen Slurm.
- Hanya untuk file R, file ipynb harus diubah ke R.
- Job submission web EFIRO
- Berjalan di compute node melalui manajemen Slurm via web EFIRO.
- Hanya untuk file R, file ipynb harus diubah ke R.
- Interactive job Jupyter
- Sesi IDE Jupyter Lab atau Notebook.
- Berjalan di interactive node.
Job Submission Terminal
Langkah Job Submission Terminal | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login SSH ke ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
Siapkan file komputasi dan instalasi package R yang dibutuhkan.
| ||||||||||||||||
3A | ||||||||||||||||
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi.
| ||||||||||||||||
Contoh template Submit Script, ikuti petunjuk NOTES didalamnya.
| ||||||||||||||||
| ||||||||||||||||
3B | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah berikut: $ slimit-r | ||||||||||||||||
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 | ||||||||||||||||
Tips | ||||||||||||||||
Apabila program R gagal selesai karena package R yang belum terinstal:
|
Job Submission Web EFIRO
Langkah Job Submission Web EFIRO | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login ke web EFIRO ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
![]() Pilih menu | ||||||||||||||||
3 | ||||||||||||||||
Job Name dan klik Create New Job
| ||||||||||||||||
4 | ||||||||||||||||
Siapkan file komputasi dan instalasi package R yang dibutuhkan.
| ||||||||||||||||
5A | ||||||||||||||||
Lengkapi Submit Script melalui tombol Open Editor:
| ||||||||||||||||
| ||||||||||||||||
5B | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah berikut pada terminal: $ slimit-r | ||||||||||||||||
6 | ||||||||||||||||
Jalankan job dengan klik tombol Submit .
| ||||||||||||||||
7 | ||||||||||||||||
Lihat output file komputasi pada kolom Folder Contents
| ||||||||||||||||
8 | ||||||||||||||||
Untuk menghapus ruang job dan datanya:
| ||||||||||||||||
Tips | ||||||||||||||||
Apabila program R gagal selesai karena package R yang belum terinstal:
|
Interactive Job Jupyter
Langkah Interactive Job Sesi Jupyter | |||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | |||||||||||||
Install package IRKernel apabila pertama kali menggunakan Jupyter untuk R
| |||||||||||||
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 R untuk memulai sesi notebook R. | |||||||||||||
7 | |||||||||||||
User dapat mengunjungi sesi Jupyter yang sedang berjalan pada:
|
Pelaporan Kendala dan Support
Apabila menjumpai masalah teknis dalam menjalankan komputasi R, silahkan lapor dengan klik gambar berikut ini.
---
Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email:
support@efisonlt.com
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.