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

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Skocz do:nawigacja, szukaj
 
(Nie pokazano 21 wersji utworzonych przez 4 użytkowników)
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 katalogu $SCRATCH. 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.10'''.
+
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=
+
=Wersje 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ładowe skrypty ====
 
===== Obliczenia w trybie wątków ze współdzieloną pamięcią =====
 
===== Obliczenia w trybie wątków ze współdzieloną pamięcią =====
  
Linia 27: Linia 28:
  
 
<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
+
#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 pvmem=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=$SLURM_NTASKS
 
+
srun /bin/hostname
# przejscie do katalogu, z ktorego wywolano skrypt PBS
+
module load plgrid/apps/abaqus/<ver>
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=4:ppn=2
+
#SBATCH -J <nazwa_zadania>
##### Maksymalna pamiec przydzielona na jeden rdzen! Czyli sumarycznie 3GB*4*2=24GB na zadanie!
+
## Liczba alokowanych węzłów
#PBS -l pvmem=3gb
+
#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 którego wywołany został sbatch
echo 'memory = "6 gb"' > abaqus_v6.env 
+
cd $SLURM_SUBMIT_DIR
echo "mp_mpirun_path = {HP:'/software/local/Abaqus/6.10-2/External/mpi/hpmpi-2.3/bin/mpirun'}" >> 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
 
</syntaxhighlight>
 
 
 
=6.12=
 
Zmienne środowiskowe ustawia się ładując moduł <tt>apps/abaqus/6.12</tt>
 
 
 
  <code>module add apps/abaqus/6.12</code>
 
 
 
==== 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.
 
 
 
<syntaxhighlight lang="bash">
 
#!/bin/env bash
 
##### Maksymalnie 12 rdzeni na wezle
 
#PBS -l nodes=1:ppn=4
 
##### 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
 
</syntaxhighlight>
 
 
 
===== 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 2 procesory.
 
 
 
<syntaxhighlight lang="bash">
 
#!/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 pmem=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 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 = "6 gb"' > abaqus_v6.env 
 
echo "mp_mpirun_path = {HP:'/software/local/Abaqus/6.10-2/External/mpi/hpmpi-2.3/bin/mpirun'}" >> 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
+
input=<plik_wejsciowy>
 +
np=$SLURM_NTASKS
 +
srun /bin/hostname
 +
module load apps/abaqus/<ver>
 +
abaqus j=$input cpus=$np mp_mode=mpi interactive  
 
</syntaxhighlight>
 
</syntaxhighlight>

Aktualna wersja na dzień 12:29, 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 katalogu $SCRATCH. 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.

Wersje 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ładowe skrypty

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=$SLURM_NTASKS
srun /bin/hostname
module load plgrid/apps/abaqus/<ver>
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 którego wywołany został sbatch
cd $SLURM_SUBMIT_DIR

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