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_TMPDIRWersja 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_TMPDIRWersja 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