Uruchamianie zadań przez system SLURM
Informacja
- Zlecanie zadań odbywa się poprzez system kolejkowy SLURM.
- Ares i Athena dzielą wzorce konfiguracji i użytkowania zdefiniowane wcześniej dla klastra Prometheus, które znajdziesz tutaj.
- Granty na Aresie wymagają podania przyrostka do nazwy grantu: -cpu, cpu-bigmem lub -gpu.
- Granty na Athenie wymagają podania przyrostka do nazwy grantu: -gpu-a100.
- Zadanie może być zlecone zarówno w trybie wsadowym, jak i interaktywnym.
Uwaga
- Aby korzystać z zasobów PLGrid w sposób wydajny i efektywny, warto zapoznać się ze wskazówkami zawartymi w naszym kompendium wiedzy.
Szczegółowe informacje i sposób wykorzystania klastrów Ares oraz Athena znajdziesz odpowiednio na stronach:
Dostępne kolejki dla klastrów
- Ares
Name | Timelimit | Resource type (account suffix) | Access requirements | Description |
---|---|---|---|---|
plgrid | 72h | -cpu | Generally available. | Standard partition. |
plgrid-testing | 1h | -cpu | Generally available | High priority, testing jobs, limited to 3 running jobs. |
plgrid-now | 12h | -cpu | Generally available | The highest priority, interactive jobs, limited to 1 running or queued job. |
plgrid-long | 168h | -cpu | Requires a grant with a maximum job runtime of 168h | Used for jobs with extended runtime. |
plgrid-bigmem | 72h | -cpu-bigmem | Requires a grant with CPU-BIGMEM resources | Resources used for jobs requiring an extended amount of memory. |
plgrid-gpu-v100 | 48h | -gpu | Requires a grant with GPGPU resources | GPU partition. |
- Athena
Name | Timelimit | Account suffix | Remarks |
---|---|---|---|
plgrid-gpu-a100 | 48h | -gpu-a100 | GPU A100 partition. |
- Tryton
Name | Timelimit |
---|---|
plgrid-testing | 1h |
plgrid | 72h |
plgrid-long | 168h |
- BEM2
Name | Timelimit |
---|---|
plgrid-short | 24h |
plgrid | 72h |
plgrid-long | 168h |
Tryb wsadowy
Do zlecania zadania w trybie wsadowym służy komenda sbatch
. Użycie komendy: sbatch skrypt.sh
.
Wszystkie opcje należy poprzedzić dyrektywą #SBATCH (koniecznie ze znakiem #).
Szczegółowe informacje: man sbatch
oraz sbatch --help
.
Przykładowy skrypt:
Uwaga
To jest przykładowy skrypt, którego NIE NALEŻY uruchamiać. Przed jego uruchomieniem należy przejrzeć wszystkie podane opcje i dostosować je do własnych potrzeb, zmieniając m.in. nazwę grantu, nazwę partycji, czas trwania zadania, itp.
#!/bin/bash -l
## Nazwa zlecenia
#SBATCH -J ADFtestjob
## 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=1
## 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 CPU
#SBATCH -A <grant_id-suffix>
## 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
srun /bin/hostname
module load plgrid/apps/adf/2014.07
adf input.adf
Tryb interaktywny
Do zlecania zadań w trybie interaktywnym z powłoką służy przykładowo polecenie:
srun -p plgrid-testing -N 1 --ntasks-per-node=1 -n 1 -A <grant_id-suffix> --pty /bin/bash -l
Powyższa komenda uruchomi zadanie w partycji plgrid-testing, na 1 węźle z alokacją 1 rdzenia.