ADF
Na klastrze Zeus zainstalowano pakiet ADF w wersjach 2010.02, 2012.01 oraz 2012.01c.
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. Do załadowania domyślnej wersji pakietu służy komenda:
module add adf
Domyślna wersja to 2012.01.
Program obliczeniowy uruchamiany jest poleceniem adf.
Dodatkowo pakiet ADF zawiera wiele programów pomocniczych umożliwiających m.in. podgląd obliczeń w trakcie ich trwania, analizę oraz wizualizację wyników. Programy te uruchamiane są poleceniami: adfcrs, adf2aim, adfdos, adfinput, adflevels, adfmovie, adfnbo, adfoutput, adfprep, adfreport, adfspectra, adftail, adfview.
2010.02
Zmienne środowiskowe ustawia się ładując moduł adf/2010.02
module add adf/2010.02
Przykładowy skrypt
Obliczenia szeregowe
Zadanie ADF będzie się wykonywać na jednym węźle i będzie wykorzystywało 1 procesor.
#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=1:ppn=1
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*4=4GB na zadanie!
#PBS -l pvmem=1gb
##### 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
##### Nazwa grantu uzytego do obliczen
#PBS -A nazwa_grantu
# ustawienie srodowiska dla pakietu ADF w wersji 2010.02
module add adf/2010.02
# ustawienie katalogu na pliki tymczasowe
export SCM_TMPDIR=$TMPDIR
echo "Temporary files stored in" $SCM_TMPDIR
# przejscie do katalogu, z ktorego wywolano skrypt PBS (w ktorym znajduja sie pliki wejsciowe)
cd $PBS_O_WORKDIR
#uruchomienie programu
adf < input.in >& output.log
Oblicznia zrównoleglone
Zadanie ADF będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 2 procesory.
#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=4:ppn=2
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 3GB*4*2=24GB na zadanie!
#PBS -l pvmem=3gb
##### 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
##### Nazwa grantu uzytego do obliczen
#PBS -A nazwa_grantu
# ustawienie srodowiska dla pakietu ADF w wersji 2010.02
module add adf/2010.02
# ustawienie katalogu na pliki tymczasowe
module add scratch
export SCM_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
mkdir -p $SCM_TMPDIR
echo "Temporary files stored in" $SCM_TMPDIR
# przejscie do katalogu, z ktorego wywolano skrypt PBS (w ktorym znajduja sie pliki wejsciowe)
cd $PBS_O_WORKDIR
# zliczenie wykorzystywanych procesorow
np=$PBS_NP
#uruchomienie programu
adf -n $np < input.in >& output.log
2012.01
Zmienne środowiskowe ustawia się ładując moduł adf/2012.01 lub adf
module add adf/2012.01
lub
module add adf
Przykładowy skrypt
Obliczenia szeregowe
Zadanie ADF będzie się wykonywać na jednym węźle i będzie wykorzystywało 1 procesor.
#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=1:ppn=1
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*4=4GB na zadanie!
#PBS -l pvmem=1gb
##### 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
##### Nazwa grantu uzytego do obliczen
#PBS -A nazwa_grantu
# ustawienie srodowiska dla pakietu ADF w wersji 2012.01
module add adf/2012.01
# ustawienie katalogu na pliki tymczasowe
export SCM_TMPDIR=$TMPDIR
echo "Temporary files stored in" $SCM_TMPDIR
# przejscie do katalogu, z ktorego wywolano skrypt PBS (w ktorym znajduja sie pliki wejsciowe)
cd $PBS_O_WORKDIR
#uruchomienie programu
adf < input.in >& output.log
Oblicznia zrównoleglone
Zadanie ADF będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 2 procesory.
#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=4:ppn=2
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 3GB*4*2=24GB na zadanie!
#PBS -l pvmem=3gb
##### 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
##### Nazwa grantu uzytego do obliczen
#PBS -A nazwa_grantu
# ustawienie srodowiska dla pakietu ADF w wersji 2012.01
module add adf/2012.01
# ustawienie katalogu na pliki tymczasowe
module add scratch
export SCM_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
mkdir -p $SCM_TMPDIR
echo "Temporary files stored in" $SCM_TMPDIR
# przejscie do katalogu, z ktorego wywolano skrypt PBS (w ktorym znajduja sie pliki wejsciowe)
cd $PBS_O_WORKDIR
# zliczenie wykorzystywanych procesorow
np=$PBS_NP
#uruchomienie programu
adf -n $np < input.in >& output.log
2012.01c
Zmienne środowiskowe ustawia się ładując moduł adf/2012.01c
module add adf/2012.01c
Przykładowy skrypt
Obliczenia szeregowe
Zadanie ADF będzie się wykonywać na jednym węźle i będzie wykorzystywało 1 procesor.
#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=1:ppn=1
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*4=4GB na zadanie!
#PBS -l pvmem=1gb
##### 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
##### Nazwa grantu uzytego do obliczen
#PBS -A nazwa_grantu
# ustawienie srodowiska dla pakietu ADF w wersji 2012.01c
module add adf/2012.01c
# ustawienie katalogu na pliki tymczasowe
export SCM_TMPDIR=$TMPDIR
echo "Temporary files stored in" $SCM_TMPDIR
# przejscie do katalogu, z ktorego wywolano skrypt PBS (w ktorym znajduja sie pliki wejsciowe)
cd $PBS_O_WORKDIR
#uruchomienie programu
adf < input.in >& output.log
Oblicznia zrównoleglone
Zadanie ADF będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 2 procesory.
#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=4:ppn=2
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 3GB*4*2=24GB na zadanie!
#PBS -l pvmem=3gb
##### 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
##### Nazwa grantu uzytego do obliczen
#PBS -A nazwa_grantu
# ustawienie srodowiska dla pakietu ADF w wersji 2012.01c
module add adf/2012.01c
# ustawienie katalogu na pliki tymczasowe
module add scratch
export SCM_TMPDIR=$SCRATCH/${PBS_JOBID%%.*}
mkdir -p $SCM_TMPDIR
echo "Temporary files stored in" $SCM_TMPDIR
# przejscie do katalogu, z ktorego wywolano skrypt PBS (w ktorym znajduja sie pliki wejsciowe)
cd $PBS_O_WORKDIR
# zliczenie wykorzystywanych procesorow
np=$PBS_NP
#uruchomienie programu
adf -n $np < input.in >& output.log