R
Deskripsi
R adalah software untuk menjalankan komputasi statistik dan grafis. Software R didukung oleh The R Foundation for Statistical Computing.
Versi yang Tersedia
Versi | Nama Modul | Dukungan MPI | Dukungan Hardware |
---|---|---|---|
4.0.4 "Lost Library Book" | R | ya, melalui RMPI | default: CPU, parallel single-node
*parallel multi-node dengan RMPI |
Perlu dketahui bahwa HPC Aleleon Mk.II tidak menyediakan IDE R Studio. Rekomendasi dari admin EFISON adalah:
- Melakukan coding dan testing R pada komputer pribadi user dimana dapat menggunakan IDE R Studio.
- R pada HPC Aleleon Mk.II hanya digunakan untuk menjalankan script R yang siap dijalankan.
Package Library R
User dapat melihat library R yang terinstal dengan memuat modul R yang akan dipakai lalu menjalankan perintah installed.packages():
$ module load R $ R -> installed.packages()
User dapat menghubungi admin EFISON apabila membutuhkan instalasi R versi spesifik dan R packages yang belum terinstal melalui email:
support@efisonlt.com
Contoh SLURM Script
User harus menggunakan manajemen SLURM untuk menjalankan komputasi R di Compute Node.
Satu Node CPU
Secara standar, R berjalan dengan satu compute node. R pada HPC Aleleon Mk.II telah diatur untuk dapat memanfaatkan semua core CPU dengan paralelisasi threading. Berikut adalah contoh untuk menjalankan R pada satu node CPU.
#!/bin/bash #SBATCH --ntasks=64 # Contoh menggunakan 64 core CPU #SBATCH --mem=128GB # Contoh menggunakan RAM 128GB #SBATCH --time=10:00:00 # Contoh menetapkan walltime maks 10 jam #SBATCH --output=result-%j.out # Output terminal program #SBATCH --error=result-%j.err # Output verbose program # Memuat modul R module load R # Menjalankan program R Rscript myjob.R
R dengan MPI (RMPI)
RMPI dijalankan dengan model Pure MPI (hanya MPI saja, bukan hybrid MPI/OMP). RMPI dapat dicapai dengan pemograman dari user sendiri, bukan secara otomatis package RMPI mengubah coding R biasa menjadi R MPI. User dapat menjalankan R dengan satu node atau multi node (lebih dari satu node) untuk performa lebih.
Contoh berikut untuk menjalankan R pada satu node CPU.
#!/bin/bash #SBATCH --ntasks=64 # Contoh menggunakan 64 core CPU #SBATCH --mem=128GB # Contoh menggunakan RAM 128GB #SBATCH --time=10:00:00 # Contoh menetapkan walltime maks 10 jam #SBATCH --output=result-%j.out # Output terminal program #SBATCH --error=result-%j.err # Output verbose program # Memuat modul R module load R # RUN COMMAND # mpirun wajib menggunakan flag protokol UCX mpirun -np $SLURM_NTASKS --mca pml ucx --mca osc ucx Rscript myjob.R
Contoh berikut untuk menjalankan NWChem pada lebih dari satu node CPU.
#!/bin/bash #SBATCH --nodes=2 # Contoh menggunakan 2 node ... #SBATCH --ntasks-per-node=128 # dengan 128 core per node. # Maka dari itu total menggunakan 256 core CPU #SBATCH --mem=128GB # Contoh menggunakan RAM 128GB per node #SBATCH --time=10:00:00 # Contoh menggunakan walltime maks 10 jam #SBATCH --output=result-%j.out # Output terminal program #SBATCH --error=result-%j.err # Output verbose program # Memuat modul R module load R # RUN COMMAND # mpirun wajib menggunakan flag protokol UCX # $SLURM_NTASKS menangkap total proses MPI (nodes * ntasks-per-node) mpirun -np $SLURM_NTASKS --mca pml ucx --mca osc ucx Rscript myjob.R
User dapat melihat laman SLURM Script untuk Komputasi Paralel MPI untuk memahami lebih lanjut tentang berbagai contoh SLURM script diatas,