Zeus:Gaussian: Różnice pomiędzy wersjami
(dodano G09 rev C.01) |
|||
Linia 1: | Linia 1: | ||
{{DISPLAYTITLE:Gaussian}} | {{DISPLAYTITLE:Gaussian}} | ||
− | Na klastrze [[Zeus]] zainstalowano pakiet Gaussian09 w wersji A.02 oraz Gaussian03 w wersji E.01. | + | Na klastrze [[Zeus]] zainstalowano pakiet Gaussian09 w wersji A.02 i C.01 oraz Gaussian03 w wersji E.01. |
= Informacje ogólne = | = Informacje ogólne = | ||
Linia 7: | Linia 7: | ||
'''Uwaga:''' Liczbę procesorów specyfikujemy podając ''%NProcShared=y'' w wejściowym pliku definującym obliczenia oraz podając flagę <tt>-l nodes=1:ppn=y</tt> dla systemu kolejkowego (<tt>y</tt> - liczba rdzeni obliczeniowych). | '''Uwaga:''' Liczbę procesorów specyfikujemy podając ''%NProcShared=y'' w wejściowym pliku definującym obliczenia oraz podając flagę <tt>-l nodes=1:ppn=y</tt> dla systemu kolejkowego (<tt>y</tt> - liczba rdzeni obliczeniowych). | ||
+ | |||
+ | =G09.C.01= | ||
+ | Zmienne środowiskowe ustawiamy ładując moduł <tt>gaussian/g09.C.01</tt> | ||
+ | |||
+ | <code>module add gaussian/g09.C.01</code> | ||
+ | |||
+ | Program uruchamiamy poleceniem <tt>g09</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 Gaussian09 rev C.01 przy uzyciu Modules | ||
+ | module add gaussian/g09.C.01 | ||
+ | |||
+ | # Ustawienie szybkiego dysku do obliczen | ||
+ | module add scratch | ||
+ | |||
+ | # sprawdzenie czy dostepny jest dysk do obliczen | ||
+ | if [ -d $SCRATCH ]; then | ||
+ | export 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 $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 $TMPDIR | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | ===== Wersja równoległa ze współdzieloną pamięcią===== | ||
+ | <syntaxhighlight lang="bash"> | ||
+ | #!/bin/env 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 rev. C.01 przy uzyciu Modules | ||
+ | module add gaussian/g09.C.01 | ||
+ | |||
+ | # Ustawienie szybkiego dysku do obliczen | ||
+ | module add scratch | ||
+ | |||
+ | # sprawdzenie czy dostepny jest dysk do obliczen | ||
+ | if [ -d $SCRATCH ]; then | ||
+ | export 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 $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 $TMPDIR | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
=G09.A.02= | =G09.A.02= | ||
Linia 39: | Linia 138: | ||
# sprawdzenie czy dostepny jest dysk do obliczen | # sprawdzenie czy dostepny jest dysk do obliczen | ||
if [ -d $SCRATCH ]; then | if [ -d $SCRATCH ]; then | ||
− | export | + | export TMPDIR=$SCRATCH/${PBS_JOBID%%.*} |
else | else | ||
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | ||
Linia 58: | Linia 157: | ||
#usuniecie plikow tymczasowych | #usuniecie plikow tymczasowych | ||
− | rm -rf $ | + | rm -rf $TMPDIR |
</syntaxhighlight> | </syntaxhighlight> | ||
Linia 83: | Linia 182: | ||
# sprawdzenie czy dostepny jest dysk do obliczen | # sprawdzenie czy dostepny jest dysk do obliczen | ||
if [ -d $SCRATCH ]; then | if [ -d $SCRATCH ]; then | ||
− | export | + | export TMPDIR=$SCRATCH/${PBS_JOBID%%.*} |
else | else | ||
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | ||
Linia 90: | Linia 189: | ||
# utworzenie katalogu na pliku tymczasowe | # utworzenie katalogu na pliku tymczasowe | ||
− | mkdir -p $ | + | mkdir -p $TMPDIR |
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
Linia 102: | Linia 201: | ||
#usuniecie plikow tymczasowych | #usuniecie plikow tymczasowych | ||
− | rm -rf $ | + | rm -rf $TMPDIR |
</syntaxhighlight> | </syntaxhighlight> | ||
+ | |||
Linia 137: | Linia 237: | ||
# sprawdzenie czy dostepny jest dysk do obliczen | # sprawdzenie czy dostepny jest dysk do obliczen | ||
if [ -d $SCRATCH ]; then | if [ -d $SCRATCH ]; then | ||
− | export | + | export TMPDIR=$SCRATCH/${PBS_JOBID%%.*} |
else | else | ||
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | ||
Linia 144: | Linia 244: | ||
# utworzenie katalogu na pliku tymczasowe | # utworzenie katalogu na pliku tymczasowe | ||
− | mkdir -p $ | + | mkdir -p $TMPDIR |
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
Linia 156: | Linia 256: | ||
#usuniecie plikow tymczasowych | #usuniecie plikow tymczasowych | ||
− | rm -rf $ | + | rm -rf $TMPDIR |
</syntaxhighlight> | </syntaxhighlight> | ||
Linia 181: | Linia 281: | ||
# sprawdzenie czy dostepny jest dysk do obliczen | # sprawdzenie czy dostepny jest dysk do obliczen | ||
if [ -d $SCRATCH ]; then | if [ -d $SCRATCH ]; then | ||
− | export | + | export TMPDIR=$SCRATCH/${PBS_JOBID%%.*} |
else | else | ||
echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | echo "Obliczenia nie moga byc wykonane z powodu braku dostepu do zasobow dyskowych!" | ||
Linia 188: | Linia 288: | ||
# utworzenie katalogu na pliku tymczasowe | # utworzenie katalogu na pliku tymczasowe | ||
− | mkdir -p $ | + | mkdir -p $TMPDIR |
# ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | # ustawienie zmiennej okreslajacej katalog na pliki tymczasowe dla Gaussiana | ||
Linia 200: | Linia 300: | ||
#usuniecie plikow tymczasowych | #usuniecie plikow tymczasowych | ||
− | rm -rf $ | + | rm -rf $TMPDIR |
</syntaxhighlight> | </syntaxhighlight> |
Wersja z 07:55, 5 cze 2012
Na klastrze Zeus zainstalowano pakiet Gaussian09 w wersji A.02 i C.01 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.C.01
Zmienne środowiskowe ustawiamy ładując moduł gaussian/g09.C.01
module add gaussian/g09.C.01
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 rev C.01 przy uzyciu Modules
module add gaussian/g09.C.01
# Ustawienie szybkiego dysku do obliczen
module add scratch
# sprawdzenie czy dostepny jest dysk do obliczen
if [ -d $SCRATCH ]; then
export 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 $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 $TMPDIR
Wersja równoległa ze współdzieloną pamięcią
#!/bin/env 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 rev. C.01 przy uzyciu Modules
module add gaussian/g09.C.01
# Ustawienie szybkiego dysku do obliczen
module add scratch
# sprawdzenie czy dostepny jest dysk do obliczen
if [ -d $SCRATCH ]; then
export 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 $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 $TMPDIR
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 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 $TMPDIR
Wersja równoległa ze współdzieloną pamięcią
#!/bin/env 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 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 $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 $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 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 $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 $TMPDIR
Wersja równoległa ze współdzieloną pamięcią
#!/bin/env 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 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 $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 $TMPDIR