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:
Modul CP2K versi CPU
Versi
|
Nama modul software
|
Dukungan hardware
|
CPU
|
GPU
|
OMP
Threading
|
MPI
multi-node
|
9.1
|
cp2k/9.1-GCC10-MKL
|
V
|
-
|
-
|
V
|
Modul CP2K versi GPU (Modul ini sedang dalam tahap pengujian)
Versi
|
Nama modul software
|
Dukungan hardware
|
CPU
|
GPU
|
OMP
Threading
|
MPI
multi-node
|
9.1
|
cp2k/9.1-GCC10-MKL-CUDA
|
V
|
V
|
-
|
V
|
Pilihan Menjalankan Komputasi
User dapat memilih metode menjalankan komputasi sesuai keinginan: (klik expand / kembangkan)*Job submission terminal
- 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.
- Nama file bebas dengan format .sh, contoh
submit.sh
|
|
Contoh template Submit Script, ikuti petunjuk NOTES didalamnya.
Template Submit Script CP2K versi CPU
|
#!/bin/bash
# -----------------------------------------------------
# Template SLURM Submit Script
# CP2K (versi CPU) | 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 CP2K yang dijalankan
INPUT_FILE="////.inp"
# Memuat modul software CP2K versi CPU
# Daftar modul lihat subbab "Modul CP2K" di atas
module load cp2k////
# ----------------------------------------------------
# Script jalannya program
# ----------------------------------------------------
# Perintah menjakankan CP2K
mpirun -np ${SLURM_NTASKS} cp2k.zen2 ${INPUT_FILE}
|
Rekomendasi performa optimal untuk CP2K akselerasi GPU
|
ntasks
|
gpus
|
mem
|
Rate komputasi
|
10
|
1
|
64GB
|
10CCH + 1GH / jam
|
Saran ini bersifat tidak wajib.
|
Template Submit Script CP2K versi GPU
|
#!/bin/bash
# -----------------------------------------------------
# Template SLURM Submit Script
# CP2K (versi GPU) | rev.220724
#
# NOTES:
# 1. Isi bagian yang ditandai 4 garing (////).
# 2. Template ini bersifat referensi.
# User dapat mengubah bagian yang perlu diubah.
# 3. Rekomendasi performa optimal menurut doc CP2K:
# ----------------------------------------
# | ntasks | gpus | mem | rate |
# | --------------------------------------
# | 10 | 1 | 64GB | 10cch+1gh/jam |
# ----------------------------------------
# (saran diatas tidak wajib dijalankan)
# -----------------------------------------------------
# -----------------------------------------------------
# Alokasi komputasi SBATCH, input, dan module
# -----------------------------------------------------
# Menggunakan partisi compute node GPU
#SBATCH --partition=ampere
# Alokasi jumlah core thread CPU
#SBATCH --ntasks=////
# Alokasi jumlah GPU
#SBATCH --gpus=////
# Alokasi jumlah memori RAM (satuan GB)
#SBATCH --mem=////
# 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 CP2K yang dijalankan
INPUT_FILE="////.inp"
# Memuat modul software CP2K versi GPU
# Daftar modul lihat subbab "Modul CP2K" di atas
module load cp2k////
# ----------------------------------------------------
# Script jalannya program
# ----------------------------------------------------
# Unset UCX supaya MPI berjalan di NVIDIA
unset UCX_TLS
unset UCX_NET_DEVICES
# Perintah menjakankan CP2K
mpirun -np ${SLURM_NTASKS} cp2k.zen2 ${INPUT_FILE}
|
|
- Untuk SBATCH notifikasi email status jalannya job lihat Slurm Jojo.
|
3B
|
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
- Sisa Core Hour user dan Fair Usage Limit.
- Spesifikasi sistem dan software komputasi.
Untuk melihat limit, jalankan perintah berikut:
$ slimit-cp2k
|
4
|
Jalankan job komputasi dengan perintah:
$ sbatch [nama-submit-script]
Contoh:
$ sbatch submit.sh
|
5
|
User dapat melihat status jalannya job dengan perintah:
$ squeue -ul $USER
Kolom ST atau STATE menunjukkan status jalannya job.
|
STATE
|
Penjelasan
|
R (RUN)
|
Job berjalan
|
PD (PENDING)
|
Job tertahan, lihat NODELIST(REASON)
|
CG (COMPLETING)
|
Job selesai dan dalam proses clean-up
|
CA (CANCELED)
|
Job dibatalkan user
|
PR (PREEMPETED)
|
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
|
Job Submission Web EFIRO
Langkah Job Submission Web EFIRO
|
1
|
Login ke web EFIRO ALELEON Supercomputer.
|
2
|
Buka pinned apps Job Composer di homepage EFIRO.
Pilih menu New Job -> From Template
|
3
|
Pilih template CP2K yang diinginkan:
|
Nama Template
|
Penjelasan
|
CP2K 9.1 (CPU)
|
Menjalankan CP2K 9.1 pada CPU
|
CP2K 9.1 (GPU)
|
Menjalankan CP2K 9.1 pada GPU
| Isi Job Name dan klik Create New Job
|
4
|
Siapkan file komputasi yang dibutuhkan:
- Upload / download / edit file via menu
Edit Files
|
5A
|
Lengkapi Submit Script melalui tombol Open Editor:
- Submit script adalah 'formulir' untuk menjalankan job komputasi.
- Ikuti petunjuk NOTES didalamnya.
- Klik
Save setiap kali mengubah script.
Rekomendasi performa optimal untuk CP2K akselerasi GPU
|
ntasks
|
gpus
|
mem
|
Rate komputasi
|
10
|
1
|
64GB
|
10CCH + 1GH / jam
|
Saran ini bersifat tidak wajib.
|
|
|
5B
|
SBATCH komputasi (ntasks, mem, time, dll) mempunyai limit berdasarkan:
- Sisa Core Hour user dan Fair Usage Limit.
- Spesifikasi sistem dan software komputasi.
Untuk melihat limit, jalankan perintah ini via menu Open Terminal :
$ slimit-cp2k
|
6
|
Jalankan job dengan klik tombol Submit .
- Pantau kolom status yang menjelaskan status jalannya job.
- Apabila ingin membatalkan job yang berjalan, klik
Stop .
Daftar Status Job
|
Status
|
Arti
|
Not Submitted
|
Job belum pernah dijalankan.
|
Running
|
Job berjalan.
|
Queue
|
Job mengantri dan belum berjalan.
|
Completed
|
Job selesai berjalan.
|
Failed
|
Job berhenti karena error atau di stop user.
|
Untuk melihat alasan job yang queue: Buka pinned apps Active Jobs di homepage EFIRO. Ubah opsi All jobs ke Your Jobs. Klik simbol > untuk melihat status job yang pending pada kolom Reason. Arti reason lihat laman Daftar Reason NODELIST ALELEON Supercomputer.
|
|
7
|
Lihat output file komputasi pada kolom Folder Contents
- Atau dengan membuka menu
Edit Files
|
8
|
Untuk menghapus ruang job dan datanya:
- Pilih ruang job yang akan dihapus.
- Klik menu
Delete
|
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