GROMACS: Perbedaan antara revisi

Dari ALELEON by EFISON
(paraphrasing bagian MPI dan mengganti penomoran)
(penulisan format baru)
Baris 18: Baris 18:
|}
|}


== '''Menjalankan GROMACS''' ==
== '''Menjalankan GROMACS di Job Composer''' ==
User menjalankan GROMACS pada '''Job Composer''' EFIRO yang dapat dibuka melalui menu Jobs > Jobs Composer:
User menjalankan GROMACS pada '''Job Composer''' EFIRO yang dapat dibuka melalui menu Jobs > Jobs Composer:


[[Berkas:Efirojobcomposermenu.png|nirbing|400x400px]]
[[Berkas:Efirojobcomposermenu.png|nirbing|400x400px]]
=== 1. Memilih template GROMACS ===
== '''Memilih template GROMACS''' ==
 
* Klik '''New Jobs > From Template'''
* Pilih template GROMACS yang dibutuhkan
* Isi '''Job Name''' sesuai keinginan user kemudian klik '''Create New Job'''.
 
[[Berkas:Jcnewjobmarked.png|al=|nirbing|200x200px]]
 
---
 
[[Berkas:Jcselecttemplate3.png|al=|nirbing|600x600px]]
{| class="wikitable"
{| class="wikitable"
|+Template GROMACS yang tersedia
|+Template GROMACS yang tersedia
Baris 47: Baris 37:
|Jalan dengan akselerasi 2 GPU
|Jalan dengan akselerasi 2 GPU
|}
|}
* Klik '''New Jobs > From Template'''
* Pilih template GROMACS yang dibutuhkan
* Isi '''Job Name''' sesuai keinginan user kemudian klik '''Create New Job'''.
[[Berkas:Jcnewjobmarked.png|al=|nirbing|200x200px]]
---
---


=== 2. Mempersiapkan parameter input dan menjalankan interaktif GROMACS ===
[[Berkas:Jcselecttemplate3.png|al=|nirbing|600x600px]]
== '''Mempersiapkan parameter input GROMACS''' ==
[[Berkas:Jcjoboption2.png|al=|nirbing|600x600px]]
[[Berkas:Jcjoboption2.png|al=|nirbing|600x600px]]


Baris 60: Baris 58:
  $ module load gromacs
  $ module load gromacs
  $ gmx_mpi pdb2gmx <parameter_input_dan_output>
  $ gmx_mpi pdb2gmx <parameter_input_dan_output>
---
== '''Melengkapi Submit Script Template''' ==
 
=== 3. Melengkapi Submit Script Template ===
[[Berkas:Jceditor3.png|al=|nirbing|500x500px]]
[[Berkas:Jceditor3.png|al=|nirbing|500x500px]]


Baris 68: Baris 64:
**Parameter SBATCH.
**Parameter SBATCH.
**Parameter input GROMACS sesuai setup user.
**Parameter input GROMACS sesuai setup user.
*Panduan umum lengkap dalam mengisi Submit Script dan parameter SBATCH:
[[Berkas:Wiki-14.jpg|1000x1000px|link=SLURM Script ALELEON Supercomputer |alt=SLURM Script ALELEON Supercomputer ]]


[[Berkas:Jcsaveedit.png|nirbing|450x450px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcsaveedit.png|al=]]
*Jangan lupa Save setiap sekali mengubah script.
[[Berkas:Save.png|nirbing|450x450px|pra=https://wiki.efisonlt.com/wiki/Berkas:Save.png]]


---
---
===Panduan lengkap mengisi Submit Script===
[[Berkas:Wiki-14.jpg|1000x1000px|link=SLURM Script ALELEON Supercomputer |alt=SLURM Script ALELEON Supercomputer ]]


=== 4. MPI pada GROMACS versi CPU ===
'''Note:''' Submit Script pada dasarnya adalah '''SLURM Script''' karena ALELEON Supercomputer menggunakan manajemen SLURM untuk menjalankan job di Compute Node.
== '''Fitur MPI pada GROMACS versi CPU''' ==
GROMACS versi CPU menggunakan MPI (Message Passing Interface) sehingga memberi kebebasan user untuk:
GROMACS versi CPU menggunakan MPI (Message Passing Interface) sehingga memberi kebebasan user untuk:
{| class="wikitable"
{| class="wikitable"
Baris 85: Baris 82:
**User dapat menjalankan GROMACS versi CPU hanya dengan 1 node (maksimal 128 core thread CPU)
**User dapat menjalankan GROMACS versi CPU hanya dengan 1 node (maksimal 128 core thread CPU)
**Atau menggunakan '''multi-node''' alias '''lebih dari 128 core thread CPU'''.
**Atau menggunakan '''multi-node''' alias '''lebih dari 128 core thread CPU'''.
|}---
|}
=== 5. Menjalankan Job ===
=='''Menjalankan Job'''==
Semua file untuk menjalankan program dan Submit Script sudah siap? Jalankan job tersebut dengan menekan tombol '''Submit'''.
Semua file untuk menjalankan program dan Submit Script sudah siap? Jalankan job dengan menekan tombol '''Submit'''.


[[Berkas:Jcsubmit2.png|al=|nirbing|700x700px]]
[[Berkas:Jcsubmit2.png|al=|nirbing|600x600px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcsubmit2.png]]
*Perhatikan status jalannya job pada kolom '''Status.'''
*Perhatikan status jalannya job pada kolom '''Status.'''
{| class="wikitable"
{| class="wikitable"
Baris 102: Baris 99:
|-
|-
|Queue
|Queue
|Job mengantri dan belum berjalan.
| Job mengantri dan belum berjalan.
|-
|-
|Completed
|Completed
Baris 113: Baris 110:
*User dapat memantau perubahan kolom Status dengan me-refresh halaman Job.
*User dapat memantau perubahan kolom Status dengan me-refresh halaman Job.
*Apabila user ingin menghentikan job yang sedang berjalan, klik tombol '''Stop''' yang berada di sebelah tombol Submit.
*Apabila user ingin menghentikan job yang sedang berjalan, klik tombol '''Stop''' yang berada di sebelah tombol Submit.
---
=='''Melihat hasil job yang selesai'''==
 
Apabila job sudah selesai (status Completed), user dapat melihat hasil output job melalui bagian '''Folder Contents''' atau membuka halaman '''Edit Pages.'''[[Berkas:Jcfoldercontentsedit.png|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcfoldercontentsedit.png|al=|nir|jmpl|'''Kolom Folder Contents melihat isi dari ruang direktori job. User dapat melihat semua file output yang keluar di kolom ini.''']][[Berkas:Jcjoboption3.png|nir|jmpl|'''atau dengan membuka menu Edit Files. Melalui halaman ini user juga dapat melakukan revisi file input misalnya apabila hasil output tidak sesuai yang diharapkan.'''|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcjoboption3.png]]
=== 6. Melihat hasil job yang selesai ===
=='''Submit ulang job'''==
Apabila job sudah selesai (status Completed), user dapat melihat hasil output job melalui bagian '''Folder Contents''' atau membuka halaman '''Edit Pages.'''
 
[[Berkas:Jcfoldercontentsedit.png|al=|nirbing|399x399px|pra=https://wiki.efisonlt.com/wiki/Berkas:Jcfoldercontentsedit.png]]
 
---
 
=== 7. 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.
User dapat '''menjalankan ulang ruang job yang sama''' (misalkan ketika ada koreksi file input atau Submit Script) dengan mengklik kembali tombol Submit.
=='''Akselerasi GPU di GROMACS'''==
=='''Akselerasi GPU di GROMACS'''==
User dapat menjalankan GROMACS dengan bantuan akselerasi GPU di Compute Node GPU. Perlu diketahui '''tidak semua input dan parameter berjalan kencang dengan akselerasi GPU'''.   
User dapat menjalankan GROMACS dengan bantuan akselerasi GPU di Compute Node GPU. Perlu diketahui '''tidak semua input dan parameter berjalan kencang dengan akselerasi GPU'''.   

Revisi per 25 Februari 2022 10.57

GROMACS.png

GROMACS adalah package berkecepatan tinggi untuk komputasi dinamika molekular baik untuk biokimia (seperti protein, lipids) maupun non-biokimia (seperti polimer).

Versi yang Tersedia

Versi Dukungan MPI Dukungan Hardware
2021.1 (CPU) Pure MPI CPU, multi-node
2021.1 (GPU) Hybrid MPI/OMP CPU-GPU, single-node

Menjalankan GROMACS di Job Composer

User menjalankan GROMACS pada Job Composer EFIRO yang dapat dibuka melalui menu Jobs > Jobs Composer:

Efirojobcomposermenu.png

Memilih template GROMACS

Template GROMACS yang tersedia
Nama Template Penjelasan
GROMACS 2021.1 (CPU) GROMACS 2020.01 versi CPU
GROMACS 2021.1 dengan 1 GPU Jalan dengan akselerasi 1 GPU
GROMACS 2021.1 dengan 2 GPU Jalan dengan akselerasi 2 GPU
  • Klik New Jobs > From Template
  • Pilih template GROMACS yang dibutuhkan
  • Isi Job Name sesuai keinginan user kemudian klik Create New Job.

---

Mempersiapkan parameter input GROMACS

  • User dapat melakukan upload, editing, dan rename file GROMACS yang dibutuhkan melalui menu Edit Files.
  • Beberapa perintah GROMACS bekerja secara interaktif dan membutuhkan input dari user (contoh: pdb2gmx, grompp) sehingga harus dijalankan via terminal melalui menu Open Terminal.
    • Muat modul GROMACS untuk mengaktifkan software GROMACS:
    • Lanjutkan dengan melakukan perintah interaktif GROMACS (contoh: pdb2gmx):
$ module load gromacs
$ gmx_mpi pdb2gmx <parameter_input_dan_output>

Melengkapi Submit Script Template

  • Melalui menu Open Editor, user perlu melengkapi Submit Script supaya program GROMACS dapat berjalan:
    • Parameter SBATCH.
    • Parameter input GROMACS sesuai setup user.
  • Jangan lupa Save setiap sekali mengubah script.

Save.png

---

Panduan lengkap mengisi Submit Script

SLURM Script ALELEON Supercomputer

Note: Submit Script pada dasarnya adalah SLURM Script karena ALELEON Supercomputer menggunakan manajemen SLURM untuk menjalankan job di Compute Node.

Fitur MPI pada GROMACS versi CPU

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

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

Menjalankan Job

Semua file untuk menjalankan program dan Submit Script sudah siap? Jalankan job dengan menekan tombol Submit.

  • Perhatikan status jalannya job pada kolom Status.
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.

  • User dapat memantau perubahan kolom Status dengan me-refresh halaman Job.
  • Apabila user ingin menghentikan job yang sedang berjalan, klik tombol Stop yang berada di sebelah tombol Submit.

Melihat hasil job yang selesai

Apabila job sudah selesai (status Completed), user dapat melihat hasil output job melalui bagian Folder Contents atau membuka halaman Edit Pages.

Kolom Folder Contents melihat isi dari ruang direktori job. User dapat melihat semua file output yang keluar di kolom ini.
atau dengan membuka menu Edit Files. Melalui halaman ini user juga dapat melakukan revisi file input misalnya apabila hasil output tidak sesuai yang diharapkan.

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.

Akselerasi GPU di GROMACS

User dapat menjalankan GROMACS dengan bantuan akselerasi GPU di Compute Node GPU. Perlu diketahui tidak semua input dan parameter berjalan kencang dengan akselerasi GPU.

  • Harap user dapat menguji terlebih dahulu mdrun-nya dengan nsteps kecil untuk mengetahui peningkatan performa yang bisa diperoleh melalui akselerasi GPU.
  • Perhatikan bahwa pengujian tersebut menggunakan kredit CPU Core Hour dan GPU Hour user.

Biasanya, GROMACS mdrun tidak memerlukan parameter tambahan untuk menjalankan akselerasi GPU. Namun dalam beberapa kasus, optimasi menggunakan parameter tambahan bisa berpengaruh positif ke kecepatan komputasi. Referensi mengenai parameter akselerasi GPU lanjutan (-nb, -bonded, -pme) dapat dibaca di laman:

---

Ikuti Arahan Template

User disarankan untuk tidak mengubah parameter CPU, GPU, RAM, OMP, dan perintah mdrun pada template karena telah dirancang untuk berjalan optimal di Compute Node GPU ALELEON Supercomputer.