Module Environment: Perbedaan antara revisi

Dari ALELEON by EFISON
(Major - penulisan yang lebih ringkas)
(paraphrasing dan formatting)
 
(6 revisi perantara oleh pengguna yang sama tidak ditampilkan)
Baris 1: Baris 1:
'''User dapat menggunakan software yang tersedia di ALELEON Supercomputer dengan memuat modul software tersebut melalui Module Environment'''. Module Environment adalah set modul yang berisikan alur PATH atau LIB untuk mengaktifkan software tertentu.  
Module Environment berfungsi untuk mengaktifkan software yang dikemas melalui "paket" bernama '''modul software.'''
[[Berkas:Moduleenv.png|pus|nirbing|600x600px]]


== '''Perintah Module Environment''' ==
[[Berkas:Moduleenv.png|al=|nirbing|600x600px]]
Berikut adalah daftar perintah esensial untuk menggunakan Module Environment:
 
=='''Daftar Modul Software di ALELEON Supercomputer'''==
Laman [[Katalog Software ALELEON Supercomputer|'''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:
{| class="wikitable"
{| class="wikitable"
!Perintah
! colspan="2" |Daftar Perintah Esensial Modul Environment di Terminal
!Penjelasan
|-
|-
|
| rowspan="2" |'''1'''
$ '''module load''' <x>
|Mengaktifkan modul software:
|Memuat modul software <x>. User dapat memuat banyak modul sekaligus dengan:
 
$ module load <x> <y> <z>
'''<code>$ module load ''[nama-modul-software]''</code>'''
|-
|-
|
|User dapat memuat banyak modul sekaligus dengan:
$ '''module unload''' <x>
'''<code>$ module load ''[modul-software1] [modul-software2] ...''</code>'''
|Melepas modul software <x>. User juga dapat melepas banyak modul sekaligus seperti contoh diatas.
|-
|-
|
! colspan="2" |
$ '''module list'''
|Melihat modul software yang aktif pada saat itu.
|-
|-
|
|'''2'''
$ '''module purge'''
|Menonaktifkan modul software:
|Melepas semua modul software yang aktif.
 
'''<code>$ module unload ''[nama-modul-software]''</code>'''
 
User juga dapat melepas banyak modul seperti contoh diatas.
|-
|-
|
! colspan="2" |
$ '''module av'''
|Melihat semua module software yang tersedia di HPC Aleleon Mk.II
|-
|-
|
|'''3'''
$ '''module av''' <keyword>
|Mencari modul software melalui nama / keyword:
|Mencari modul software melalui nama / keyword. Contoh: mencari module yang mengandung kata 'mpi'
 
$ module av mpi
'''<code>$ module av ''[keyword]''</code>'''
|-
|-
|
! colspan="2" |
$ '''module switch''' <x> <y>   
|-
|Mengganti modul software <x> menjadi <y>. Contoh: user ingin mengganti module 'openmpi' yang sedang aktif dengan modul 'mpich':
|'''4'''
$ module switch openmpi mpich
|Melihat daftar modul software yang aktif:
|}


== '''Daftar Modul Software ALELEON Supercomputer''' ==
'''<code>$ module list</code>'''
Admin EFISON merangkum daftar lengkap modul software ALELEON Supercomputer pada laman '''[[Katalog Software ALELEON Supercomputer]]''' melalui kolom ''''nama modul'''<nowiki/>'.
|-
! colspan="2" |
|-
|'''5'''
|Melepas semua modul software yang aktif:


== '''Menggunakan Module Environment''' ==
'''<code>$ module purge</code>'''
Module Environment digunakan pada dua tempat yaitu SLURM script dan terminal.
|-
! colspan="2" |
|-
|'''6'''
|Melihat semua module software yang tersedia:


=== Module Environent di SLURM Script ===
'''<code>$ module av</code>'''
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
! colspan="2" |
#SBATCH --ntasks=64             
|-
#SBATCH --mem=128GB             
|'''7'''
#SBATCH --time=10:00:00         
|Mengganti modul software yang sedang aktif dengan modul lainnya:
#SBATCH --output=result-%j.out   
#SBATCH --error=result-%j.err   
# 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 ===
'''<code>$ module switch ''[modul-aktif] [modul-pengganti]''</code>'''   
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.