Gromacs: Różnice pomiędzy wersjami
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)}} |
'''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''' - 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. | ||
Linia 10: | Linia 10: | ||
Gromacs umożliwia obliczenia równoległe przy użyciu standardowych bibliotek [[MPI]]. | Gromacs umożliwia obliczenia równoległe przy użyciu standardowych bibliotek [[MPI]]. | ||
− | Na klastrze [[Nova]] | + | 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. |
− | Programy znajdują się w katalogach: | + | Programy znajdują się w katalogach (odpowiednio do wersji): |
− | /usr/local/gromacs/gromacs- | + | /usr/local/gromacs/gromacs-wersja-double/ - wersja sekwencyjna podwójnej precyzji |
− | /usr/local/gromacs/gromacs- | + | /usr/local/gromacs/gromacs-wersja-double-mpi/ - wersja równoległa podwójnej precyzji |
− | /usr/local/gromacs/gromacs- | + | /usr/local/gromacs/gromacs-wersja-single/ - wersja sekwencyjna pojedynczej precyzji |
− | /usr/local/gromacs/gromacs | + | /usr/local/gromacs/gromacs-wersja-single-mpi/ - wersja równoległa pojedynczej precyzji |
− | |||
− | |||
− | |||
− | |||
− | |||
+ | ; Środowisko aplikacji | ||
Do prostego ustawiania środowiska programu można skorzystać z mechanizmu modułów. | Do prostego ustawiania środowiska programu można skorzystać z mechanizmu modułów. | ||
− | Inicjalizacja środowiska w powłoce bash: | + | Inicjalizacja środowiska modułów w powłoce bash: |
nova> source /usr/local/Modules/3.2.7/init/bash | nova> source /usr/local/Modules/3.2.7/init/bash | ||
nova> module load gromacs | nova> module load gromacs | ||
− | Powyższe polecenie ustawia odpowiednie ścieżki dostępu do poleceń <code>grompp</code> i <code>mdrun</code> | + | 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). |
Aby załadować środowisko konkretnej wersji należy skorzystać z jednego z poleceń: | Aby załadować środowisko konkretnej wersji należy skorzystać z jednego z poleceń: | ||
− | nova> module load gromacs/4.5. | + | nova> module load gromacs/4.5.3-s |
− | nova> module load gromacs/4.5. | + | nova> module load gromacs/4.5.3-d |
− | + | ||
− | nova> | + | ;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] | ||
+ | |||
+ | gdzie: | ||
+ | * 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 | ;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 | #!/bin/bash | ||
#PBS -q normal | #PBS -q normal | ||
Linia 71: | Linia 79: | ||
− | Powyższy skrypt ładuje moduł odpowiedniej wersji Gromacsa. Moduł wykrywa na podstawie ustawień | + | 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: | Wstawienie skryptu do kolejki: |
Wersja z 13:28, 16 sie 2011
< Podręcznik użytkownika KDM < Oprogramowanie KDM < Oprogramowanie naukowe
Gromacs | |
---|---|
Gromacs.jpg | |
Serwer | Wersja |
Nova | 4.5.3 (single, double, 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 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.
Programy znajdują się w katalogach (odpowiednio do wersji):
/usr/local/gromacs/gromacs-wersja-double/ - wersja sekwencyjna podwójnej precyzji /usr/local/gromacs/gromacs-wersja-double-mpi/ - wersja równoległa podwójnej precyzji /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
Do prostego ustawiania środowiska programu można skorzystać z mechanizmu modułów.
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ń grompp
i mdrun
domyślnej (najnowszej) wersji pakietu Gromacs, czyli 4.5.3-double (double precision).
Aby załadować środowisko konkretnej wersji należy skorzystać z jednego z poleceń:
nova> module load gromacs/4.5.3-s nova> module load gromacs/4.5.3-d
- 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:
nova> sub-gromacs plik_wejsciowy.tpr [kolejka] [liczba_cpu] [pamiec_per_cpu_w_MB]
gdzie:
- 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 nodes=1:ppn=4 #PBS -l mem=7200MB #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ą MDRUN
, 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ą "
-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
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 |
---|