Gromacs
< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie naukowe
Gromacs | |
---|---|
Serwer | Wersja |
Supernova | 4.5.3 (single, double, seq, MPI) 4.5.5 (single, seq, MPI) |
Kontakt | |
kdm@wcss.pl |
Gromacs - pakiet oprogramowania chemicznego przeznaczony do symulacji dynamiki molekularnej. Program zaprojektowany został z myślą o molekułach biochemicznych (np. proteiny, lipidy) ale z powodzeniem wykorzystywany jest także do badania systemów nie-biologicznych, np. polimerów.
Licencja
Pakiet jest darmowy, rozpowszechniany na licencji GNU GPL.
Gromacs w WCSS
Gromacs umożliwia obliczenia równoległe przy użyciu standardowych bibliotek MPI.
Na klastrze Supernova dostępny jest
- Gromacs 4.5.3
- skompilowany kompilatorami Intela w wersji sekwencyjnej i równoległej z wykorzystaniem trybu float i double. Wszystkie wersje równoległe korzystają z bibliotek MPI (MVAPICH2) i sieci InfiniBand.
- Programy znajdują się w katalogach (odpowiednio do wersji):
/usr/local/gromacs/4.5.3-double/ - wersja sekwencyjna podwójnej precyzji /usr/local/gromacs/4.5.3-double-mpi/ - wersja równoległa podwójnej precyzji /usr/local/gromacs/4.5.3-single/ - wersja sekwencyjna pojedynczej precyzji /usr/local/gromacs/4.5.3-single-mpi/ - wersja równoległa pojedynczej precyzji
- Gromacs 4.5.5
- skompilowany kompilatorami Intela w wersji sekwencyjnej i równoległej z wykorzystaniem trybu float. Wersja równoległa korzysta z bibliotek MPI (MVAPICH2) i sieci InfiniBand.
- Programy znajdują się w katalogu:
/usr/local/gromacs/4.5.5-single/
Środowisko aplikacji
Do prostego ustawiania środowiska programu można skorzystać z mechanizmu modułów.
Załadowanie modułu w powłoce:
> module load gromacs
Powyższe polecenie ustawia odpowiednie ścieżki dostępu do poleceń grompp
i mdrun
domyślnej (najnowszej) wersji pakietu Gromacs.
Aby załadować środowisko konkretnej wersji należy skorzystać z jednego z poleceń:
> module load gromacs/4.5.3-s > module load gromacs/4.5.3-d > module load gromacs/4.5.5-s
Wstawianie zadań do kolejki
Zadania obliczeniowe należy wstawiać do jednej z kolejek systemu PBS. Można w tym celu skorzystać z gotowego skryptu lub napisać własny. Aby skorzystać z gotowego skryptu wystarczy wywołać polecenie:
> sub-gromacs plik.tpr [kolejka] [parametry]
Gdzie:
- Polecenie uruchamia najnowszą dostępną wersję programu.
- plik.tpr - plik z danymi wejściowymi
- Parametry w nawiasach [ ] są opcjonalne.
- -q kolejka (domyślnie parallel)
- -n liczba_rdzeni (domyślnie 4)
- -m ilosc_pamieci_na_rdzen_w_MB (domyślnie 1800)
- -i "plik1 plik2 ..." (lista plików potrzebnych do obliczeń - w cudzysłowach)
- -c plik_checkpoint (dodaje do wywołania mdrun opcję
-cpi plik_checkpoint
, plik checkpointu nie powinien być podany za -i)
Starsze wersje programu, jeśli są wspierane dostępne są przez przez skrypt z oznaczeniem wersji, np:
> sub-gromacs4.5.3 plik_wejsciowy.tpr [kolejka] [liczba_cpu] [pamiec_per_cpu_w_MB]
Gdzie:
- Polecenie uruchamia wersję 4.5.3 programu.
- plik_wejsciowy.tpr - plik z danymi wejściowymi
- Parametry w nawiasach [ ] są opcjonalne.
- Domyślne wartości:
- kolejka = parallel
- liczba_cpu = 4
- pamiec_per_cpu_w_MB = 1800
Przykładowy skrypt gmx.pbs
Użytkownik może również napisać własny skrypt i korzystać z niego do zlecania zadań do kolejki. Przykładowy skrypt znajduje się poniżej:
#!/bin/bash #PBS -q normal #PBS -l select=1:ncpus=4:mem=8096MB:mpiprocs=4 #PBS -l software=Gromacs_4.5.3-s #PBS -N gmx_test1 # Zaladuj modul gromacs source /usr/local/Modules/3.2.7/init/bash module load gromacs/4.5.3-s # Przejdz do katalogu domowego z plikami wejsciowymi zadania cd /home/$USER/gmx_test1/ export DIR=`pwd` # Utworz katalog tymczasowy, przekopiuj pliki wejsciowe export SCR=$SCRDIR/gmx-$PBS_JOBID mkdir -p $SCR cp gmx_test1/* $SCR cd $SCR # Uruchom przetwarzanie grompp $GROMPP [opcje] # Uruchom obliczenia mdrun $MDRUN -v -s test1.tpr -o test1.trr > test1.log 2>&1 #przekopiuj wyniki do katalogu domowego cd $DIR cp -r $SCR . && rm -rf $SCR
Powyższy skrypt ładuje moduł odpowiedniej wersji Gromacsa. Moduł wykrywa na podstawie ustawień środowiska PBS czy zadanie ma być równoległe czy sekwencyjne i odpowiednio ustawia zmienną MDRUN
, która w przypadku zadań równoległych zawiera polecenia uruchamiające środowisko MPI.
Wstawienie skryptu do kolejki:
> qsub gmx.pbs
- Uwaga
- Od wersji 4.5 Gromacs zrównolegla domyślnie obliczenia także na poziomie wątków. Liczbę wątków można ustalić opcją "
-nt <liczba wątków>
". Aby wyłączyć wątkowanie należy w wywołaniu programu dodać opcję "-nt 1
". Jeżeli wątkowanie jest włączone (domyślnie jest) program próbuje automatycznie podzielić domenę problemu na tyle porcji ile uruchamia wątków - jeżeli mu się to nie uda, program jest przerywany i zadanie kończy się komunikatem:
- -------------------------------------------------------
- Fatal error:
- Domain decomposition does not support simple neighbor searching, use grid searching or use particle decomposition
- For more information and tips for troubleshooting, please check the GROMACS
- website at http://www.gromacs.org/Documentation/Errors
- -------------------------------------------------------
Dokumentacja
- Strona domowa pakietu Gromacs
- Dokumentacja on-line
- [www.staff.amu.edu.pl/~chemfiz/pliki/Gromacs.pdf Wprowadzenie do GROMACS'a Autorka: Magda Flader]
Zobacz też: Oprogramowanie KDM
Oprogramowanie naukowe |
Abaqus ⋅ ABINIT ⋅ ADF ⋅ Amber ⋅ ANSYS [ ANSYS CFD: Fluent, CFX, ICEM; Mechanical ] ⋅ AutoDock ⋅ BAGEL ⋅ Beast ⋅ Biovia [ Materials Studio, Discovery Studio ] ⋅ Cfour ⋅ Comsol ⋅ CP2K ⋅ CPMD ⋅ CRYSTAL ⋅ Dalton ⋅ Dask ⋅ DIRAC ⋅ FDS-SMV ⋅ GAMESS ⋅ Gaussian ⋅ Gromacs ⋅ IDL ⋅ Lumerical [ FDTD, MODE ] ⋅ Mathcad ⋅ Mathematica⋅ Matlab ⋅ Molcas ⋅ Molden ⋅ Molpro ⋅ MOPAC ⋅ NAMD ⋅ NBO ⋅ NWChem ⋅ OpenFOAM ⋅ OpenMolcas ⋅ Orca ⋅ Quantum ESPRESSO ⋅ R ⋅ Rosetta ⋅ SIESTA ⋅ Tinker ⋅ TURBOMOLE ⋅ VASP ⋅ VMD ⋅ WIEN2k |
---|