NWChem

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Wersja z dnia 13:48, 15 cze 2012 autorstwa Noga (dyskusja | edycje) (Dodanie wersji 6.1)
Skocz do:nawigacja, szukaj

Wersje oprogramowania zainstalowane na klastrze Zeus.

Informacje ogólne

Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze Zeus służy narzędzie Modules.

6.1

Zmienne środowiskowe ustawiamy ładując moduł nwchem (lub nwchem/6.1)

 module add nwchem

Program uruchamiamy poleceniem

nwchem <plik wejsciowy> 

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 NWChem w wersji 6.1 przy uzyciu Modules
module add nwchem

# 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

# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR

# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR

# uruchomienie zadania
nwchem  <opcje, pliki> 

# Zachowanie wynikow dzialania programu
# cp wazny_plik* $PBS_O_WORKDIR

#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR


Wersja równoległa
#!/bin/env bash
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*14*4=64GB na zadanie!
#PBS -l pvmem=1gb
##### Maksymalnie 64 rdzenie na 16 wezlach, po 4 rdzenie na kazdym z siecia Infiniband
#PBS -l nodes=16:ppn=4:infiniband
##### 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 NWChem w wersji 6.1 przy uzyciu Modules
module add nwchem

# 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

# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR

# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR

# uruchomienie zadania po Infiniband z wykluczeniem TCP i zapisanie rezultatow do pliku wyniki.out.
# Pliki wejściowe powinny być podawane bez rozszerzenia .nw

mpirun --mca btl ^tcp nwchem  <opcje, pliki> >> wyniki.out
# Zachowanie wynikow dzialania programu
#cp wazny_plik* $PBS_O_WORKDIR

#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR

5.1.1

Zmienne środowiskowe pakietu NWChem w wesji 5.1.1 ustawiamy ładując moduł nwchem/5.1.1

 module add nwchem

Program uruchamiamy poleceniem

nwchem <plik wejsciowy> 

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 NWChem w wersji 5.1.1 przy uzyciu Modules
module add nwchem/5.1.1

# 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

# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR

# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR

# uruchomienie zadania
nwchem  <opcje, pliki> 

# Zachowanie wynikow dzialania programu
# cp wazny_plik* $PBS_O_WORKDIR

#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR


Wersja równoległa
#!/bin/env bash
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*14*4=64GB na zadanie!
#PBS -l pvmem=1gb
##### Maksymalnie 64 rdzenie na 16 wezlach, po 4 rdzenie na kazdym z siecia Infiniband
#PBS -l nodes=16:ppn=4:infiniband
##### 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 NWChem w wersji 5.1.1 przy uzyciu Modules
module add nwchem/5.1.1

# 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

# Skopiowanie plikow z katalogu, w ktorym uruchamiano zadanie do katalogu tymczasowego
cp $PBS_O_WORKDIR/* $JOB_TMPDIR

# Przejscie do katalogu gdzie beda wykonywane obliczenia
cd $JOB_TMPDIR

# uruchomienie zadania po Infiniband z wykluczeniem TCP i zapisanie rezultatow do pliku wyniki.out.
# Pliki wejściowe powinny być podawane bez rozszerzenia .nw

mpirun --mca btl ^tcp nwchem  <opcje, pliki> >> wyniki.out
# Zachowanie wynikow dzialania programu
#cp wazny_plik* $PBS_O_WORKDIR

#usuniecie plikow tymczasowych
rm -rf $JOB_TMPDIR