CP2K: Perbedaan antara revisi
WilsonLisan (bicara | kontrib) (paraphrasing tabel SBATCH) |
WilsonLisan (bicara | kontrib) (tes overhaul tabel SBATCH) |
||
Baris 75: | Baris 75: | ||
|Siapkan file yang dibutuhkan untuk menjalankan komputasi user. | |Siapkan file yang dibutuhkan untuk menjalankan komputasi user. | ||
*[[Upload File dengan Aplikasi FTP|'''User dapat melakukan upload / download file dengan bantuan aplikasi FTP''']] | *[[Upload File dengan Aplikasi FTP|'''User dapat melakukan upload / download file dengan bantuan aplikasi FTP''']] | ||
|- | |- | ||
|'''2''' | |'''2''' | ||
Baris 82: | Baris 81: | ||
*Buat script pada direktori yang sama dengan file komputasi yang akan dijalankan. | *Buat script pada direktori yang sama dengan file komputasi yang akan dijalankan. | ||
*Ikuti panduan template berikut dan petunjuk pada NOTES di dalamnya. | *Ikuti panduan template berikut dan petunjuk pada NOTES di dalamnya. | ||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Template SLURM Submit Script untuk CP2K versi CPU | |||
|- | |||
|<syntaxhighlight lang="bash" line="1"> | |||
#!/bin/bash | |||
# ------------------------------------------------------------- | |||
# | Template SLURM Submit Script | |||
# | Software : CP2K (CPU) | |||
# | Update script r: 06/10/2023 | |||
# | | |||
# | NOTES: | |||
# | 1. Isi bagian yang ditandai 4 garing (////). | |||
# | 2. Template ini bersifat referensi. | |||
# | User dapat mengubah bagian yang sekiranya perlu diubah. | |||
# | 3. Panduan menjalankan CP2K di ALELEON lihat: | |||
# | https://wiki.efisonlt.com/wiki/CP2K | |||
# ------------------------------------------------------------- | |||
# -------------------------------------------------- | |||
# Alokasi komputasi, modul software, dan file input | |||
# -------------------------------------------------- | |||
# 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 | |||
#SBATCH --output=result-%j.txt | |||
# Definisi file untuk menampung output error log | |||
#SBATCH --error=error-%j.txt | |||
# Nama input file CP2K dengan format file-nya | |||
INPUT_FILE='////.inp' | |||
# Memuat modul software CP2K versi CPU | |||
# Daftar modul CP2K lihat subbab "Modul CP2K" pada | |||
# https://wiki.efisonlt.com/wiki/CP2K | |||
module load cp2k//// | |||
# ------------------------------------------------- | |||
# RUN SCRIPT | |||
# ------------------------------------------------- | |||
# Perintah menjalankan CP2K | |||
mpirun -np $SLURM_NTASKS --mca pml ucx --mca osc ucx cp2k.zen2 $INPUT_FILE | |||
</syntaxhighlight> | |||
|} | |||
{| class="wikitable mw-collapsible mw-collapsed" | |||
!Template SLURM Submit Script untuk CP2K versi GPU | |||
|- | |||
|<syntaxhighlight lang="bash" line="1"> | |||
#!/bin/bash | |||
# ------------------------------------------------------------- | |||
# | Template SLURM Submit Script | |||
# | Software : CP2K (GPU) - EKSPERIMENTAL | |||
# | Update script : 06/10/2023 | |||
# | | |||
# | NOTES: | |||
# | 1. Isi bagian yang ditandai 4 garing (////). | |||
# | 2. Template ini bersifat referensi. | |||
# | User dapat mengubah bagian yang sekiranya perlu diubah. | |||
# | 3. Panduan menjalankan CP2K di ALELEON lihat: | |||
# | https://wiki.efisonlt.com/wiki/CP2K | |||
# ------------------------------------------------------------- | |||
# -------------------------------------------------- | |||
# Alokasi komputasi, modul software, dan file input | |||
# -------------------------------------------------- | |||
#SBATCH --partition=ampere | |||
# Alokasi jumlah core thread CPU 9 menurut dokumentasi CP2K | |||
#SBATCH --ntasks=9 | |||
# Alokasi jumlah GPU 1 menurut dokumentasi CP2K | |||
#SBATCH --gpus=1 | |||
# Alokasi jumlah memori RAM (satuan GB) | |||
#SBATCH --mem=64GB | |||
# Alokasi limit waktu menjalankan job. | |||
# Format HH:MM:SS atau D-HH:MM:SS | |||
#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 CP2K dengan format file-nya | |||
INPUT_FILE='////.inp' | |||
# Memuat modul software CP2K versi GPU | |||
module load cp2k/9.1-GCC10-MKL-CUDA | |||
# ------------------------------------------------- | |||
# RUN SCRIPT | |||
# ------------------------------------------------- | |||
# Unset UCX supaya MPI berjalan di NVIDIA | |||
unset UCX_TLS | |||
unset UCX_NET_DEVICES | |||
# Perintah menjalankan CP2K | |||
mpirun -np $SLURM_NTASKS --mca pml ucx --mca osc ucx cp2k.zen2 $INPUT_FILE | |||
</syntaxhighlight> | |||
|} | |||
{| class="wikitable" | {| class="wikitable" | ||
! colspan=" | ! colspan="6" |Panduan nilai maksimal SBATCH untuk CP2K''<sup>1</sup>'' | ||
|- | |||
! rowspan="2" |Skenario Menjalankan CP2K | |||
! rowspan="2" |Compute Node | |||
! colspan="4" |Nilai maksimal SBATCH | |||
|- | |- | ||
! | !ntasks | ||
! | (CPU) | ||
!mem | |||
! | (RAM) | ||
!gpus | |||
! | (GPU) | ||
!time | |||
(time limit) | |||
|- | |- | ||
| | | Fair policy usage''<sup>2</sup>'' | ||
|epyc & ampere | |||
|128 | |128 | ||
|128GB | |||
|2 | |||
| rowspan="4" |3-00:00:00 | |||
atau | |||
72:00:00 | |||
|- | |||
|CP2K versi CPU''<sup>3</sup>'' | |||
|epyc (CPU) | |||
|384 | |384 | ||
|240GB | |||
|0 | |||
|- | |||
|CP2K versi CPU di high-mem node''<sup>4</sup>'' | |||
|epyc (CPU) | |||
|128 | |128 | ||
|500GB | |500GB | ||
| | |0 | ||
|- | |- | ||
| | |CP2K versi GPU''<sup>5</sup>'' | ||
| | |ampere (GPU) | ||
|9 | |||
|64GB | |||
| | |1 | ||
| | |} | ||
'''''Keterangan:''''' | |||
|1 | |||
|}''' | |||
#Info SBATCH lebih detail lihat laman [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']] | #Info SBATCH lebih detail lihat laman [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']] | ||
# Limitasi fair policy usage untuk menjaga kualitas layanan ALELEON Supercomputer. | # Limitasi fair policy usage untuk menjaga kualitas layanan ALELEON Supercomputer. | ||
#* User dapat mengajukan permintaan membuka limitasi apabila job membutuhkan alokasi lebih. | #* User dapat mengajukan permintaan membuka limitasi apabila job membutuhkan alokasi lebih. | ||
#* Info lebih detail lihat laman [[Limitasi Fair Usage ALELEON Supercomputer|'''Limitasi Fair Usage ALELEON Supercomputer''']] | #* Info lebih detail lihat laman [[Limitasi Fair Usage ALELEON Supercomputer|'''Limitasi Fair Usage ALELEON Supercomputer''']] | ||
# CP2K mendukung komputasi paralel MPI untuk berjalan ''multi-node'' | # CP2K mendukung komputasi paralel MPI untuk berjalan ''multi-node'' : | ||
#* Satu node epyc mempunyai CPU 128 core. | |||
#* Pada jumlah ntasks >128, SLURM otomatis menjalankan job secara multi-node. | |||
#** Dalam kaitan ini, parameter mem adalah alokasi memori RAM per-node. | |||
#* Info lebih detail lihat laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | #* Info lebih detail lihat laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | ||
# | #High-mem node epyc yaitu epyc001 memungkinkan user mengalokasikan RAM hingga 500GB. | ||
#*Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | #*Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | ||
#Nilai maks versi GPU berdasarkan rekomendasi dokumentasi CP2K. | #Nilai maks versi GPU berdasarkan rekomendasi dokumentasi CP2K. | ||
|- | |- | ||
| '''3''' | | '''3''' | ||
Baris 338: | Baris 355: | ||
*Template ini bersifat referensi, user dapat mengubah bagian yang sekiranya perlu diubah. | *Template ini bersifat referensi, user dapat mengubah bagian yang sekiranya perlu diubah. | ||
{| class="wikitable" | {| class="wikitable" | ||
! colspan=" | ! colspan="6" |Panduan nilai maksimal SBATCH untuk CP2K''<sup>1</sup>'' | ||
|- | |- | ||
! | ! rowspan="2" |Skenario Menjalankan CP2K | ||
! | ! rowspan="2" |Compute Node | ||
! colspan="4" |Nilai maksimal SBATCH | |||
! | |||
|- | |- | ||
!ntasks | |||
(CPU) | |||
!mem | |||
(RAM) | |||
!gpus | |||
(GPU) | |||
!time | |||
(time limit) | |||
|- | |||
| Fair policy usage''<sup>2</sup>'' | |||
|epyc & ampere | |||
|128 | |128 | ||
|128GB | |||
|2 | |||
| rowspan="4" |3-00:00:00 | |||
atau | |||
72:00:00 | |||
|- | |||
|CP2K versi CPU''<sup>3</sup>'' | |||
|epyc (CPU) | |||
|384 | |384 | ||
|240GB | |||
|0 | |||
|- | |||
|CP2K versi CPU di high-mem node''<sup>4</sup>'' | |||
|epyc (CPU) | |||
|128 | |128 | ||
|500GB | |500GB | ||
| | |0 | ||
|- | |- | ||
| | |CP2K versi GPU''<sup>5</sup>'' | ||
|ampere (GPU) | |||
|9 | |||
| | |64GB | ||
| | |1 | ||
| | |}'''''Keterangan:''''' | ||
|1 | |||
|}''' | |||
#Info SBATCH lebih detail lihat laman [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']] | #Info SBATCH lebih detail lihat laman [[Submit Script ALELEON Supercomputer|'''Submit Script ALELEON Supercomputer''']] | ||
# Limitasi fair policy usage untuk menjaga kualitas layanan ALELEON Supercomputer. | # Limitasi fair policy usage untuk menjaga kualitas layanan ALELEON Supercomputer. | ||
#* User dapat mengajukan permintaan membuka limitasi apabila job membutuhkan alokasi lebih. | #* User dapat mengajukan permintaan membuka limitasi apabila job membutuhkan alokasi lebih. | ||
#* Info lebih detail lihat laman [[Limitasi Fair Usage ALELEON Supercomputer|'''Limitasi Fair Usage ALELEON Supercomputer''']] | #* Info lebih detail lihat laman [[Limitasi Fair Usage ALELEON Supercomputer|'''Limitasi Fair Usage ALELEON Supercomputer''']] | ||
# CP2K mendukung komputasi paralel MPI untuk berjalan ''multi-node'' | # CP2K mendukung komputasi paralel MPI untuk berjalan ''multi-node'' : | ||
#* Satu node epyc mempunyai CPU 128 core. | |||
#* Pada jumlah ntasks >128, SLURM otomatis menjalankan job secara multi-node. | |||
#** Dalam kaitan ini, parameter mem adalah alokasi memori RAM per-node. | |||
#* Info lebih detail lihat laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | #* Info lebih detail lihat laman [[MPI ALELEON Supercomputer|'''MPI ALELEON Supercomputer''']]. | ||
# | #High-mem node epyc yaitu epyc001 memungkinkan user mengalokasikan RAM hingga 500GB. | ||
#*Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | #*Tambahkan parameter <code>'''#SBATCH --nodelist=epyc001'''</code> | ||
#Nilai maks versi GPU berdasarkan rekomendasi dokumentasi CP2K. | #Nilai maks versi GPU berdasarkan rekomendasi dokumentasi CP2K. | ||
|- | |- | ||
|'''6A''' | |'''6A''' |
Revisi per 16 Oktober 2023 10.16
CP2K adalah package untuk quantum chemistry dan solid state physics yang dapat melakukan simulasi liquid, molekolar, periodik, material, kristal, dan sistem biologis. CP2K menggunakan pemodelan DFT dengan pendekatan Gaussian and plane waves GPW dan GAPW.
Modul CP2K
Berikut adalah detail versi CP2K yang tersedia secara global di ALELEON Supercomputer:
Versi | Nama modul | Modul
DEFAULT |
Dukungan hardware | |||
---|---|---|---|---|---|---|
CPU | GPU | OMP
Threading |
MPI
multi-node | |||
9.1 | cp2k/9.1-GCC10-MKL | V | V | - | - | V |
Versi | Nama modul | Modul
DEFAULT |
Dukungan hardware | |||
---|---|---|---|---|---|---|
CPU | GPU | OMP
Threading |
MPI
multi-node | |||
9.1 | cp2k/9.1-GCC10-MKL-CUDA | V | V | V | - | V |
Menjalankan CP2K di Compute Node
User dapat menjalankan komputasi dengan pilihan cara melalui tampilan terminal atau GUI web EFIRO.
Mengecek Kredit Core Hour bagi Akun Perseorangan
User dengan akun perseorangan disarankan untuk selalu mengecek sisa Kredit Core Hour sebelum melakukan job submission dengan menjalankan perintah pada terminal:
$ sausage
Bagi yang login ke web EFIRO, buka terminal pada menu Clusters
> Aleleon Shell Access
Terminal - SLURM sbatch
Menjalankan komputasi pada terminal melalui job submission SLURM sbatch.
Langkah Menjalankan CP2K via SLURM sbatch | ||||||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Sebelum login, user harus terhubung ke jaringan VPN ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||||||
Login dengan SSH:
| ||||||||||||||||||||||||||||||||||||||||||
1 | Siapkan file yang dibutuhkan untuk menjalankan komputasi user. | |||||||||||||||||||||||||||||||||||||||||
2 | Buat SLURM Submit Script yaitu 'formulir' untuk menjalankan job dengan panduan berikut:
Keterangan:
| |||||||||||||||||||||||||||||||||||||||||
3 | Jalankan job dengan perintah sbatch.
$ sbatch <nama-SLURM-Submit-script> Contoh menjalankan nama script $ sbatch my_job_submission.sh | |||||||||||||||||||||||||||||||||||||||||
4A | User dapat melihat status jalannya job dengan perintah squeue berikut.
$ squeue -ul $USER Berikut adalah daftar STATE (ST) dari squeue yang menunjukkan status berjalannya job:
| |||||||||||||||||||||||||||||||||||||||||
4B | Apabila user ingin membatalkan job, gunakan perintah scancel berdasarkan job ID.
$ scancel <job-ID-submission-user> Contoh user membatalkan job submission milik user dengan ID 231. $ scancel 231 |
GUI Web - EFIRO Job Composer
Menjalankan komputasi dengan tampilan grafis pada formulir job submission EFIRO Job Composer.
Langkah Menjalankan CP2K via EFIRO Job Composer | ||||||||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | Sebelum login, user harus terhubung ke jaringan VPN ALELEON Supercomputer. | |||||||||||||||||||||||||||||||||||||
Buka alamat web http://aleleon.ood kemudian masukkan username dan password user.
| ||||||||||||||||||||||||||||||||||||||
1 | Buka menu dashboard EFIRO Jobs > Jobs Composer
| |||||||||||||||||||||||||||||||||||||
2 | Pilih New Jobs > From Template
| |||||||||||||||||||||||||||||||||||||
3 |
| |||||||||||||||||||||||||||||||||||||
4 | ![]() Gunakan menu
| |||||||||||||||||||||||||||||||||||||
5 | ![]() Melalui
| |||||||||||||||||||||||||||||||||||||
6A | Jalankan job dengan klik tombol Submit .
Berikut penjelasan kolom
| |||||||||||||||||||||||||||||||||||||
6B | Untuk menghentikan job yang tengah berjalan, klik tombol Stop. | |||||||||||||||||||||||||||||||||||||
7A | Hasil output job dapat dilihat pada kolom Folder Contents atau membuka halaman Edit Pages .
| |||||||||||||||||||||||||||||||||||||
7B | User dapat menjalankan ulang ruang job yang sama dengan mengklik kembali tombol Submit .
|
Notifikasi Status Jalannya Komputasi via email
SLURM ALELEON Supercomputer dapat mengirim notifikasi email kepada user dengan nama "Jojo" untuk mengabarkan status berjalannya job komputasi user. Silahkan tambahan SBATCH berikut pada SLURM Submit Script (dapat ditambahkan setelah SBATCH error) apabila user ingin menerima notifikasi email dari SLURM:
#SBATCH --mail-user=<alamat-email-user> #SBATCH --mail-type=begin #SBATCH --mail-type=end
Keterangan:
- mail-user
- Alamat email user untuk menerima notifikasi SLURM
- mail-type=begin**Notifikasi email yang menginfokan job sudah berjalan.
- mail-type=end
- Notifikasi email yang menginfokan job sudah selesai.
- Sekaligus memberikan cuplikan 20 baris terakhir dari file output SBATCH output dan error job user.
Pelaporan Kendala dan Support
Apabila menjumpai masalah teknis dalam menjalankan komputasi COMCOT, silahkan lapor dengan klik gambar berikut ini.
---
Bila terdapat pertanyaan lainnya, silahkan hubungi admin EFISON melalui email:
support@efisonlt.com