Zeus:Gaussian: Różnice pomiędzy wersjami
Z Komputery Dużej Mocy w ACK CYFRONET AGH
Linia 19: | Linia 19: | ||
<syntaxhighlight lang="bash"> | <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 | |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | #uruchomienie zadania | + | # Ustawianie zmiennych srodowiskowych dla pakietu Gaussian09 i A02 przy uzyciu Modules |
− | + | module add gaussian/g09.A.02 | |
− | + | ||
− | + | # 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 | ||
+ | |||
+ | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
+ | export GAUSS_SCRDIR=$TMPDIR | ||
+ | |||
+ | # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego | ||
+ | cd $PBS_O_WORKDIR | ||
+ | |||
+ | # uruchomienie zadania | ||
+ | g09 job.com | ||
+ | |||
+ | #usuniecie plikow tymczasowych | ||
+ | rm -rf $JOB_TMPDIR | ||
</syntaxhighlight> | </syntaxhighlight> | ||
===== Wersja równoległa ===== | ===== Wersja równoległa ===== | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | ##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*12=12GB na zadanie! | |
− | + | #PBS -l pvmem=1gb | |
− | + | ##### Maksymalnie 12 rdzeni na wezle | |
− | + | #PBS -l nodes=1:ppn=12 | |
− | + | ##### 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 Gaussian09 i A02 przy uzyciu Modules | |
− | + | module add gaussian/g09.A.02 | |
− | + | ||
− | + | # 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 | ||
+ | |||
+ | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
+ | export GAUSS_SCRDIR=$TMPDIR | ||
+ | |||
+ | # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego | ||
+ | cd $PBS_O_WORKDIR | ||
+ | |||
+ | # uruchomienie zadania | ||
+ | g09 job.com | ||
− | + | #usuniecie plikow tymczasowych | |
− | + | rm -rf $JOB_TMPDIR | |
− | |||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
Linia 93: | Linia 116: | ||
<syntaxhighlight lang="bash"> | <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 Gaussian03 i E01 przy uzyciu Modules | |
− | + | module add gaussian/g03.E.01 | |
− | + | ||
− | + | # 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 | ||
+ | |||
+ | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
+ | export GAUSS_SCRDIR=$TMPDIR | ||
+ | |||
+ | # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego | ||
+ | cd $PBS_O_WORKDIR | ||
+ | |||
+ | # uruchomienie zadania | ||
+ | g03 job.com | ||
− | + | #usuniecie plikow tymczasowych | |
− | + | rm -rf $JOB_TMPDIR | |
− | |||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
===== Wersja równoległa ===== | ===== Wersja równoległa ===== | ||
<syntaxhighlight lang="bash"> | <syntaxhighlight lang="bash"> | ||
− | + | ##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*12=12GB na zadanie! | |
− | + | #PBS -l pvmem=1gb | |
− | + | ##### Maksymalnie 12 rdzeni na wezle | |
− | + | #PBS -l nodes=1:ppn=12 | |
− | + | ##### 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 Gaussian03 i E01 przy uzyciu Modules | |
− | + | module add gaussian/g03.E.01 | |
− | + | ||
− | + | # 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 | ||
+ | |||
+ | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
+ | export GAUSS_SCRDIR=$TMPDIR | ||
+ | |||
+ | # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego | ||
+ | cd $PBS_O_WORKDIR | ||
+ | |||
+ | # uruchomienie zadania | ||
+ | g03 job.com | ||
− | + | #usuniecie plikow tymczasowych | |
− | + | rm -rf $JOB_TMPDIR | |
− | |||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> |
Wersja z 23:19, 7 mar 2012
Na klastrze Zeus zainstalowano pakiet Gaussian09 w wersji A.02 oraz Gaussian03 w wersji E.01.
Spis treści
Informacje ogólne
Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze Zeus służy narzędzie Modules. Pliki tymczasowe należy tworzyć używająć zasobu dyskowego Lustre.
Uwaga: Liczbę procesorów specyfikujemy podając %NProcShared=y w wejściowym pliku definującym obliczenia oraz podając flagę -l nodes=1:ppn=y dla systemu kolejkowego (y - liczba rdzeni obliczeniowych).
G09.A.02
Zmienne środowiskowe ustawiamy ładując moduł gaussian/g09.A.02
module add gaussian/g09.A.02
Program uruchamiamy poleceniem g09
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 Gaussian09 i A02 przy uzyciu Modules
module add gaussian/g09.A.02
# 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
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana
export GAUSS_SCRDIR=$TMPDIR
# przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
cd $PBS_O_WORKDIR
# uruchomienie zadania
g09 job.com
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR
Wersja równoległa
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*12=12GB na zadanie!
#PBS -l pvmem=1gb
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=1:ppn=12
##### 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 Gaussian09 i A02 przy uzyciu Modules
module add gaussian/g09.A.02
# 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
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana
export GAUSS_SCRDIR=$TMPDIR
# przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
cd $PBS_O_WORKDIR
# uruchomienie zadania
g09 job.com
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR
G03.E.01
Zmienne środowiskowe ustawiamy ładując moduł gaussian/g03.E.01
module add gaussian/g03.E.01
Program uruchamiamy poleceniem g03
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 Gaussian03 i E01 przy uzyciu Modules
module add gaussian/g03.E.01
# 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
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana
export GAUSS_SCRDIR=$TMPDIR
# przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
cd $PBS_O_WORKDIR
# uruchomienie zadania
g03 job.com
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR
Wersja równoległa
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*12=12GB na zadanie!
#PBS -l pvmem=1gb
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=1:ppn=12
##### 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 Gaussian03 i E01 przy uzyciu Modules
module add gaussian/g03.E.01
# 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
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana
export GAUSS_SCRDIR=$TMPDIR
# przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
cd $PBS_O_WORKDIR
# uruchomienie zadania
g03 job.com
#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR