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

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Skocz do:nawigacja, szukaj
Linia 1: Linia 1:
 
{{DISPLAYTITLE:Abaqus}}
 
{{DISPLAYTITLE:Abaqus}}
Na klastrze [[Zeus]] zainstalowano pakiet Abaqus w wersji 6.10.
+
Na klastrze [[Zeus]] zainstalowano pakiet Abaqus w wersjiach 6.x, 2016, 2017.
  
 
= Informacje ogólne =
 
= 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 [[Zeus:Lustre|Lustre]]. Do załadowania domyślnej wersji pakietu służy komenda:
+
Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze [[Zeus]] służy narzędzie [[Modules]]. Pliki tymczasowe należy tworzyć używając zasobu dyskowego [[Zeus:Lustre|Lustre]]. Do załadowania domyślnej wersji pakietu służy komenda:
  
 
   <code>module add apps/abaqus</code>
 
   <code>module add apps/abaqus</code>
  
Domyślna wersja to '''6.12'''.
+
Domyślna wersja to '''2017'''.
  
 
Program uruchamiany jest poleceniem <tt>abaqus</tt>.
 
Program uruchamiany jest poleceniem <tt>abaqus</tt>.
Linia 16: Linia 16:
 
Przegląd funkcji i poleceń dostępny zostanie wyświetlony po wykonaniu komendy <tt>abaqus help</tt>.
 
Przegląd funkcji i poleceń dostępny zostanie wyświetlony po wykonaniu komendy <tt>abaqus help</tt>.
  
=6.10=
+
=Wersja Abaqusa=
Zmienne środowiskowe ustawia się ładując moduł <tt>apps/abaqus/6.10</tt>
+
Zmienne środowiskowe ustawia się ładując moduł <tt>apps/abaqus/''ver''</tt> gdzie ''ver'' to wersja Abaqusa (10, 11, 12, 13, 14, 2016 lub 2017)
  
   <code>module add apps/abaqus/6.10</code>
+
   <code>module add apps/abaqus/''ver''</code>
  
 
==== Przykładowy skrypt ====
 
==== Przykładowy skrypt ====
Linia 27: Linia 27:
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
#!/bin/env bash
+
#!/bin/bash -l
##### Maksymalnie 12 rdzeni na wezle
+
## Nazwa zlecenia
#PBS -l nodes=1:ppn=4:intel
+
#SBATCH -J <nazwa_zadania>
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*4=4GB na zadanie!
+
## Liczba alokowanych węzłów
#PBS -l pmem=1gb
+
#SBATCH -N 1
##### Maksymalny czas obliczen 1 godzina
+
## Liczba zadań per węzeł (domyślnie jest to liczba alokowanych rdzeni na węźle)
#PBS -l walltime=1:00:00
+
#SBATCH --ntasks-per-node=4
##### Nazwa kolejki
+
## Ilość pamięci przypadającej na jeden rdzeń obliczeniowy (domyślnie 5GB na rdzeń)
#PBS -q l_short
+
#SBATCH --mem-per-cpu=1GB
##### Nazwa zadania widoczna w systemie kolejkowym
+
## Maksymalny czas trwania zlecenia (format HH:MM:SS)
#PBS -N nazwa_obliczen
+
#SBATCH --time=01:00:00  
##### Nazwa grantu uzytego do obliczen
+
## Nazwa grantu do rozliczenia zużycia zasobów
#PBS -A nazwa_grantu
+
#SBATCH -A <grant_id>
 +
## Specyfikacja partycji
 +
#SBATCH -p plgrid-testing
 +
## Plik ze standardowym wyjściem
 +
#SBATCH --output="output.out"
 +
## Plik ze standardowym wyjściem błędów
 +
#SBATCH --error="error.err"
 +
 +
## przejscie do katalogu z ktorego wywolany zostal sbatch
 +
cd $SLURM_SUBMIT_DIR
  
# ustawienie sciezek do pakietu Abaqus ver 6.10
+
input=<plik_wejsciowy>
module add apps/abaqus/6.10
+
np=$NTASKS
 
+
srun /bin/hostname
# przejscie do katalogu, z ktorego wywolano skrypt PBS
+
module load plgrid/apps/abaqus/2017
cd $PBS_O_WORKDIR
+
abaqus j=$input cpus=$np mp_mode=threads interactive interactive  
 
 
# zliczenie zadanych procesorow
 
np=$PBS_NP
 
 
 
# ustawianie dostepnej pamieci na wezle obliczeniowym
 
echo 'memory = "4 gb"' > abaqus_v6.env 
 
 
 
input=plik_z_danymi_wejsciowymi
 
 
 
abaqus job=$input cpus=$np mp_mode=threads interactive
 
 
</syntaxhighlight>
 
</syntaxhighlight>
  
===== Oblicznia w trybie MPI =====
+
===== Obliczenia w trybie MPI =====
  
 
Zadanie Abaqusa będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 2 procesory.
 
Zadanie Abaqusa będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 2 procesory.
  
 
<syntaxhighlight lang="bash">
 
<syntaxhighlight lang="bash">
#!/bin/env bash
+
#!/bin/bash -l
##### Maksymalnie 12 rdzeni na wezle
+
## Nazwa zlecenia
#PBS -l nodes=1:ppn=12:intel
+
#SBATCH -J <nazwa_zadania>
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*12=12GB na zadanie!
+
## Liczba alokowanych węzłów
#PBS -l pmem=1gb
+
#SBATCH -N 4
##### Maksymalny czas obliczen 1 godzina
+
## Liczba zadań per węzeł (domyślnie jest to liczba alokowanych rdzeni na węźle)
#PBS -l walltime=1:00:00
+
#SBATCH --ntasks-per-node=2
##### Nazwa kolejki
+
## Ilość pamięci przypadającej na jeden rdzeń obliczeniowy (domyślnie 5GB na rdzeń)
#PBS -q l_short
+
#SBATCH --mem-per-cpu=1GB
##### Nazwa zadania widoczna w systemie kolejkowym
+
## Maksymalny czas trwania zlecenia (format HH:MM:SS)
#PBS -N nazwa_obliczen
+
#SBATCH --time=01:00:00  
##### Nazwa grantu uzytego do obliczen
+
## Nazwa grantu do rozliczenia zużycia zasobów
#PBS -A nazwa_grantu
+
#SBATCH -A <grant_id>
 
+
## Specyfikacja partycji
# ustawienie sciezek do pakietu Abaqus ver 6.10
+
#SBATCH -p plgrid-testing
module add apps/abaqus/6.10
+
## Plik ze standardowym wyjściem
 
+
#SBATCH --output="output.out"
# przejscie do katalogu, z ktorego wywolano skrypt PBS
+
## Plik ze standardowym wyjściem błędów
cd $PBS_O_WORKDIR
+
#SBATCH --error="error.err"
 
+
# ustawianie dostepnej pamieci na wezle obliczeniowym
+
## przejscie do katalogu z ktorego wywolany zostal sbatch
echo 'memory = "12 gb"' > abaqus_v6.env 
+
cd $SLURM_SUBMIT_DIR
 
 
# zliczenie zadanych procesorow
 
np=$PBS_NP
 
 
 
input=plik_z_danymi_wejsciowymi
 
  
abaqus job=$input cpus=$np standard_parallel=all mp_mode=mpi interactive
+
input=<plik_wejsciowy>
 +
np=$NTASKS
 +
srun /bin/hostname
 +
module load plgrid/apps/abaqus/2017
 +
abaqus j=$input cpus=$np mp_mode=mpi interactive  
 
</syntaxhighlight>
 
</syntaxhighlight>
  

Wersja z 10:53, 21 lut 2018

Na klastrze Zeus zainstalowano pakiet Abaqus w wersjiach 6.x, 2016, 2017.

Informacje ogólne

Do ustawiania środowiska uruchomieniowego oprogramowania na klastrze Zeus służy narzędzie Modules. Pliki tymczasowe należy tworzyć używając zasobu dyskowego Lustre. Do załadowania domyślnej wersji pakietu służy komenda:

 module add apps/abaqus

Domyślna wersja to 2017.

Program uruchamiany jest poleceniem abaqus.

Graficzne środowisko użytkownika uruchamiane jest poleceniem abaqus cae (Uwaga: należy pamiętać o przekierowaniu wyświetlania XWidnows).

Przegląd funkcji i poleceń dostępny zostanie wyświetlony po wykonaniu komendy abaqus help.

Wersja Abaqusa

Zmienne środowiskowe ustawia się ładując moduł apps/abaqus/ver gdzie ver to wersja Abaqusa (10, 11, 12, 13, 14, 2016 lub 2017)

 module add apps/abaqus/ver

Przykładowy skrypt

Obliczenia w trybie wątków ze współdzieloną pamięcią

Zadanie Abaqusa będzie się wykonywać na jednym węźle i będzie wykorzystywało 4 procesory.

#!/bin/bash -l
## Nazwa zlecenia
#SBATCH -J <nazwa_zadania>
## Liczba alokowanych węzłów
#SBATCH -N 1
## Liczba zadań per węzeł (domyślnie jest to liczba alokowanych rdzeni na węźle)
#SBATCH --ntasks-per-node=4
## Ilość pamięci przypadającej na jeden rdzeń obliczeniowy (domyślnie 5GB na rdzeń)
#SBATCH --mem-per-cpu=1GB
## Maksymalny czas trwania zlecenia (format HH:MM:SS)
#SBATCH --time=01:00:00 
## Nazwa grantu do rozliczenia zużycia zasobów
#SBATCH -A <grant_id>
## Specyfikacja partycji
#SBATCH -p plgrid-testing
## Plik ze standardowym wyjściem
#SBATCH --output="output.out"
## Plik ze standardowym wyjściem błędów
#SBATCH --error="error.err"
 
## przejscie do katalogu z ktorego wywolany zostal sbatch
cd $SLURM_SUBMIT_DIR

input=<plik_wejsciowy> 
np=$NTASKS
srun /bin/hostname
module load plgrid/apps/abaqus/2017
abaqus j=$input cpus=$np mp_mode=threads interactive interactive
Obliczenia w trybie MPI

Zadanie Abaqusa będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 2 procesory.

#!/bin/bash -l
## Nazwa zlecenia
#SBATCH -J <nazwa_zadania>
## Liczba alokowanych węzłów
#SBATCH -N 4
## Liczba zadań per węzeł (domyślnie jest to liczba alokowanych rdzeni na węźle)
#SBATCH --ntasks-per-node=2
## Ilość pamięci przypadającej na jeden rdzeń obliczeniowy (domyślnie 5GB na rdzeń)
#SBATCH --mem-per-cpu=1GB
## Maksymalny czas trwania zlecenia (format HH:MM:SS)
#SBATCH --time=01:00:00 
## Nazwa grantu do rozliczenia zużycia zasobów
#SBATCH -A <grant_id>
## Specyfikacja partycji
#SBATCH -p plgrid-testing
## Plik ze standardowym wyjściem
#SBATCH --output="output.out"
## Plik ze standardowym wyjściem błędów
#SBATCH --error="error.err"
 
## przejscie do katalogu z ktorego wywolany zostal sbatch
cd $SLURM_SUBMIT_DIR

input=<plik_wejsciowy> 
np=$NTASKS
srun /bin/hostname
module load plgrid/apps/abaqus/2017
abaqus j=$input cpus=$np mp_mode=mpi interactive

6.12

Zmienne środowiskowe ustawia się ładując moduł apps/abaqus/6.12

 module add apps/abaqus/6.12

Przykładowy skrypt

Obliczenia w trybie wątków ze współdzieloną pamięcią

Zadanie Abaqusa będzie się wykonywać na jednym węźle i będzie wykorzystywało 4 procesory.

#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=1:ppn=4:intel
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*1*4=4GB na zadanie!
#PBS -l pmem=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 sciezek do pakietu Abaqus ver 6.12
module add apps/abaqus/6.12

# przejscie do katalogu, z ktorego wywolano skrypt PBS
cd $PBS_O_WORKDIR

# zliczenie zadanych procesorow
np=$PBS_NP

# ustawianie dostepnej pamieci na wezle obliczeniowym
echo 'memory = "4 gb"' > abaqus_v6.env  

input=plik_z_danymi_wejsciowymi

abaqus job=$input cpus=$np mp_mode=threads interactive
Oblicznia w trybie MPI

Zadanie Abaqusa będzie się wykonywać na 4 węzłach i na każdym węźle będzie wykorzystywało 12 procesorów.

#!/bin/env bash
##### Maksymalnie 12 rdzeni na wezle
#PBS -l nodes=4:ppn=12:intel
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 1GB*4*12=48GB na zadanie!
#PBS -l pmem=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 sciezek do pakietu Abaqus ver 6.12
module add apps/abaqus/6.12

# przejscie do katalogu, z ktorego wywolano skrypt PBS
cd $PBS_O_WORKDIR

# ustawianie dostepnej pamieci na wezle obliczeniowym
echo 'memory = "12 gb"' > abaqus_v6.env  

# zliczenie zadanych procesorow
np=$PBS_NP

input=plik_z_danymi_wejsciowymi 

abaqus job=$input cpus=$np standard_parallel=all mp_mode=mpi interactive