Gromacs: Różnice pomiędzy wersjami

Z KdmWiki
Przejdź do nawigacji Przejdź do wyszukiwania
 
(Nie pokazano 21 wersji utworzonych przez 6 użytkowników)
Linia 1: Linia 1:
 
<small>< [[Podręcznik użytkownika KDM]] < [[Oprogramowanie KDM]] < [[Oprogramowanie naukowe]]</small>
 
<small>< [[Podręcznik użytkownika KDM]] < [[Oprogramowanie KDM]] < [[Oprogramowanie naukowe]]</small>
{{aplikacja|nazwa=Gromacs|logo=Gromacs.jpg|serwer=[[Nova]]|wersja=4.5.3 (single, double, seq, MPI)}}
+
{{aplikacja|nazwa=Gromacs|logo=[[Plik:gromacs-logo.gif|240px]]|serwer=[[Bem]]| wersja4=2018.4 |wersja3=5.1.1 |wersja2='''5.0.4''' |wersja=4.6.7 }}
'''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.
+
'''Gromacs''' (GROningen MAchine for Chemical Simulations)  - 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 ==
 
== Licencja ==
 
Pakiet jest darmowy, rozpowszechniany na licencji [http://www.gnu.org/licenses/licenses.html#GPL GNU GPL].  
 
Pakiet jest darmowy, rozpowszechniany na licencji [http://www.gnu.org/licenses/licenses.html#GPL GNU GPL].  
 
+
=== Informacje o wykorzystaniu ===
 +
{{Podziękowanie_WCSS}}
  
 
== Gromacs w WCSS ==
 
== Gromacs w WCSS ==
Gromacs umożliwia obliczenia równoległe przy użyciu standardowych bibliotek [[MPI]].
+
==== Wstawianie zadań do kolejki ====
 +
Zadania obliczeniowe należy wstawiać do jednej z [[jak korzystać z kolejek PBS|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:
  
Na klastrze [[Nova]] dostępny jest Gromacs '''4.5.3''' skompilowany kompilatorami Intela w wersji sekwencyjnej i równoległej z wykorzystaniem trybu float lub double. Wszystkie wersje równoległe korzystają z bibliotek MPI (MVAPICH2) i sieci InfiniBand.  
+
> '''sub-gromacs''' plik.tpr [parametry]
  
Programy znajdują się w katalogach (odpowiednio do wersji):
+
Gdzie:
 +
* Polecenie uruchamia najnowszą dostępną wersję programu.
 +
* plik.tpr - plik z danymi wejściowymi
 +
* Parametry w nawiasach [ ] są opcjonalne.
 +
** -q kolejka (domyślnie normal)
 +
** -n liczba_węzłów (domyślnie 1)
 +
** -n liczba_rdzeni_na_węzeł (domyślnie 4)
 +
** -m ilosc_pamieci_na_węzeł_w_MB (domyślnie 7200)
 +
** -i "plik1 plik2 ..." (lista plików potrzebnych do obliczeń - w cudzysłowach)
 +
** -c plik_checkpoint (dodaje do wywołania mdrun opcję <code>-cpi plik_checkpoint</code>, plik checkpointu nie powinien być podany za -i)
  
/usr/local/gromacs/gromacs-wersja-double/    - wersja sekwencyjna podwójnej precyzji
+
Starsze wersje programu, jeśli są wspierane dostępne są przez skrypt z oznaczeniem wersji, np:
/usr/local/gromacs/gromacs-wersja-double-mpi/ - wersja równoległa podwójnej precyzji
+
  > '''sub-gromacs4.5.3''' plik_wejsciowy.tpr [parametry]
  /usr/local/gromacs/gromacs-wersja-single/    - wersja sekwencyjna pojedynczej precyzji
 
/usr/local/gromacs/gromacs-wersja-single-mpi/ - wersja równoległa pojedynczej precyzji
 
  
; Środowisko aplikacji
+
Gdzie:
Do prostego ustawiania środowiska programu można skorzystać z mechanizmu modułów.
+
* Polecenie uruchamia wersję 4.5.3 programu.
 +
* plik_wejsciowy.tpr - plik z danymi wejściowymi
 +
* Parametry w nawiasie [ ] są opcjonalne.
 +
** -q kolejka (domyślnie normal)
 +
** -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ę <code>-cpi plik_checkpoint</code>, plik checkpointu nie powinien być podany za -i)
  
Inicjalizacja środowiska modułów w powłoce bash:
 
nova> source /usr/local/Modules/3.2.7/init/bash
 
nova> module load gromacs
 
  
Powyższe polecenie ustawia odpowiednie ścieżki dostępu do poleceń <code>grompp</code> i <code>mdrun</code> domyślnej (najnowszej) wersji pakietu Gromacs, czyli 4.5.3-double (double precision).
+
Skrypty do obliczeń, przygotowane przez administratorów, są dostępne dla wersji 4.0.7 (single), 4.5.3 (single), 4.5.5 (single, double), 4.6.3 (single) oraz 5.0.2 (single).
  
Aby załadować środowisko konkretnej wersji należy skorzystać z jednego z poleceń:
+
;UwagaOd wersji 4.5 Gromacs zrównolegla domyślnie obliczenia także na poziomie wątków. Liczbę wątków można ustalić opcją "<code>-ntomp <liczba wątków></code>". Zatem aby wykonać obliczenia z ustaloną liczbą wątków należy uruchmić zadanie interaktywne
  nova> module load gromacs/4.5.3-s
+
  > qsub -I -l select=1:ncpus=N
  nova> module load gromacs/4.5.3-d
+
:i skorzystać z polecenia
 +
> mdrun -ntomp N -ntmpi 1 -deffnm plik
 +
:gdzie plik to nazwa pliku z rozszerzeniem .tpr
  
;Wstawianie zadań do kolejki
 
Zadania obliczeniowe należy wstawiać do jednej z [[jak korzystać z kolejek PBS|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:
 
  
nova> sub-gromacs plik_wejsciowy.tpr [kolejka] [liczba_cpu] [pamiec_per_cpu_w_MB]
+
==== Środowisko aplikacji ====
 +
Do prostego ustawiania środowiska programu można skorzystać z mechanizmu modułów.
  
gdzie:
+
Załadowanie modułu w powłoce:
* Parametry w nawiasach [ ] są opcjonalne.
+
> module load gromacs
* Domyślne wartości:
 
**  kolejka            = parallel
 
**  liczba_cpu          = 4
 
**  pamiec_per_cpu_w_MB = 1800
 
  
 +
Powyższe polecenie ustawia odpowiednie ścieżki dostępu do poleceń <code>grompp</code> i <code>mdrun</code> domyślnej (najnowszej) wersji pakietu Gromacs.
  
;Przykładowy skrypt gmx.pbs
+
Aby załadować środowisko konkretnej wersji należy skorzystać z odpowiedniego polecenia, np:
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:
+
> module load gromacs/4.6.7-intel15.0
 +
> module load gromacs/5.0.4-intel15.0
 +
> module load gromacs/5.1.1-intel15.0
  
#!/bin/bash
+
W celu sprawdzenia jakie moduły są dostępne należy skorzystać z polecenia
#PBS -q normal
+
  > module avail gromacs
#PBS -l select=1:ncpus=4:mem=8096MB:mpiprocs=4:epoch=hp
 
#PBS -N gmx_test1
 
 
# Zaladuj modul gromacs
 
source /usr/local/Modules/3.2.7/init/bash
 
module load gromacs/4.0.7-d
 
 
# 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ą <code>MDRUN</code>, która w przypadku zadań równoległych zawiera polecenia uruchamiające środowisko MPI.
 
 
 
Wstawienie skryptu do kolejki:
 
 
 
  nova> 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ą "<code>-nt <liczba wątków></code>". Aby wyłączyć wątkowanie należy w wywołaniu programu dodać opcję "<code>-nt 1</code>". 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 ==
 
== Dokumentacja ==
*[http://www.gromacs.org/ Strona domowa pakietu Gromacs]
+
* [http://www.gromacs.org/ Strona domowa pakietu Gromacs]
*[http://www.gromacs.org/content/view/13/27/ Dokumentacja on-line]
+
* [http://www.gromacs.org/content/view/13/27/ Dokumentacja on-line]
 
+
* [http://www.staff.amu.edu.pl/~chemfiz/pliki/Gromacs.pdf Magda Flader: Wprowadzenie do GROMACS'a]
  
 
'''Zobacz też:''' [[Oprogramowanie KDM]]
 
'''Zobacz też:''' [[Oprogramowanie KDM]]

Aktualna wersja na dzień 10:56, 20 lis 2018

< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie naukowe

Gromacs
gromacs-logo.gif
Serwer Wersja
Bem 4.6.7
5.0.4
5.1.1
2018.4
Kontakt
kdm@wcss.pl

Gromacs (GROningen MAchine for Chemical Simulations) - 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.

Informacje o wykorzystaniu

Wszelkie publikacje, (w tym prace doktorskie i dyplomowe) wykorzystujące wyniki obliczeń wykonanych na komputerach WCSS, powinny zawierać podziękowania postaci (odpowiednio do języka publikacji):

"Obliczenia wykonano na komputerach Wrocławskiego Centrum Sieciowo-Superkomputerowego (http://www.wcss.pl), grant obliczeniowy Nr ... "

"Calculations have been carried out in Wroclaw Centre for Networking and Supercomputing (http://www.wcss.pl), grant No. ..."

Gromacs w WCSS

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 [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 normal)
    • -n liczba_węzłów (domyślnie 1)
    • -n liczba_rdzeni_na_węzeł (domyślnie 4)
    • -m ilosc_pamieci_na_węzeł_w_MB (domyślnie 7200)
    • -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 skrypt z oznaczeniem wersji, np:

> sub-gromacs4.5.3 plik_wejsciowy.tpr [parametry]

Gdzie:

  • Polecenie uruchamia wersję 4.5.3 programu.
  • plik_wejsciowy.tpr - plik z danymi wejściowymi
  • Parametry w nawiasie [ ] są opcjonalne.
    • -q kolejka (domyślnie normal)
    • -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)


Skrypty do obliczeń, przygotowane przez administratorów, są dostępne dla wersji 4.0.7 (single), 4.5.3 (single), 4.5.5 (single, double), 4.6.3 (single) oraz 5.0.2 (single).

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ą "-ntomp <liczba wątków>". Zatem aby wykonać obliczenia z ustaloną liczbą wątków należy uruchmić zadanie interaktywne
> qsub -I -l select=1:ncpus=N
i skorzystać z polecenia
> mdrun -ntomp N -ntmpi 1 -deffnm plik
gdzie plik to nazwa pliku z rozszerzeniem .tpr


Ś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 odpowiedniego polecenia, np:

> module load gromacs/4.6.7-intel15.0
> module load gromacs/5.0.4-intel15.0
> module load gromacs/5.1.1-intel15.0

W celu sprawdzenia jakie moduły są dostępne należy skorzystać z polecenia

> module avail gromacs

Dokumentacja

Zobacz też: Oprogramowanie KDM