Zeus:NWChem: Różnice pomiędzy wersjami
Z Komputery Dużej Mocy w ACK CYFRONET AGH
m (Upgrade z 5.1.1. do 6.1 - zmiana nwchem_parallel na nwchem i poprawka skryptów przykładowych) |
(Dodanie wersji 6.1) |
||
Linia 5: | Linia 5: | ||
Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze [[Zeus]] służy narzędzie [[Modules]]. | Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze [[Zeus]] służy narzędzie [[Modules]]. | ||
− | = | + | = 6.1 = |
− | Zmienne środowiskowe ustawiamy ładując moduł <tt>nwchem</tt> | + | Zmienne środowiskowe ustawiamy ładując moduł <tt>nwchem</tt> (lub <tt>nwchem/6.1</tt>) |
<code>module add nwchem</code> | <code>module add nwchem</code> | ||
Linia 28: | Linia 28: | ||
#PBS -N nazwa_obliczen | #PBS -N nazwa_obliczen | ||
− | # Ustawianie zmiennych srodowiskowych dla pakietu | + | # Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 6.1 przy uzyciu Modules |
module add nwchem | module add nwchem | ||
Linia 77: | Linia 77: | ||
#PBS -N nazwa_obliczen | #PBS -N nazwa_obliczen | ||
− | # Ustawianie zmiennych srodowiskowych dla pakietu NWChem | + | # Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 6.1 przy uzyciu Modules |
module add nwchem | module add nwchem | ||
+ | |||
+ | # Ustawienie szybkiego dysku do obliczen | ||
+ | module add scratch | ||
+ | |||
+ | # sprawdzenie czy dostepny jest dysk do obliczen | ||
+ | if [ -d $SCRATCH ]; then | ||
+ | export JOB_TMPDIR=$SCRATCH/${PBS_JOBID%%.*} | ||
+ | else | ||
+ | echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | ||
+ | exit | ||
+ | fi | ||
+ | |||
+ | # utworzenie katalogu na pliku tymczasowe | ||
+ | mkdir -p $JOB_TMPDIR | ||
+ | |||
+ | # Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego | ||
+ | cp $PBS_O_WORKDIR/* $JOB_TMPDIR | ||
+ | |||
+ | # Przejscie do katalogu gdzie beda wykonywane obliczenia | ||
+ | cd $JOB_TMPDIR | ||
+ | |||
+ | # uruchomienie zadania po Infiniband z wykluczeniem TCP i zapisanie rezultatow do pliku wyniki.out. | ||
+ | # Pliki wejściowe powinny być podawane bez rozszerzenia .nw | ||
+ | |||
+ | mpirun --mca btl ^tcp nwchem <opcje, pliki> >> wyniki.out | ||
+ | # Zachowanie wynikow dzialania programu | ||
+ | #cp wazny_plik* $PBS_O_WORKDIR | ||
+ | |||
+ | #usuniecie plikow tymczasowych | ||
+ | rm -rf $JOB_TMPDIR | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | = 5.1.1 = | ||
+ | Zmienne środowiskowe pakietu NWChem w wesji 5.1.1 ustawiamy ładując moduł <tt>nwchem/5.1.1</tt> | ||
+ | |||
+ | <code>module add nwchem</code> | ||
+ | |||
+ | Program uruchamiamy poleceniem | ||
+ | <tt>nwchem <plik wejsciowy> </tt> | ||
+ | |||
+ | ==== Przykładowy skrypt ==== | ||
+ | ===== Wersja szeregowa ===== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | #!/bin/env bash | ||
+ | ##### Maksymalna pamiec przydzielona dla zadania | ||
+ | #PBS -l vmem=1gb | ||
+ | ##### Maksymalnie 1 rdzen na wezle | ||
+ | #PBS -l nodes=1:ppn=1 | ||
+ | ##### Maksymalny czas obliczen 1 godzina | ||
+ | #PBS -l walltime=1:00:00 | ||
+ | ##### Nazwa kolejki | ||
+ | #PBS -q l_short | ||
+ | ##### Nazwa zadania widoczna w systemie kolejkowym | ||
+ | #PBS -N nazwa_obliczen | ||
+ | |||
+ | # Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 5.1.1 przy uzyciu Modules | ||
+ | module add nwchem/5.1.1 | ||
+ | |||
+ | # Ustawienie szybkiego dysku do obliczen | ||
+ | module add scratch | ||
+ | |||
+ | # sprawdzenie czy dostepny jest dysk do obliczen | ||
+ | if [ -d $SCRATCH ]; then | ||
+ | export JOB_TMPDIR=$SCRATCH/${PBS_JOBID%%.*} | ||
+ | else | ||
+ | echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | ||
+ | exit | ||
+ | fi | ||
+ | |||
+ | # utworzenie katalogu na pliku tymczasowe | ||
+ | mkdir -p $JOB_TMPDIR | ||
+ | |||
+ | # Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego | ||
+ | cp $PBS_O_WORKDIR/* $JOB_TMPDIR | ||
+ | |||
+ | # Przejscie do katalogu gdzie beda wykonywane obliczenia | ||
+ | cd $JOB_TMPDIR | ||
+ | |||
+ | # uruchomienie zadania | ||
+ | nwchem <opcje, pliki> | ||
+ | |||
+ | # Zachowanie wynikow dzialania programu | ||
+ | # cp wazny_plik* $PBS_O_WORKDIR | ||
+ | |||
+ | #usuniecie plikow tymczasowych | ||
+ | rm -rf $JOB_TMPDIR | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | ===== Wersja równoległa ===== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | #!/bin/env bash | ||
+ | ##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*14*4=64GB na zadanie! | ||
+ | #PBS -l pvmem=1gb | ||
+ | ##### Maksymalnie 64 rdzenie na 16 wezlach, po 4 rdzenie na kazdym z siecia Infiniband | ||
+ | #PBS -l nodes=16:ppn=4:infiniband | ||
+ | ##### Maksymalny czas obliczen 1 godzina | ||
+ | #PBS -l walltime=1:00:00 | ||
+ | ##### Nazwa kolejki | ||
+ | #PBS -q l_short | ||
+ | ##### Nazwa zadania widoczna w systemie kolejkowym | ||
+ | #PBS -N nazwa_obliczen | ||
+ | |||
+ | # Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 5.1.1 przy uzyciu Modules | ||
+ | module add nwchem/5.1.1 | ||
# Ustawienie szybkiego dysku do obliczen | # Ustawienie szybkiego dysku do obliczen |
Wersja z 13:48, 15 cze 2012
Wersje oprogramowania zainstalowane na klastrze Zeus.
Spis treści
Informacje ogólne
Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze Zeus służy narzędzie Modules.
6.1
Zmienne środowiskowe ustawiamy ładując moduł nwchem (lub nwchem/6.1)
module add nwchem
Program uruchamiamy poleceniem
nwchem <plik wejsciowy>
Przykładowy skrypt
Wersja szeregowa
#!/bin/env bash
##### Maksymalna pamiec przydzielona dla zadania
#PBS -l vmem=1gb
##### Maksymalnie 1 rdzen na wezle
#PBS -l nodes=1:ppn=1
##### Maksymalny czas obliczen 1 godzina
#PBS -l walltime=1:00:00
##### Nazwa kolejki
#PBS -q l_short
##### Nazwa zadania widoczna w systemie kolejkowym
#PBS -N nazwa_obliczen
# Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 6.1 przy uzyciu Modules
module add nwchem
# Ustawienie szybkiego dysku do obliczen
module add scratch
# sprawdzenie czy dostepny jest dysk do obliczen
if [ -d $SCRATCH ]; then
export JOB_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
else
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!"
exit
fi
# utworzenie katalogu na pliku tymczasowe
mkdir -p $JOB_TMPDIR
# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR
# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR
# uruchomienie zadania
nwchem <opcje, pliki>
# Zachowanie wynikow dzialania programu
# cp wazny_plik* $PBS_O_WORKDIR
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR
Wersja równoległa
#!/bin/env bash
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*14*4=64GB na zadanie!
#PBS -l pvmem=1gb
##### Maksymalnie 64 rdzenie na 16 wezlach, po 4 rdzenie na kazdym z siecia Infiniband
#PBS -l nodes=16:ppn=4:infiniband
##### Maksymalny czas obliczen 1 godzina
#PBS -l walltime=1:00:00
##### Nazwa kolejki
#PBS -q l_short
##### Nazwa zadania widoczna w systemie kolejkowym
#PBS -N nazwa_obliczen
# Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 6.1 przy uzyciu Modules
module add nwchem
# Ustawienie szybkiego dysku do obliczen
module add scratch
# sprawdzenie czy dostepny jest dysk do obliczen
if [ -d $SCRATCH ]; then
export JOB_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
else
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!"
exit
fi
# utworzenie katalogu na pliku tymczasowe
mkdir -p $JOB_TMPDIR
# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR
# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR
# uruchomienie zadania po Infiniband z wykluczeniem TCP i zapisanie rezultatow do pliku wyniki.out.
# Pliki wejściowe powinny być podawane bez rozszerzenia .nw
mpirun --mca btl ^tcp nwchem <opcje, pliki> >> wyniki.out
# Zachowanie wynikow dzialania programu
#cp wazny_plik* $PBS_O_WORKDIR
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR
5.1.1
Zmienne środowiskowe pakietu NWChem w wesji 5.1.1 ustawiamy ładując moduł nwchem/5.1.1
module add nwchem
Program uruchamiamy poleceniem
nwchem <plik wejsciowy>
Przykładowy skrypt
Wersja szeregowa
#!/bin/env bash
##### Maksymalna pamiec przydzielona dla zadania
#PBS -l vmem=1gb
##### Maksymalnie 1 rdzen na wezle
#PBS -l nodes=1:ppn=1
##### Maksymalny czas obliczen 1 godzina
#PBS -l walltime=1:00:00
##### Nazwa kolejki
#PBS -q l_short
##### Nazwa zadania widoczna w systemie kolejkowym
#PBS -N nazwa_obliczen
# Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 5.1.1 przy uzyciu Modules
module add nwchem/5.1.1
# Ustawienie szybkiego dysku do obliczen
module add scratch
# sprawdzenie czy dostepny jest dysk do obliczen
if [ -d $SCRATCH ]; then
export JOB_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
else
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!"
exit
fi
# utworzenie katalogu na pliku tymczasowe
mkdir -p $JOB_TMPDIR
# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR
# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR
# uruchomienie zadania
nwchem <opcje, pliki>
# Zachowanie wynikow dzialania programu
# cp wazny_plik* $PBS_O_WORKDIR
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR
Wersja równoległa
#!/bin/env bash
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*14*4=64GB na zadanie!
#PBS -l pvmem=1gb
##### Maksymalnie 64 rdzenie na 16 wezlach, po 4 rdzenie na kazdym z siecia Infiniband
#PBS -l nodes=16:ppn=4:infiniband
##### Maksymalny czas obliczen 1 godzina
#PBS -l walltime=1:00:00
##### Nazwa kolejki
#PBS -q l_short
##### Nazwa zadania widoczna w systemie kolejkowym
#PBS -N nazwa_obliczen
# Ustawianie zmiennych srodowiskowych dla pakietu NWChem w wersji 5.1.1 przy uzyciu Modules
module add nwchem/5.1.1
# Ustawienie szybkiego dysku do obliczen
module add scratch
# sprawdzenie czy dostepny jest dysk do obliczen
if [ -d $SCRATCH ]; then
export JOB_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
else
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!"
exit
fi
# utworzenie katalogu na pliku tymczasowe
mkdir -p $JOB_TMPDIR
# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR
# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR
# uruchomienie zadania po Infiniband z wykluczeniem TCP i zapisanie rezultatow do pliku wyniki.out.
# Pliki wejściowe powinny być podawane bez rozszerzenia .nw
mpirun --mca btl ^tcp nwchem <opcje, pliki> >> wyniki.out
# Zachowanie wynikow dzialania programu
#cp wazny_plik* $PBS_O_WORKDIR
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR