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

Z Komputery Dużej Mocy w ACK CYFRONET AGH
Skocz do:nawigacja, szukaj
 
(Nie pokazano 27 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 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>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 abaqus/6.10</code>
+
   <code>module add apps/abaqus/''ver''</code>
  
 
+
==== Przykładowe skrypty ====
==== Przykładowy skrypt ====
 
 
===== Obliczenia w trybie wątków ze współdzieloną pamięcią =====
 
===== Obliczenia w trybie wątków ze współdzieloną pamięcią =====
  
Linia 28: 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 do rozliczenia zużycia zasobów
# ustawienie sciezek do pakietu Abaqus
+
#SBATCH -A <grant_id>
module load abaqus
+
## Specyfikacja partycji
 
+
#SBATCH -p plgrid-testing
# przejscie do katalogu, z ktorego wywolano skrypt PBS
+
## Plik ze standardowym wyjściem
cd $PBS_O_WORKDIR
+
#SBATCH --output="output.out"
 
+
## Plik ze standardowym wyjściem błędów
# zliczenie zadanych procesorow
+
#SBATCH --error="error.err"
np=$(cat $PBS_NODEFILE | wc -l)
+
 
+
## przejscie do katalogu z ktorego wywolany zostal sbatch
# ustawianie dostepnej pamieci na wezle obliczeniowym
+
cd $SLURM_SUBMIT_DIR
echo 'memory = "4 gb"' > abaqus_v6.env 
 
 
 
input=plik_z_danymi_wejsciowymi
 
  
abaqus job=$input cpus=$np mp_mode=threads interactive
+
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  
 
</syntaxhighlight>
 
</syntaxhighlight>
  
 
+
===== Obliczenia w trybie MPI =====
===== 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.
 
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)
 
+
#SBATCH --time=01:00:00  
# ustawienie sciezek do pakietu Abaqus
+
## Nazwa grantu do rozliczenia zużycia zasobów
module load abaqus
+
#SBATCH -A <grant_id>
 
+
## Specyfikacja partycji
# przejscie do katalogu, z ktorego wywolano skrypt PBS
+
#SBATCH -p plgrid-testing
cd $PBS_O_WORKDIR
+
## Plik ze standardowym wyjściem
 
+
#SBATCH --output="output.out"
# ustawianie dostepnej pamieci na wezle obliczeniowym
+
## Plik ze standardowym wyjściem błędów
echo 'memory = "6 gb"' > abaqus_v6.env 
+
#SBATCH --error="error.err"
echo "mp_mpirun_path = {HP:'/software/local/Abaqus/6.10-2/External/mpi/hpmpi-2.3/bin/mpirun'}" >> abaqus_v6.env
+
 
+
## przejscie do katalogu z którego wywołany został sbatch
# zliczenie zadanych procesorow
+
cd $SLURM_SUBMIT_DIR
np=$(cat $PBS_NODEFILE | wc -l)
 
 
 
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