Module Environment: Perbedaan antara revisi

Dari ALELEON by EFISON
(initial menulis tutorial modul untuk EFIRO)
(paraphrasing dan formatting)
 
(4 revisi perantara oleh pengguna yang sama tidak ditampilkan)
Baris 1: Baris 1:
Module Environment atau disebut sebagai '''modul software''' berfungsi '''untuk mengaktifkan software yang hendak digunakan oleh user di ALELEON Supercomputer'''.  
Module Environment berfungsi untuk mengaktifkan software yang dikemas melalui "paket" bernama '''modul software.'''


[[Berkas:Moduleenv.png|al=|nirbing|600x600px]]
[[Berkas:Moduleenv.png|al=|nirbing|600x600px]]


== '''Menggunakan Modul Software''' ==
=='''Daftar Modul Software di ALELEON Supercomputer'''==
Di ALELEON Supercomputer, modul software digunakan pada:
Laman [[Katalog Software ALELEON Supercomputer|'''Katalog Software ALELEON Supercomputer''']] merangkum daftar lengkap modul software yang dapat diakses oleh semua user.


* Submit Script di Job Composer
== '''Menggunakan Module Environment di Terminal'''==
* Mengisi formulir untuk menggunakan Interactive Apps
User dapat menggunakan Module Environment pada '''terminal''' untuk mengaktifkan software yang diinginkan. Berikut adalah daftar perintah esensial untuk menggunakan Module Environment:
* Penggunaan terminal
{| class="wikitable"
! colspan="2" |Daftar Perintah Esensial Modul Environment di Terminal
|-
| rowspan="2" |'''1'''
|Mengaktifkan modul software:


== '''Modul Software di Submit Script Job Composer''' ==
'''<code>$ module load ''[nama-modul-software]''</code>'''
Untuk menggunakan modul software pada Submit Script, gunakan perintah:  
|-
module load '''nama-modul-software'''
|User dapat memuat banyak modul sekaligus dengan:
'''<code>$ module load ''[modul-software1] [modul-software2] ...''</code>'''
|-
! colspan="2" |
|-
|'''2'''
|Menonaktifkan modul software:


* Tulis perintah tersebut sebelum menulis line perintah jalannya program.
'''<code>$ module unload ''[nama-modul-software]''</code>'''


== '''Menggunakan Modul Software di Terminal''' ==
User juga dapat melepas banyak modul seperti contoh diatas.
Berikut adalah daftar perintah esensial untuk menggunakan modul software di terminal
|-
{| class="wikitable"
! colspan="2" |
!Perintah
!Penjelasan
|-
|-
|
|'''3'''
$ '''module load''' <x>
|Mencari modul software melalui nama / keyword:
|Memuat modul software <x>. User dapat memuat banyak modul sekaligus dengan:
 
$ module load <x> <y> <z>
'''<code>$ module av ''[keyword]''</code>'''
|-
|-
|
! colspan="2" |
$ '''module unload''' <x>
|Melepas modul software <x>. User juga dapat melepas banyak modul sekaligus seperti contoh diatas.
|-
|-
|
|'''4'''
$ '''module list'''
|Melihat daftar modul software yang aktif:
|Melihat modul software yang aktif pada saat itu.
 
'''<code>$ module list</code>'''
|-
|-
|
! colspan="2" |
$ '''module purge'''
|Melepas semua modul software yang aktif.
|-
|-
|
|'''5'''
$ '''module av'''
|Melepas semua modul software yang aktif:
|Melihat semua module software yang tersedia di HPC Aleleon Mk.II
 
'''<code>$ module purge</code>'''
|-
|-
|
! colspan="2" |
$ '''module av''' <keyword>
|Mencari modul software melalui nama / keyword. Contoh: mencari module yang mengandung kata 'mpi'
$ module av mpi
|-
|-
|
|'''6'''
$ '''module switch''' <x> <y>   
|Melihat semua module software yang tersedia:
|Mengganti modul software <x> menjadi <y>. Contoh: user ingin mengganti module 'openmpi' yang sedang aktif dengan modul 'mpich':
$ module switch openmpi mpich
|}


== '''Daftar Modul Software ALELEON Supercomputer''' ==
'''<code>$ module av</code>'''
Admin EFISON merangkum daftar lengkap modul software ALELEON Supercomputer pada laman '''[[Katalog Software ALELEON Supercomputer]]''' melalui kolom ''''nama modul'''<nowiki/>'.
|-
! colspan="2" |
|-
|'''7'''
|Mengganti modul software yang sedang aktif dengan modul lainnya:


== '''Menggunakan Module Environment''' ==
'''<code>$ module switch ''[modul-aktif] [modul-pengganti]''</code>'''   
Module Environment digunakan pada dua tempat yaitu SLURM script dan terminal.


=== Module Environent di SLURM Script ===
|}
Untuk menjalankan software di Compute Node, user wajib menulis perintah memuat modul software yang digunakan pada SLURM Script. Lihat contoh dibawah ini yaitu module load pada SLURM Script untuk menjalankan software NWChem.
#!/bin/bash
#SBATCH ... bla bla bla disingkat ya ._.
# Memuat modul NWChem
# Apabila modul tidak dimuat maka Compute Node tidak bisa menjalankan NWChem
# Perhatikan bahwa penulisan module load harus sebelum perintah menjalankan NWChem
'''module load nwchem'''
# Perintah menjalankan NWChem
'''mpirun -np $SLURM_NTASKS --mca pml ucx --mca osc ucx nwchem''' file_input.nw
 
=== Module Environment di Terminal ===
Terdapat pekerjaan di Login Node yang membutuhkan software tertentu? User dapat menggunakan perintah Module Environment di terminal. Pada contoh dibawah ini, user membutuhkan Open MPI untuk melakukan compile program sebelum dijalankan pada Compute Node.
 
* Secara default, sistem tidak memuat Open MPI.
 
$ which mpicc
/usr/bin/which: no mpicc in (/usr/local/bin:/opt/rh/devtoolset-9/root/usr/bin:/usr/bin:/usr/local/sbin:/usr/sbin:/home/ale01/.local/bin:/home/ale01/bin
 
* User memuat modul Open MPI (dengan nama modul 'openmpi') dengan perintah module load:
 
$ module load openmpi
 
* Sekarang Open MPI telah aktif dan siap digunakan untuk melalukan compile program.
 
$ which mpicc
/comp/easybuild/software/OpenMPI/4.1.0-GCC-10.2.0/bin/mpicc
 
* Apabila user tidak lagi membutuhkan Open MPI maka user dapat menonaktifkan Open MPI dengan module unload.


$ module unload openmpi
== '''Menggunakan Module Environment di Submit Script''' ==
[https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#Memuat_Software_dengan_module_load '''Bagian dari laman Submit Script ALELEON Supercomputer'''] memuat petunjuk menggunakan module environment pada Submit Script.

Revisi terkini sejak 4 Juni 2024 14.43

Module Environment berfungsi untuk mengaktifkan software yang dikemas melalui "paket" bernama modul software.

Daftar Modul Software di ALELEON Supercomputer

Laman Katalog Software ALELEON Supercomputer merangkum daftar lengkap modul software yang dapat diakses oleh semua user.

Menggunakan Module Environment di Terminal

User dapat menggunakan Module Environment pada terminal untuk mengaktifkan software yang diinginkan. Berikut adalah daftar perintah esensial untuk menggunakan Module Environment:

Daftar Perintah Esensial Modul Environment di Terminal
1 Mengaktifkan modul software:

$ module load [nama-modul-software]

User dapat memuat banyak modul sekaligus dengan:

$ module load [modul-software1] [modul-software2] ...

2 Menonaktifkan modul software:

$ module unload [nama-modul-software]

User juga dapat melepas banyak modul seperti contoh diatas.

3 Mencari modul software melalui nama / keyword:

$ module av [keyword]

4 Melihat daftar modul software yang aktif:

$ module list

5 Melepas semua modul software yang aktif:

$ module purge

6 Melihat semua module software yang tersedia:

$ module av

7 Mengganti modul software yang sedang aktif dengan modul lainnya:

$ module switch [modul-aktif] [modul-pengganti]

Menggunakan Module Environment di Submit Script

Bagian dari laman Submit Script ALELEON Supercomputer memuat petunjuk menggunakan module environment pada Submit Script.