Quantum ESPRESSO: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (→Job Submission Web EFIRO: fix formatting error) |
WilsonLisan (bicara | kontrib) (→Job Submission Web EFIRO: test) |
||
Baris 210: | Baris 210: | ||
===Job Submission Web EFIRO=== | ===Job Submission Web EFIRO=== | ||
{| class="wikitable mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Langkah Job Submission | !Langkah Job Submission Terminal | ||
[[Berkas: | [[Berkas:Sbatch Terminal.png|tepi|400x400px]] | ||
|- | |- | ||
!1 | !1 | ||
|- | |- | ||
| [https: / wiki.efisonlt.com wiki | | Lakukan [https: / wiki.efisonlt.com wiki Menggunakan_ALELEON_Supercomputer_via_Terminal#1_ |'''[https://wiki.efisonlt.com/wiki/Menggunakan_ALELEON_Supercomputer_via_Terminal#Login_SSH Login SSH]''' ke ALELEON Supercomputer. | ||
|- | |- | ||
!2 | ! 2 | ||
|- | |- | ||
| | |Siapkan file komputasi 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. | ||
| | {| class="wikitable mw-collapsible mw-collapsed" | ||
!Template Quantum ESPRESSO | |||
|- | |- | ||
|Quantum ESPRESSO | |<syntaxhighlight lang="bash" line="1"> | ||
#!/bin/bash | |||
# ----------------------------------------------------- | |||
# Template SLURM Submit Script | |||
# Quantum ESPRESSO | 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 Quantum ESPRESSO yang dijalankan | |||
INPUT_FILE="////.in" | |||
# Memuat modul software Quantum ESPRESSO | |||
# Daftar modul lihat subbab "Modul Quantum ESPRESSO" di atas | |||
module load qe//// | |||
# ---------------------------------------------------- | |||
# Script jalannya program | |||
# ---------------------------------------------------- | |||
# Perintah menjakankan Quantum ESPERESSO | |||
# Kondisi khusus dimana 1 node -> mpirun tanpa UCX | |||
# 2 node -> mpirun dengan UCX | |||
[ | if [ $SLURM_NNODES -eq 1 ] | ||
then | |||
echo "Terdeteksi running QE dengan 1 node" | |||
mpirun -np ${SLURM_NTASKS} pw.x -input ${INPUT_FILE} | |||
elif [ $SLURM_NNODES -gt 1 ] | |||
[ | then | ||
echo "Terdeteksi running QE dengan 2 node" | |||
mpirun -np ${SLURM_NTASKS} --mca pml ucx --mca osc ucx pw.x -input ${INPUT_FILE} | |||
fi | |||
</syntaxhighlight> | |||
|} | |||
|- | |- | ||
! | ! | ||
|- | |- | ||
| | |*''Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']].'' | ||
*''Info script lebih detail lihat [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']].'' | |||
*''Untuk SBATCH notifikasi email status jalannya job lihat [https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM '''Slurm Jojo'''].'' | *''Untuk SBATCH notifikasi email status jalannya job lihat [https://wiki.efisonlt.com/wiki/Submit_Script_ALELEON_Supercomputer#SBATCH_untuk_notifikasi_email_SLURM '''Slurm Jojo'''].'' | ||
|- | |- | ||
! | !3B | ||
|- | |- | ||
|'''SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit''' berdasarkan: | | '''SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit''' berdasarkan: | ||
*Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']]. | *Sisa Core Hour user dan [[Limitasi Fair Usage ALELEON Supercomputer|'''Fair Usage Limit''']]. | ||
*Spesifikasi sistem dan software komputasi. | *Spesifikasi sistem dan software komputasi. | ||
Untuk melihat limit, jalankan perintah berikut | Untuk melihat limit, jalankan perintah berikut: | ||
'''$ slimit-mpi''' | '''$ slimit-mpi''' | ||
|- | |||
!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 mw-collapsible mw-collapsed" | {| class="wikitable mw-collapsible mw-collapsed" | ||
! colspan="2" |Daftar status job: | ! colspan="2" |Daftar ST (STATE) menunjukkan status jalannya job: | ||
|- | |- | ||
! | !STATE | ||
! | !Penjelasan | ||
|- | |- | ||
| | | R (RUN) | ||
|Job | |Job berjalan | ||
|- | |- | ||
| | |PD (PENDING) | ||
|Job | |Job tertahan, lihat [[Daftar Reason NODELIST ALELEON Supercomputer|'''NODELIST(REASON)''']] | ||
|- | |- | ||
| | |CG (COMPLETING) | ||
|Job | |Job selesai dan dalam proses clean-up | ||
|- | |- | ||
| | |CA (CANCELED) | ||
|Job | |Job dibatalkan user | ||
|- | |- | ||
| | |PR (PREEMPETED) | ||
|Job | |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 | |||
|} | |} | ||
== '''Pelaporan Kendala dan Support''' == | == '''Pelaporan Kendala dan Support''' == | ||
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini. | Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini. |
Revisi per 4 Juni 2024 17.38
Quantum ESPRESSO adalah framework suite untuk kalkulasi electronic-structure dan modeling material berdasarkan density-functional theory (DFT), plane waves, dan pseudopotentials.
Modul Quantum ESPRESSO
Berikut adalah detail versi Quantum ESPRESSO yang tersedia secara global di ALELEON Supercomputer:
Versi | Nama modul | Dukungan hardware | |||
---|---|---|---|---|---|
CPU | GPU | OMP
Threading |
MPI
multi-node | ||
6.7 | qe/6.7-GCC10-MKL-LibM | V | - | - | V |
6.8 | qe/6.8-GCC10-MKL-LibM | V | - | - | V |
7.1 | qe/7.1-GCC11.3-AOCL4.0-ELPA2022.05-Libxc6.1.0 | V | - | - | V |
Info Perubahan Menjalankan Quantum ESPRESSO
Terdapat perubahan sintaks MPI menjalankan Quantum ESPRESSO berdasarkan update Slurm ALELEON Supercomputer pada maintenance 7-12 Januari 2024 yaitu:
- Menggunakan mpirun biasa untuk menjalankan QE satu node.
- Menggunakan mpirun dengan sintaks UCX untuk menjalankan QE multi-node
Perubahan ini telah diupdate pada tutorial template SLURM Submit Script dan Template Job Composer untuk Quantum ESPRESSO dengan skema sintaks MPI berikut:
...
if [ $SLURM_NNODES -eq 1 ]
then
echo "Terdeteksi running QE dengan 1 node"
mpirun -np ${SLURM_NTASKS} pw.x -input ${INPUT_FILE}
elif [ $SLURM_NNODES -gt 1 ]
then
echo "Terdeteksi running QE dengan ${SLURM_NNODES} node"
mpirun -np ${SLURM_NTASKS} --mca pml ucx --mca osc ucx pw.x -input ${INPUT_FILE}
fi
Metode Menjalankan Komputasi
User dapat memilih metode menjalankan komputasi sesuai keinginan:
- Job submission terminal
- Berjalan di compute node melalui manajemen Slurm.
- Job submission web EFIRO
- Berjalan di compute node melalui manajemen Slurm via web EFIRO.
Job Submission Terminal
Langkah Job Submission Terminal | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login SSH ke ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
Siapkan file komputasi yang dibutuhkan.
| ||||||||||||||||
3A | ||||||||||||||||
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi.
| ||||||||||||||||
Contoh template Submit Script, ikuti petunjuk NOTES didalamnya.
| ||||||||||||||||
*Info script lebih detail lihat Submit Script ALELEON Supercomputer.
| ||||||||||||||||
3B | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah berikut: $ slimit-mpi | ||||||||||||||||
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 |
Job Submission Web EFIRO
Langkah Job Submission Terminal | ||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | ||||||||||||||||
Login SSH ke ALELEON Supercomputer. | ||||||||||||||||
2 | ||||||||||||||||
Siapkan file komputasi yang dibutuhkan.
| ||||||||||||||||
3A | ||||||||||||||||
Buat Submit Script yaitu 'formulir' untuk menjalankan job komputasi.
| ||||||||||||||||
Contoh template Submit Script, ikuti petunjuk NOTES didalamnya.
| ||||||||||||||||
*Info script lebih detail lihat Submit Script ALELEON Supercomputer.
| ||||||||||||||||
3B | ||||||||||||||||
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
Untuk melihat limit, jalankan perintah berikut: $ slimit-mpi | ||||||||||||||||
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 |
Pelaporan Kendala dan Support
Apabila menjumpai masalah teknis dalam menjalankan komputasi, silahkan lapor dengan klik gambar berikut ini.
---
Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email:
support@efisonlt.com