LAMMPS: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Modul LAMMPS: formatting tabel baru) |
WilsonLisan (bicara | kontrib) (paraphrasing dan melengkapi template script) |
||
Baris 57: | Baris 57: | ||
[[Berkas:Wiki-pelaporankendala.jpg|1000x1000px|link=https://efisonlt.com/aleleonbugreport]] | [[Berkas:Wiki-pelaporankendala.jpg|1000x1000px|link=https://efisonlt.com/aleleonbugreport]] | ||
== '''Menjalankan LAMMPS pada CPU''' == | == '''Menjalankan LAMMPS pada CPU''' == | ||
User dapat menjalankan LAMMPS dengan pilihan: | User dapat menjalankan LAMMPS dengan pilihan ''(klik judul di bawah ini)'': | ||
===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#3_-_Menjalankan_Komputasi_ke_Compute_Node_via_Job_Composer EFIRO Job Composer]=== | ===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#3_-_Menjalankan_Komputasi_ke_Compute_Node_via_Job_Composer EFIRO Job Composer]=== | ||
Baris 69: | Baris 69: | ||
|} | |} | ||
===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#4_-_Menjalankan_Komputasi_ke_Compute_Node_via_SLURM_sbatch SLURM sbatch via Terminal]=== | ===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#4_-_Menjalankan_Komputasi_ke_Compute_Node_via_SLURM_sbatch SLURM sbatch via Terminal]=== | ||
Berikut adalah contoh referensi Submit Script untuk menjalankan LAMMPS | Berikut adalah contoh referensi Submit Script untuk menjalankan LAMMPS versi CPU. Perhatikan nama modul mengacu versi LAMMPS yang akan digunakan. | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Contoh SLURM Submit Script LAMMPS versi CPU | !Contoh SLURM Submit Script LAMMPS versi CPU | ||
Baris 75: | Baris 75: | ||
| | | | ||
#!/bin/bash | #!/bin/bash | ||
----- | |||
echo <<README | echo <<README | ||
Baris 81: | Baris 81: | ||
Software : LAMMPS versi CPU | Software : LAMMPS versi CPU | ||
Versi : tergantung input user | Versi : tergantung input user | ||
Update script | Update script c: 14/02/2023 | ||
NOTES: | NOTES: | ||
Baris 94: | Baris 94: | ||
4. Daftar modul software LAMMPS lihat: | 4. Daftar modul software LAMMPS lihat: | ||
<nowiki>https://wiki.efisonlt.com/wiki/LAMMPS#Modul_LAMMPS</nowiki> | <nowiki>https://wiki.efisonlt.com/wiki/LAMMPS#Modul_LAMMPS</nowiki> | ||
----- | |||
README | README | ||
Baris 118: | Baris 118: | ||
# Definisi file untuk menampung output error log | # Definisi file untuk menampung output error log | ||
#SBATCH --error=error-%j.txt | #SBATCH --error=error-%j.txt | ||
# Nama input file LAMMPS dengan format file-nya | |||
INPUT_FILE='////' | |||
# Memuat modul software LAMMPS versi CPU | # Memuat modul software LAMMPS versi CPU | ||
module load lammps//// | module load lammps//// | ||
echo <<DAFTARMODUL | |||
----- | |||
Daftar nama modul LAMMPS CPU saat ini, | |||
pilih modul LAMMPS yang akan digunakan: | |||
LAMMPS 2023.02.08 -> '''lammps/2023.02.08-GCC12.2-FFTW3-CUDA12''' | |||
----- | |||
DAFTARMODUL | |||
# ------------------------------------------------- | # ------------------------------------------------- | ||
Baris 140: | Baris 149: | ||
** Atau gunakan jumlah 4 untuk beban komputasi yang besar. | ** Atau gunakan jumlah 4 untuk beban komputasi yang besar. | ||
Berikutnya user dapat menjalankan LAMMPS dengan pilihan: | Berikutnya user dapat menjalankan LAMMPS dengan pilihan ''(klik judul di bawah ini)'': | ||
===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#3_-_Menjalankan_Komputasi_ke_Compute_Node_via_Job_Composer EFIRO Job Composer]=== | ===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_EFIRO#3_-_Menjalankan_Komputasi_ke_Compute_Node_via_Job_Composer EFIRO Job Composer]=== | ||
Baris 152: | Baris 161: | ||
|} | |} | ||
===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#4_-_Menjalankan_Komputasi_ke_Compute_Node_via_SLURM_sbatch SLURM sbatch via Terminal]=== | ===[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#4_-_Menjalankan_Komputasi_ke_Compute_Node_via_SLURM_sbatch SLURM sbatch via Terminal]=== | ||
Berikut adalah contoh referensi Submit Script untuk menjalankan LAMMPS | Berikut adalah contoh referensi Submit Script untuk menjalankan LAMMPS dengan akselerasi GPU. Perhatikan nama modul mengacu versi LAMMPS yang akan digunakan. | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Contoh SLURM Submit Script LAMMPS dengan akselerasi GPU | !Contoh SLURM Submit Script LAMMPS dengan akselerasi GPU | ||
Baris 160: | Baris 169: | ||
echo <<README | echo <<README | ||
----- | |||
Template SLURM Submit Script | Template SLURM Submit Script | ||
Software : LAMMPS dengan akselerasi GPU | Software : LAMMPS dengan akselerasi GPU | ||
Versi : tergantung input user | Versi : tergantung input user | ||
Update script | Update script c: 15/02/2023 | ||
NOTES: | NOTES: | ||
Baris 182: | Baris 191: | ||
> cpus-per-task direkomendasikan 2, atau 4 untuk beban komputasi | > cpus-per-task direkomendasikan 2, atau 4 untuk beban komputasi | ||
yang besar. | yang besar. | ||
----- | |||
README | README | ||
Baris 211: | Baris 220: | ||
# Definisi file untuk menampung output error log | # Definisi file untuk menampung output error log | ||
#SBATCH --error=error-%j.txt | #SBATCH --error=error-%j.txt | ||
# Nama input file LAMMPS dengan format file-nya | |||
INPUT_FILE='////' | |||
# Memuat modul software LAMMPS versi CPU | # Memuat modul software LAMMPS versi CPU | ||
module load lammps//// | module load lammps//// | ||
echo <<DAFTARMODUL | |||
----- | |||
Daftar nama modul LAMMPS GPU saat ini, | |||
pilih modul LAMMPS yang akan digunakan: | |||
LAMMPS 2023.02.08 -> '''lammps/2023.02.08-GCC12.2-FFTW3-CUDA12''' | |||
----- | |||
DAFTARMODUL | |||
# ------------------------------------------------- | # ------------------------------------------------- |
Revisi per 16 Februari 2023 09.40
LAMMPS (Large-scale Atomic/Molecular Massively Parallel Simulator) adalah framework molekular dinamik untuk pemodelan material (material modelling). LAMMPS adalah software open-source di bawah lisensi GPL v2.
Modul LAMMPS
Berikut adalah detail versi LAMMPS yang tersedia secara global di ALELEON Supercomputer:
Versi | Nama modul | Modul
DEFAULT |
Dukungan hardware | |||
---|---|---|---|---|---|---|
CPU | GPU | OMP
Threading |
MPI
multi-node | |||
2023.02.08 | lammps/2023.02.08-GCC12.2-FFTW3-CUDA12 | V | V | V | V | V |
Versi | Nama modul | Modul
DEFAULT |
Dukungan hardware | |||
---|---|---|---|---|---|---|
CPU | GPU | OMP
Threading |
MPI
multi-node | |||
2023.02.08 | lammps/2023.02.08-GCC12.2-FFTW3-CUDA12 | V | V | V | V | V |
Permintaan Instalasi Package LAMMPS
Apabila user menjumpai error package LAMMPS yang hilang (missing package), silahkan lapor ke admin lengkap dengan nama package yang dibutuhkan supaya dapat dilakukan proses instalasinya melalui:
Menjalankan LAMMPS pada CPU
User dapat menjalankan LAMMPS dengan pilihan (klik judul di bawah ini):
EFIRO Job Composer
Dengan pilihan template yang tersedia:
Nama Template | Penjelasan |
---|---|
LAMMPS 2023.02.08 (CPU) | Menjalankan LAMMPS versi 2023.02.08 pada CPU saja |
SLURM sbatch via Terminal
Berikut adalah contoh referensi Submit Script untuk menjalankan LAMMPS versi CPU. Perhatikan nama modul mengacu versi LAMMPS yang akan digunakan.
Contoh SLURM Submit Script LAMMPS versi CPU |
---|
#!/bin/bash ----- echo <<README Template SLURM Submit Script Software : LAMMPS versi CPU Versi : tergantung input user Update script c: 14/02/2023 NOTES: 1. Isi bagian yang ditandai 4 garing (////). 2. Template ini adalah referensi - user dapat mengubah bagian yang sekiranya perlu diubah. 3. Panduan mengisi alokasi komputasi (SBATCH) menurut spesifikasi ALELEON Supercomputer lihat: https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer 4. Daftar modul software LAMMPS lihat: https://wiki.efisonlt.com/wiki/LAMMPS#Modul_LAMMPS ----- README # -------------------------------------------------- # Alokasi komputasi, modul software, dan file input # -------------------------------------------------- # Alokasi jumlah compute node #SBATCH --nodes=//// # Alokasi jumlah core thread CPU #SBATCH --ntasks=//// # Alokasi jumlah memori RAM (satuan GB) #SBATCH --mem=////GB # Alokasi limit waktu menjalankan job #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 LAMMPS dengan format file-nya INPUT_FILE='////' # Memuat modul software LAMMPS versi CPU module load lammps//// echo <<DAFTARMODUL ----- Daftar nama modul LAMMPS CPU saat ini, pilih modul LAMMPS yang akan digunakan: LAMMPS 2023.02.08 -> lammps/2023.02.08-GCC12.2-FFTW3-CUDA12 ----- DAFTARMODUL # ------------------------------------------------- # RUN SCRIPT # ------------------------------------------------- # Perintah menjalankan LAMMPS mpirun --mca pml ucx --mca osc ucx --np $SLURM_NTASKS lmp -in $INPUT_FILE |
Menjalankan LAMMPS dengan Akselerasi GPU
Terdapat beberapa hal khusus dan rekomendasi yang harus diperhatikan ketika menjalankan LAMMPS dengan akselerasi GPU untuk menghasilkan performa optimal yaitu:
- Menggunakan 2 atau 4 core thread CPU per jumlah GPU.
- Menggunakan threading OpenMP (OMP; OMP_NUM_THREAD) dengan jumlah 2 untuk kebanyakan komputasi.
- Atau gunakan jumlah 4 untuk beban komputasi yang besar.
Berikutnya user dapat menjalankan LAMMPS dengan pilihan (klik judul di bawah ini):
EFIRO Job Composer
Dengan pilihan template yang tersedia:
Nama Template | Penjelasan |
---|---|
LAMMPS 2023.02.08 (GPU) | Menjalankan LAMMPS versi 2023.02.08 dengan akselerasi GPU |
SLURM sbatch via Terminal
Berikut adalah contoh referensi Submit Script untuk menjalankan LAMMPS dengan akselerasi GPU. Perhatikan nama modul mengacu versi LAMMPS yang akan digunakan.
Contoh SLURM Submit Script LAMMPS dengan akselerasi GPU |
---|
#!/bin/bash echo <<README ----- Template SLURM Submit Script Software : LAMMPS dengan akselerasi GPU Versi : tergantung input user Update script c: 15/02/2023 NOTES: 1. Isi bagian yang ditandai 4 garing (////). 2. Template ini adalah referensi - user dapat mengubah bagian yang sekiranya perlu diubah. 3. Panduan mengisi alokasi komputasi (SBATCH) menurut spesifikasi ALELEON Supercomputer lihat: https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer 4. Daftar modul software LAMMPS lihat: https://wiki.efisonlt.com/wiki/LAMMPS#Modul_LAMMPS 5. Rekomendasi alokasi SBATCH optimal: > ntasks antara 2 atau 4 per jumlah GPU. > cpus-per-task direkomendasikan 2, atau 4 untuk beban komputasi yang besar. ----- README # -------------------------------------------------- # Alokasi komputasi, modul software, dan file input # -------------------------------------------------- # Partisi compute node GPU #SBATCH --partition=ampere # Alokasi jumlah GPU #SBATCH --gpus=//// # Alokasi jumlah core thread CPU #SBATCH --ntasks=//// # Rekomendasi 2 thread OMP secara umum #SBATCH --cpus-per-task=2 # Alokasi jumlah memori RAM (satuan GB) #SBATCH --mem=////GB # Alokasi limit waktu menjalankan job #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 LAMMPS dengan format file-nya INPUT_FILE='////' # Memuat modul software LAMMPS versi CPU module load lammps//// echo <<DAFTARMODUL ----- Daftar nama modul LAMMPS GPU saat ini, pilih modul LAMMPS yang akan digunakan: LAMMPS 2023.02.08 -> lammps/2023.02.08-GCC12.2-FFTW3-CUDA12 ----- DAFTARMODUL # ------------------------------------------------- # RUN SCRIPT # ------------------------------------------------- # Export threading OMP export OMP_NUM_THREADS=$SLURM_CPUS_PER_TASK # Perintah menjalankan LAMMPS mpirun --mca pml ucx --mca osc ucx --np $SLURM_NTASKS lmp -sf gpu -pk gpu $SLURM_GPUS -in $INPUT_FILE |