NAMD: Perbedaan antara revisi

Dari ALELEON by EFISON
(Add NAMD submission script and modules)
(reformat)
(8 revisi perantara oleh 2 pengguna tidak ditampilkan)
Baris 1: Baris 1:
== '''Software NAMD''' ==
[[Berkas:NAMDsof.png|nirbing|600x600px]]
 
[https://www.ks.uiuc.edu/Research/namd/ '''NAMD'''] adalah framework dinamika molekular yang digunakan untuk komputasi biomolekuler skala besar di HPC. NAMD mendukung komputasi paralel.
[https://www.ks.uiuc.edu/Research/namd/ '''NAMD'''] adalah framework dinamika molekular yang digunakan untuk komputasi biomolekuler skala besar di HPC. NAMD mendukung komputasi paralel.


Baris 5: Baris 6:
{| class="wikitable sortable mw-collapsible"
{| class="wikitable sortable mw-collapsible"
!Versi
!Versi
!Nama Modul
!Dukungan MPI
!Dukungan Hardware
!Dukungan Hardware
![[Partisi Aleleon Mk.II|Partisi]]
|-
|-
|2.14
|2.14 (CPU)
|namd/2.14-GCC10-FFTW3F-UCX
|Pure MPI
|CPU, parallel multi-node
|CPU, multi-node
|epyc
|-
|-
|2.14
|2.14 (GPU)
|namd/2.14-GCC10-FFTW3F-CUDA11
| -
|CPU - GPU, single-node
|CPU - GPU, single-node
|gpu_ampere
|}
|}
=='''Menjalankan NAMD di Job Composer'''==
{| class="wikitable"
|'''1'''
|Buka menu dashboard EFIRO '''<code>Jobs</code> > <code>Jobs Composer</code>'''
[[Berkas:Efirojobcomposermenu.png|nirbing|300x300px|al=|pra=https://wiki.efisonlt.com/wiki/Berkas:Efirojobcomposermenu.png]]
|-
|'''2'''
|Pilih '''<code>New Jobs</code> > <code>From Template</code>'''
[[Berkas:Jcnewjobmarked.png|al=|nirbing|180x180px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcnewjobmarked.png]]
|-
|'''3'''
|
==='''Memilih Template NAMD'''===
[[Berkas:Jcselecttemplate3.png|al=|nir|jmpl|Pilih template NAMD yang dibutuhkan. Isi atau ganti <code>'''Job Name'''</code> sesuai keinginan user, kemudian klik <code>'''Create New Job'''</code>.|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcselecttemplate3.png]]
{| class="wikitable"
|+Template NAMD
!Nama Template
!Penjelasan
|-
|NAMD 2.14 (CPU)
|Menjalankan NAMD 2.14 versi CPU
|-
|NAMD 2.14 (GPU)
|Menjalankan NAMD 2.14 versi GPU
|}
|-
| rowspan="2" |'''4'''
|
==='''Mempersiapkan File untuk Menjalankan Job'''===
[[Berkas:Jcjoboption3.png|nirbing|600x600px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcjoboption3.png]]
*Gunakan menu '''<code>Edit Files</code>''' untuk upload file yang dibutuhkan'''.'''
**Laman Edit Files juga dapat melakukan view / download / edit / rename / delete file.
|-
|''Fitur upload pada laman Edit Files '''mempunyai batasan ukuran upload 2GB per file'''. Gunakan [[Upload File dengan Aplikasi FTP|'''aplikasi FTP''']] apabila user hendak mengupload file tunggal diatas 2GB.''
|-
|'''5A'''
|
==='''Melengkapi Submit Script Template'''===
[[Berkas:Jceditor3.png|al=|nirbing|300x300px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jceditor3.png]]


== '''SLURM Submission Script''' ==
Melalui '''<code>Open Editor</code>''', lengkapi Submit Script dengan mengganti bagian yang di tandai 4 garis miring (////).
User harus menggunakan Scheduler SLURM untuk menjalankan komputasi NAMD di Compute Node.
*'''''Jangan lupa klik <code>Save</code> setiap sekali mengubah script.'''''
|-
| rowspan="2" |'''5B'''
|
==='''Panduan lengkap mengisi Submit Script:'''===
[[Berkas:Wiki-14edit.jpg|al=SLURM Script ALELEON Supercomputer|1000x1000px |link=Submit Script ALELEON Supercomputer ]]
|-
|
==='''Fitur MPI pada NAMD versi CPU'''===
NAMD versi CPU menggunakan MPI (Message Passing Interface) sehingga memberi kebebasan user untuk:
*[https://wiki.efisonlt.com/wiki/MPI_ALELEON_Supercomputer#MPI_Satu_Node_vs_Multi_Node '''MPI Satu Node vs Multi Node''']
**User dapat menjalankan NAMD versi CPU hanya dengan 1 node (maksimal 128 core thread CPU)
**Atau menggunakan '''multi-node''' alias '''lebih dari 128 core thread CPU'''.
|-
| rowspan="3" |'''6'''
|
==='''Menjalankan Job'''===
Jalankan job dengan klik tombol '''<code>Submit</code>'''.


==== NAMD (CPU) ====
[[Berkas:Jcsubmit2.png|al=|nirbing|600x600px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcsubmit2.png]]
User dapat menjalankan NAMD (CPU) dengan satu node atau paralel (lebih dari satu node) untuk performa lebih kencang.
|-
|Berikut penjelasan kolom '''<code>Status</code>,''' pantau dengan refresh halaman job''':'''
{| class="wikitable"
!Status
!Arti
|-
|Not Submitted
|Job belum pernah dijalankan.
|-
|Running
|Job berjalan.
|-
|Queue
|Job mengantri dan belum berjalan.
|-
|Completed
|Job selesai berjalan.
|-
|Failed
|Job berhenti di tengah jalan,
Bisa karena di Stop atau Delete oleh user.
|}
|-
|
===Stop atau Cancel Job===
Untuk menghentikan job yang tengah berjalan, klik tombol '''Stop'''.


===== Satu Node =====
[[Berkas:Stop.png|nirbing|600x600px|pra=https://wiki.efisonlt.com/wiki/Berkas:Stop.png]]
Contoh menggunakan 64 core CPU dan RAM 128GB.
|-
#!/bin/bash
|'''7A'''
|
#SBATCH --ntasks=64
==='''Melihat hasil job yang selesai'''===
#SBATCH --mem=128GB
Hasil output job dapat dilihat pada kolom '''<code>Folder Contents</code>''' atau membuka halaman '''<code>Edit Pages</code>.'''[[Berkas:Jcfoldercontentsedit.png|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcfoldercontentsedit.png|al=|nir|jmpl|User dapat melihat semua file output yang keluar di kolom '''<code>Folder Contents</code>'''.]][[Berkas:Jcjoboption3.png|nir|jmpl|atau dengan membuka menu '''<code>Edit Files</code>'''.|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcjoboption3.png]]
#SBATCH --time=10:00:00
|-
#SBATCH --output=result-%j.out
|'''7B'''
#SBATCH --error=result-%j.err
|
==='''Submit Ulang Job'''===
# MODULE
User dapat '''menjalankan ulang ruang job yang sama''' (misalkan ketika ada koreksi file input atau Submit Script) dengan '''mengklik kembali tombol <code>Submit</code>'''.
module load namd/2.14-GCC10-FFTW3F-UCX
|}
# RUN COMMAND
# mpirun wajib menggunakan flag protokol UCX
mpirun -np 64 --mca pml ucx --mca osc ucx namd2 <file_input>
 
===== Banyak Node =====
Contoh menggunakan 2 node, masing-masing 64 core CPU dan RAM 128GB.
#!/bin/bash
#SBATCH --nodes=2
#SBATCH --ntasks-per-node=64
#SBATCH --mem=128GB
#SBATCH --time=10:00:00
#SBATCH --output=result-%j.out
#SBATCH --error=result-%j.out
# MODULE
module load namd/2.14-GCC10-FFTW3F-UCX
# RUN COMMAND
# mpirun wajib menggunakan flag protokol UCX
# Total proses MPI = ntasks per node X nodes
mpirun -np 128 --mca pml ucx --mca osc ucx namd2 <file_input>
 
==== NAMD (GPU) ====
User hanya dapat menjalankan NAMD (GPU) dengan satu node namun dengan banyak GPU untuk performa lebih kencang.
#!/bin/bash
# Total GPU yang digunakan ada di argumen --gres=gpu:<jumlah_GPU>
#SBATCH --partition=gpu_ampere
#SBATCH --ntasks=64
#SBATCH --mem=64GB
#SBATCH --gres=gpu:1
#SBATCH --time=10:00:00
#SBATCH --output=result-%j.out
#SBATCH --error=result-%j.out
# MODULE
module load namd/2.14-GCC10-FFTW3F-CUDA11
# RUN COMMAND
# Total proses +p<proses> = ntasks per node X nodes
charmrun ++local +p64 namd2 <file_input>

Revisi per 25 Maret 2022 12.04

NAMDsof.png

NAMD adalah framework dinamika molekular yang digunakan untuk komputasi biomolekuler skala besar di HPC. NAMD mendukung komputasi paralel.

Versi yang Tersedia

Versi Dukungan MPI Dukungan Hardware
2.14 (CPU) Pure MPI CPU, multi-node
2.14 (GPU) - CPU - GPU, single-node

Menjalankan NAMD di Job Composer

1 Buka menu dashboard EFIRO Jobs > Jobs Composer

2 Pilih New Jobs > From Template

3

Memilih Template NAMD

Pilih template NAMD yang dibutuhkan. Isi atau ganti Job Name sesuai keinginan user, kemudian klik Create New Job.
Template NAMD
Nama Template Penjelasan
NAMD 2.14 (CPU) Menjalankan NAMD 2.14 versi CPU
NAMD 2.14 (GPU) Menjalankan NAMD 2.14 versi GPU
4

Mempersiapkan File untuk Menjalankan Job

Jcjoboption3.png

  • Gunakan menu Edit Files untuk upload file yang dibutuhkan.
    • Laman Edit Files juga dapat melakukan view / download / edit / rename / delete file.
Fitur upload pada laman Edit Files mempunyai batasan ukuran upload 2GB per file. Gunakan aplikasi FTP apabila user hendak mengupload file tunggal diatas 2GB.
5A

Melengkapi Submit Script Template

Melalui Open Editor, lengkapi Submit Script dengan mengganti bagian yang di tandai 4 garis miring (////).

  • Jangan lupa klik Save setiap sekali mengubah script.
5B

Panduan lengkap mengisi Submit Script:

SLURM Script ALELEON Supercomputer

Fitur MPI pada NAMD versi CPU

NAMD versi CPU menggunakan MPI (Message Passing Interface) sehingga memberi kebebasan user untuk:

  • MPI Satu Node vs Multi Node
    • User dapat menjalankan NAMD versi CPU hanya dengan 1 node (maksimal 128 core thread CPU)
    • Atau menggunakan multi-node alias lebih dari 128 core thread CPU.
6

Menjalankan Job

Jalankan job dengan klik tombol Submit.

Berikut penjelasan kolom Status, pantau dengan refresh halaman 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 di tengah jalan,

Bisa karena di Stop atau Delete oleh user.

Stop atau Cancel Job

Untuk menghentikan job yang tengah berjalan, klik tombol Stop.

Stop.png

7A

Melihat hasil job yang selesai

Hasil output job dapat dilihat pada kolom Folder Contents atau membuka halaman Edit Pages.
User dapat melihat semua file output yang keluar di kolom Folder Contents.
atau dengan membuka menu Edit Files.
7B

Submit Ulang Job

User dapat menjalankan ulang ruang job yang sama (misalkan ketika ada koreksi file input atau Submit Script) dengan mengklik kembali tombol Submit.