Zeus:Gaussian: Różnice pomiędzy wersjami
Z Komputery Dużej Mocy w ACK CYFRONET AGH
(ver alpha) |
|||
Linia 18: | Linia 18: | ||
==== Przykładowy skrypt ==== | ==== Przykładowy skrypt ==== | ||
===== Wersja szeregowa ===== | ===== Wersja szeregowa ===== | ||
+ | |||
+ | <syntaxhighlight lang="bash"> | ||
+ | #!/bin/env bash | ||
+ | # memory requested | ||
+ | #PBS -l mem=2gb | ||
+ | # no of cpus requested (ppn = procesors/cores per node) | ||
+ | #PBS -l nodes=1:ppn=12 | ||
+ | #name of queue | ||
+ | #PBS -q l_infinite | ||
+ | # name of job in PBS | ||
+ | #PBS -N computation_mame | ||
+ | |||
+ | # prepare enviroment for the Gaussian ver. 03 rev. E.01 using Modules package | ||
+ | module add gaussian/g03.E.01 | ||
+ | |||
+ | # check whether distributted lustre scratch space is available for temporary files | ||
+ | if [ -d /mnt/lustre/scratch/people/$USER/ ]; then | ||
+ | export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*} | ||
+ | fi | ||
+ | |||
+ | export GAUSS_SCRDIR=$TMPDIR # def. scratch dir | ||
+ | |||
+ | mkdir -p $GAUSS_SCRDIR # create scratch dir if necessary | ||
+ | |||
+ | cd $PBS_O_WORKDIR # switch to dir from with pbs job was submitted | ||
+ | g03 job.g03.com #run the Gaussian Job | ||
+ | |||
+ | rm -rf $GAUSS_SCRDIR #cleaning scratch dir | ||
+ | |||
+ | |||
+ | </syntaxhighlight> | ||
+ | |||
<code> | <code> | ||
tutaj skrypt | tutaj skrypt | ||
</code> | </code> | ||
+ | |||
+ | |||
===== Wersja równoległa ===== | ===== Wersja równoległa ===== | ||
<code> | <code> | ||
− | |||
#!/bin/env bash | #!/bin/env bash | ||
# memory requested | # memory requested | ||
Linia 50: | Linia 83: | ||
rm -rf $GAUSS_SCRDIR #cleaning scratch dir | rm -rf $GAUSS_SCRDIR #cleaning scratch dir | ||
− | |||
</code> | </code> |
Wersja z 11:56, 20 gru 2011
Na klastrze Zeus zainstalowano wers
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 w wejściowym pliku definującym obliczenia.
G09.A.02
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
# memory requested
#PBS -l mem=2gb
# no of cpus requested (ppn = procesors/cores per node)
#PBS -l nodes=1:ppn=12
#name of queue
#PBS -q l_infinite
# name of job in PBS
#PBS -N computation_mame
# prepare enviroment for the Gaussian ver. 03 rev. E.01 using Modules package
module add gaussian/g03.E.01
# check whether distributted lustre scratch space is available for temporary files
if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
fi
export GAUSS_SCRDIR=$TMPDIR # def. scratch dir
mkdir -p $GAUSS_SCRDIR # create scratch dir if necessary
cd $PBS_O_WORKDIR # switch to dir from with pbs job was submitted
g03 job.g03.com #run the Gaussian Job
rm -rf $GAUSS_SCRDIR #cleaning scratch dir
tutaj skrypt
Wersja równoległa
#!/bin/env bash
# memory requested
#PBS -l mem=2gb
# no of cpus requested (ppn = procesors/cores per node)
#PBS -l nodes=1:ppn=12
#name of queue
#PBS -q l_infinite
# name of job in PBS
#PBS -N computation_mame
# prepare enviroment for the Gaussian ver. 03 rev. E.01 using Modules package
module add gaussian/g03.E.01
# check whether distributted lustre scratch space is available for temporary files
if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
fi
export GAUSS_SCRDIR=$TMPDIR # def. scratch dir
mkdir -p $GAUSS_SCRDIR # create scratch dir if necessary
cd $PBS_O_WORKDIR # switch to dir from with pbs job was submitted
g03 job.g03.com #run the Gaussian Job
rm -rf $GAUSS_SCRDIR #cleaning scratch dir