Zeus:Gaussian: Różnice pomiędzy wersjami

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Skocz do:nawigacja, szukaj
Linia 1: Linia 1:
 
{{DISPLAYTITLE:Gaussian}}
 
{{DISPLAYTITLE:Gaussian}}
Na klastrze [[Zeus]] zainstalowano wers
+
Na klastrze [[Zeus]] zainstalowano pakiet Gaussian09 w wersji A.02 oraz Gaussian03 w wersji E.01.
  
 
= Informacje ogólne =
 
= Informacje ogólne =
Linia 7: Linia 7:
  
 
'''Uwaga:''' Liczbę procesorów specyfikujemy podając ''%NProcShared=y'' w wejściowym pliku definującym obliczenia oraz podając flagę <tt>-l  nodes=1:ppn=y</tt> dla systemu kolejkowego (<tt>y</tt> - liczba rdzeni obliczeniowych).
 
'''Uwaga:''' Liczbę procesorów specyfikujemy podając ''%NProcShared=y'' w wejściowym pliku definującym obliczenia oraz podając flagę <tt>-l  nodes=1:ppn=y</tt> dla systemu kolejkowego (<tt>y</tt> - liczba rdzeni obliczeniowych).
 +
 
=G09.A.02=
 
=G09.A.02=
 +
Zmienne środowiskowe ustawiamy ładując moduł <tt>gaussian/g09.A.02</tt>
 +
 +
  <code>module add gaussian/g09.A.02</code>
 +
 +
Program uruchamiamy poleceniem <tt>g09</tt>
 +
 +
==== Przykładowy skrypt ====
 +
===== Wersja szeregowa =====
 +
 +
<syntaxhighlight lang="bash">
 +
  #!/bin/env bash
 +
  #PBS -l mem=2gb
 +
  #PBS -l nodes=1:ppn=1
 +
  #PBS -q l_short
 +
  #PBS -N nazwa_obliczen
 +
 
 +
  # ustawianie zmiennych srodowiskowych dla Gaussiana wersji. 09 rev. A.02 przy uzyciu Modules
 +
  module add gaussian/g09.A.02
 +
 
 +
  # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
 +
  if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
 +
    export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
 +
  fi
 +
 
 +
  # ustawienie sciezki na pliki tymczasowe
 +
  export GAUSS_SCRDIR=$TMPDIR
 +
 
 +
  # utworzenie katalogu na pliku tymczasowe
 +
  mkdir -p $GAUSS_SCRDIR
 +
 
 +
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
 +
  cd $PBS_O_WORKDIR
 +
 +
  #uruchomienie zadania
 +
  g09 job.com
 +
 
 +
  #usuniecie plikow tymczasowych
 +
  rm -rf $GAUSS_SCRDIR
 +
</syntaxhighlight>
 +
 +
===== Wersja równoległa =====
 +
<syntaxhighlight lang="bash">
 +
  #!/bin/env bash
 +
  #PBS -l mem=2gb
 +
  #PBS -l nodes=1:ppn=12
 +
  #PBS -q l_short
 +
  #PBS -N nazwa_obliczen
 +
 
 +
  # ustawianie zmiennych srodowiskowych dla Gaussiana wersji 09 rev. A.02 przy uzyciu Modules
 +
  module add gaussian/g09.A.02
 +
 
 +
  # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
 +
  if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
 +
    export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
 +
  fi
 +
 
 +
  # ustawienie sciezki na pliki tymczasowe
 +
  export GAUSS_SCRDIR=$TMPDIR
 +
 
 +
  # utworzenie katalogu na pliku tymczasowe
 +
  mkdir -p $GAUSS_SCRDIR
 +
 
 +
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
 +
  cd $PBS_O_WORKDIR
 +
 +
  #uruchomienie zadania
 +
  g09 job.com
 +
 
 +
  #usuniecie plikow tymczasowych
 +
  rm -rf $GAUSS_SCRDIR
 +
</syntaxhighlight>
 +
  
 
= G03.E.01=
 
= G03.E.01=
Linia 21: Linia 94:
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
 
   #!/bin/env bash
 
   #!/bin/env bash
  # memory requested
 
 
   #PBS -l mem=2gb
 
   #PBS -l mem=2gb
  # no of cpus requested (ppn = procesors/cores per node)
+
   #PBS -l nodes=1:ppn=1
   #PBS -l nodes=1:ppn=12
+
   #PBS -q l_short
  #name of queue     
+
   #PBS -N nazwa_obliczen
   #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
+
   # ustawianie zmiennych srodowiskowych dla Gaussiana wersji 03 rev. E.01 przy uzyciu Modules
 
   module add gaussian/g03.E.01
 
   module add gaussian/g03.E.01
 
    
 
    
   # check whether distributted lustre scratch space is available for temporary files
+
   # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
 
   if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
 
   if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
 
     export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
 
     export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
 
   fi
 
   fi
 
    
 
    
   export GAUSS_SCRDIR=$TMPDIR   # def. scratch dir
+
  # ustawienie sciezki na pliki tymczasowe
 +
   export GAUSS_SCRDIR=$TMPDIR
 
    
 
    
   mkdir -p $GAUSS_SCRDIR   # create scratch dir if necessary
+
  # utworzenie katalogu na pliku tymczasowe
 +
   mkdir -p $GAUSS_SCRDIR
 
    
 
    
   cd $PBS_O_WORKDIR # switch to dir from with pbs job was submitted
+
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
   g03 job.g03.com #run the Gaussian Job
+
   cd $PBS_O_WORKDIR
 +
 
 +
  #uruchomienie zadania
 +
   g03 job.com
 
    
 
    
   rm -rf $GAUSS_SCRDIR   #cleaning scratch dir
+
  #usuniecie plikow tymczasowych
 
+
   rm -rf $GAUSS_SCRDIR
 
 
 
</syntaxhighlight>
 
</syntaxhighlight>
 
<code>
 
  tutaj skrypt
 
</code>
 
 
  
 
===== Wersja równoległa =====
 
===== Wersja równoległa =====
<code>
+
<syntaxhighlight lang="bash">
 
   #!/bin/env bash
 
   #!/bin/env bash
  # memory requested
 
 
   #PBS -l mem=2gb
 
   #PBS -l mem=2gb
  # no of cpus requested (ppn = procesors/cores per node)
 
 
   #PBS -l nodes=1:ppn=12
 
   #PBS -l nodes=1:ppn=12
  #name of queue     
+
   #PBS -q l_short
   #PBS -q l_infinite
+
   #PBS -N nazwa_obliczen
  # name of job in PBS
 
   #PBS -N computation_mame
 
 
    
 
    
   # prepare enviroment for the Gaussian ver. 03 rev. E.01 using Modules package
+
   # ustawianie zmiennych srodowiskowych dla Gaussiana wersji 03 rev. E.01 przy uzyciu Modules
 
   module add gaussian/g03.E.01
 
   module add gaussian/g03.E.01
 
    
 
    
   # check whether distributted lustre scratch space is available for temporary files
+
   # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
 
   if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
 
   if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
 
     export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
 
     export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
 
   fi
 
   fi
 
    
 
    
   export GAUSS_SCRDIR=$TMPDIR   # def. scratch dir
+
  # ustawienie sciezki na pliki tymczasowe
 +
   export GAUSS_SCRDIR=$TMPDIR
 
    
 
    
   mkdir -p $GAUSS_SCRDIR   # create scratch dir if necessary
+
  # utworzenie katalogu na pliku tymczasowe
 +
   mkdir -p $GAUSS_SCRDIR
 
    
 
    
   cd $PBS_O_WORKDIR # switch to dir from with pbs job was submitted
+
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
   g03 job.g03.com #run the Gaussian Job
+
   cd $PBS_O_WORKDIR
 +
 
 +
  #uruchomienie zadania
 +
   g03 job.com
 
    
 
    
   rm -rf $GAUSS_SCRDIR   #cleaning scratch dir
+
  #usuniecie plikow tymczasowych
</code>
+
   rm -rf $GAUSS_SCRDIR
 +
</syntaxhighlight>

Wersja z 05:37, 13 sty 2012

Na klastrze Zeus zainstalowano pakiet Gaussian09 w wersji A.02 oraz Gaussian03 w wersji E.01.

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
  #PBS -l mem=2gb
  #PBS -l nodes=1:ppn=1
  #PBS -q l_short
  #PBS -N nazwa_obliczen
  
  # ustawianie zmiennych srodowiskowych dla Gaussiana wersji. 09 rev. A.02 przy uzyciu Modules
  module add gaussian/g09.A.02
  
  # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
  if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
    export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
  fi
  
  # ustawienie sciezki na pliki tymczasowe
  export GAUSS_SCRDIR=$TMPDIR
  
  # utworzenie katalogu na pliku tymczasowe
  mkdir -p $GAUSS_SCRDIR
  
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
  cd $PBS_O_WORKDIR

  #uruchomienie zadania
  g09 job.com
  
  #usuniecie plikow tymczasowych
  rm -rf $GAUSS_SCRDIR
Wersja równoległa
  #!/bin/env bash
  #PBS -l mem=2gb
  #PBS -l nodes=1:ppn=12
  #PBS -q l_short
  #PBS -N nazwa_obliczen
  
  # ustawianie zmiennych srodowiskowych dla Gaussiana wersji 09 rev. A.02 przy uzyciu Modules
  module add gaussian/g09.A.02
  
  # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
  if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
    export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
  fi
  
  # ustawienie sciezki na pliki tymczasowe
  export GAUSS_SCRDIR=$TMPDIR
  
  # utworzenie katalogu na pliku tymczasowe
  mkdir -p $GAUSS_SCRDIR
  
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
  cd $PBS_O_WORKDIR

  #uruchomienie zadania
  g09 job.com
  
  #usuniecie plikow tymczasowych
  rm -rf $GAUSS_SCRDIR


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
  #PBS -l mem=2gb
  #PBS -l nodes=1:ppn=1
  #PBS -q l_short
  #PBS -N nazwa_obliczen
  
  # ustawianie zmiennych srodowiskowych dla Gaussiana wersji 03 rev. E.01 przy uzyciu Modules
  module add gaussian/g03.E.01
  
  # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
  if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
    export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
  fi
  
  # ustawienie sciezki na pliki tymczasowe
  export GAUSS_SCRDIR=$TMPDIR
  
  # utworzenie katalogu na pliku tymczasowe
  mkdir -p $GAUSS_SCRDIR
  
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
  cd $PBS_O_WORKDIR

  #uruchomienie zadania
  g03 job.com
  
  #usuniecie plikow tymczasowych
  rm -rf $GAUSS_SCRDIR
Wersja równoległa
  #!/bin/env bash
  #PBS -l mem=2gb
  #PBS -l nodes=1:ppn=12
  #PBS -q l_short
  #PBS -N nazwa_obliczen
  
  # ustawianie zmiennych srodowiskowych dla Gaussiana wersji 03 rev. E.01 przy uzyciu Modules
  module add gaussian/g03.E.01
  
  # sprawdzenie czy dostepny jest rozproszony zasob dyskowy Lustre
  if [ -d /mnt/lustre/scratch/people/$USER/ ]; then
    export TMPDIR=/mnt/lustre/scratch/people/$USER/${PBS_JOBID%%.*}
  fi
  
  # ustawienie sciezki na pliki tymczasowe
  export GAUSS_SCRDIR=$TMPDIR
  
  # utworzenie katalogu na pliku tymczasowe
  mkdir -p $GAUSS_SCRDIR
  
  # przejscie do sciezki, z ktorej wyslano zadanie do systemu kolejkowego
  cd $PBS_O_WORKDIR

  #uruchomienie zadania
  g03 job.com
  
  #usuniecie plikow tymczasowych
  rm -rf $GAUSS_SCRDIR