Prometheus:Podstawy
Spis treści
Logowanie
Dostęp do klastra Prometheus realizowany jest za pośrednictwem maszyny dostępowej:
login01.pro.cyfronet.pl
Możliwe jest także użycie dłuższego aliasu login01.prometheus.cyfronet.pl (a także, zamiast cyfronet.pl, domeny cyf-kr.edu.pl).
Logowanie na maszynę dostępową możliwe jest poprzez SSH.
Aktualnie logowanie jest ograniczone i możliwe jedynie pośrednio z maszyny dostępowej Zeusa.
Dostępne oprogramowanie
Opis dostępnego oprogramowania znajduje się tutaj.
Dostęp do oprogramowania realizoway jest za pomocą narzędzia Lmod.
Partycje
Odpowiednikiem kolejek PBS dla systemu SLURM są partycje. Prometheus posiada aktualnie następujące partycje:
Nazwa partycji | Zasoby | Maksymalny czas trwania zadania |
Informacje |
---|---|---|---|
red | 576 węzłów (13824 CPU) | Inf | Partycja domyślna, pierwsza wyspa |
green | 576 węzłów (13824 CPU) | Inf | Druga wyspa |
blue | 576 węzłów (13824 CPU) | Inf | Trzecia wyspa |
plgrid | 288 węzłów (6912 CPU) | 72:00:00 | Partycja dla infrastruktury PL-Grid (aktualnie jedyna dostępna dla użytkowników) |
all | 1728 węzłów (41472 CPU) | Inf | Zbiór wszystkich węzłów Prometheusa |
Dokładne informacje na temat partycji można otrzymać przy pomocy polecenia
scontrol show partition [<nazwa_partycji>]
Uwagi:
- Aktualnie dla użytkowników udostępniona jest wyłącznie partycja plgrid
- Zadania nieprzekraczające rozmiaru wyspy obliczeniowej powinny być uruchamiane w ramach partycji wyspy. Zlecanie obliczeń w partycji all powoduje potencjalne rozbicie zadania pomiędzy wyspami obliczeniowymi, co skutkuje obniżeniem efektywności obliczeń.
Uruchamianie zadań
Zlecanie zadań na klastrze Prometheus odbywa się poprzez system kolejkowy SLURM.
Zadanie może być zlecone zarówno w trybie wsadowym jak i w trybie interaktywnym.
Tryb wsadowy
Do zlecania zadania w trybie wsadowym służy komenda sbatch.
Użycie komendy:
sbatch skrypt.sh
Przykładowy skrypt:
---
#!/bin/bash -l
## Nazwa zlecenia
#SBATCH -J ADFtestjob
## Liczba węzłów
#SBATCH -N 2
## Maksymalna liczba zadań w zleceniu (domyślnie ilość rdzeni)
#SBATCH -n 48
## Ilość zadań na węzeł
#SBATCH --ntasks-per-node=24
## Maksymalna ilość zużytej pamięci na węzeł (w MB)
#SBATCH --mem 24000
## Maksymalny czas trwania zlecenia
#SBATCH --time=20:00:00
## Nazwa grantu do rozliczenia zużycia zasobów
#SBATCH -A testgrant
## Specyfikacja partycji
#SBATCH -p blue
## Plik ze standardowym wyjściem
#SBATCH --output="adf.out"
## Plik ze standardowym wyjściem błędów
#SBATCH --error="adf.err"
## Typ powiadomień e-mail
#SBATCH --mail-type=ALL
## E-mail na który wysłać powiadomienia
#SBATCH --mail-user=user@example.com
## przejscie do katalogu z ktorego wywolany zostal sbatch
cd $SLURM_SUBMIT_DIR
srun /bin/hostname
module load apps/adf/2014.07
adf input.adf
---
Tryb interaktywny
Do zlecania zadań w trybie interaktywnym z powłoką służy komenda (przykład):
srun -p plgrid -N 2 --ntasks-per-node=24 -n 48 -A grant_id --pty /bin/bash -l
Powyższa komenda uruchomi zadanie na 2 węzłach i 48 rdzeniach (24 rdzenie na węzeł).
Samo polecenie srun odpowiada za uruchomienie komendy w ramach zaalokowanych zasobów.
Jednak w przypadku, gdy zasoby nie zostały wcześniej zaalokowane, komenda ta uprzednio dokonuje ich rezerwacji tuż przed uruchomieniem obliczeń.
Uwaga: Wszelkie informacje na temat komend SLURMa można znaleźć w manualu, np.: man sbatch
Monitorowanie kolejek, partycji, węzłów, zadań i zasobów
- statystyki dla uruchomionych zadań użytkownika
pro-jobs
#Uwaga: statystyki dla aktualnie uruchomionych zadań nie zawsze są dokładne
- statystyki dla zakończonych zadań użytkownika
pro-jobs-history
- lista aktualnie zakolejkowanych/uruchomionych zadań
squeue
- szczegóły zadania
scontrol show job [<ID_zadania>]
- zużycie zasobów w ramach kroków (step) działającego zadania
sstat -a -j ID_zadania/ID_zadania.batch
- zużycie zasobów zakończonego już zadania/kroku
sacct
- właściwości partycji
scontrol show partition [<nazwa_partycji>]
- lista węzłów
sinfo
- właściwości węzła
scontrol show node [<nazwa_węzła>]
Zasady obowiązujące na klastrze Prometheus
- obliczenia wykonywane na maszynie dostępowej będą usuwane bez ostrzeżenia
- obliczenia wykraczające poza zakres deklarowanego tematu badań zużywające znaczną część zasobów klastra będą usuwane bez ostrzeżenia
- W celu skompilowania programu proszę użyć polecenia:
srun -p plgrid -A grant_id -n 1 --pty /bin/bash -l
Polecenie to spowoduje zalogowanie użytkownika na węzeł obliczeniowy, tam proszę uruchomić kompilację programu - Dane obliczeniowe należy składować i przetwarzać na systemie plików Lustre pod lokalizacją $SCRATCH
- W obliczeniach nie należy korzystać z katalogu /tmp ani ze zmiennych $TMP lub $TMPDIR
Kontakt
Pomoc dla użytkowników PL-Grid: mailto:helpdesk@plgrid.pl
Kontakt z administratorami: mailto:prometheus@cyfronet.pl, +48 12 632 33 55 w. 603.