NWChem

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Wersja z dnia 12:25, 15 cze 2012 autorstwa Maciej (dyskusja | edycje) (Upgrade z 5.1.1. do 6.1 - zmiana nwchem_parallel na nwchem i poprawka skryptów przykładowych)
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.

NWChem

Zmienne środowiskowe ustawiamy ładując moduł nwchem

 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 <<NAZWA>> i <<WERSJA>> 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  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