Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Ãœberarbeitung
Nächste Überarbeitung
Vorhergehende Ãœberarbeitung
hlr:phoenix:jobs_starten [2017/09/17 21:04]
y0050733
— (aktuell)
Zeile 1: Zeile 1:
-======3. Jobs starten ====== 
  
-Rechenaufträge werden im Allgemeinen als "​Jobs"​ bezeichnet, die vom Batchsystem verwaltet werden. 
- 
-Als Batchsystem wurde Slurm installiert. Dokumentationen dazu können auf folgender Webseite gefunden werden: [[http://​slurm.schedmd.com/​]]. 
-===== Partitionen (Queues) ===== 
- 
-In Slurm werden die verschiedenen Warteschlangen von Jobs als Partitionen bezeichnet. Jede Partition hat ein bestimmtes Verhalten, Beispielsweise wie viele Knoten mindestens und/oder maximal genutzt werden können oder mit welcher Priorität freie Knoten zugeteilt werden. ​ 
- 
-Auf welche Partitionen ein Nutzer zugreifen kann, wird vom Nutzerrat entschieden. Dadurch kann sichergestellt werden, dass bestimmten Nutzer(gruppen) priorisiert werden können bzw. das wichtige Jobs nicht ausgebremst werden. 
- 
- 
-===== Jobs ===== 
- 
-==== Beispieljobscript ==== 
- 
- 
-<​code>​ 
-#!/bin/bash 
-# Job name: 
-#SBATCH --job-name=SLinpack # Wall clock limit: 
-#SBATCH --time=1:​00:​00 
-# Number of tasks (cores): #SBATCH --ntasks=4 
-#SBATCH --exclusive 
-module add mpi/​intelmpi/​5.1.2.150 module add intel-studio-2016 
-mkdir ~/​systemtests/​hpl/​$HOSTNAME cd ~/​systemtests/​hpl/​$HOSTNAME 
-cp ${MKLROOT}/​benchmarks/​mp_linpack/​bin_intel/​intel64/​runme_intel64_prv . cp ${MKLROOT}/​benchmarks/​mp_linpack/​bin_intel/​intel64/​xhpl_intel64 . 
-HPLLOG=~/​systemtests/​hpl/​$HOSTNAME/​HPL.log.2015.$(date +%y-%m-%d_%H%M) 
- 
-mpirun -genv I_MPI_FABRICS shm -np $MPI_PROC_NUM -ppn $MPI_PER_NODE ./​runme_intel64_prv "​$@"​ | tee -a $HPLLOG 
-</​code>​ 
-==== Wie startet man einen Job? ==== 
- 
-<​code>​sbatch --job-name=$jobname -N <​num_nodes>​ --ntasks-per-node=<​ppn>​ Jobscript</​code>​ 
- 
-Eine Startzeit kann mit dem Schalter --begin vorgegeben werden Beispielsweise:​ 
- 
-<​code>​--begin=16:​00 
---begin=now+1hour 
---begin=now+60 (seconds by default) ​ 
---begin=2010-01-20T12:​34:​00 
-</​code>​ 
-Weitere Informationen bietet auch //man sbatch// 
-Sämtliche dort verwendeten Parameter können auch im Jobscript selber mit #SBATCH angebene werden. 
- 
-==== Wie beendet man einen Job? ==== 
- 
-<​code>​scancel <​jobid></​code>​ 
- 
-Die dazu notwendige ID kann mit dem squeue Kommando ermittelt werden. 
- 
-Alle Jobs eines Users löschen: 
- 
-<​code>​scancel –u <​username></​code>​ 
- 
-==== Wie frage ich den Status eigener Jobs ab? ==== 
- 
-<​code>​squeue</​code>​ 
- 
- 
-==== Interaktive Jobs ==== 
- 
- 
- 
-Für Interaktive jobs: 
- 
-sbatch beispiel.job 
- 
-Submitted batch job 1256 
- 
-<​code>​ 
-beispiel.job 
- 
-#!/bin/bash -l 
- 
-#SBATCH --partition=standard 
-#SBATCH --nodes=1 
-#SBATCH --time=7-00:​00:​00 
-#SBATCH --job-name=towhee 
-#SBATCH --ntasks-per-node=1 
- 
-cd ~/data_dir 
-sleep 168h 
-</​code>​ 
- 
-squeue -l zeigt an auf welchen knoten der job läuft 
- 
-1256 standard towhee raskrato ​ RUNNING ​      0:04 7-00:​00:​00 ​     1 node282 
- 
- 
-Mit ssh auf node282 einloggen 
- 
-Dann mit screen eine Shell aufmachen, die bestehen bleibt, wenn man sich ausloggt. 
- 
-Das Programm in dieser shell starten. 
- 
-Mit 
- 
-<​code>​ 
-strg a d 
-</​code>​ 
-die Shell verlassen (aber Hintergrund weiter laufen lassen). ​ Soviele weitere Shells mit screen aufmachen, wie benötigt werden. Mit screen -r die shells anzeigen lassen (wenn es nur eine gibt klingt man sich sofort wieder ein). Mit screen -r shellnummer kommt auf eine shell im Hintergrund rein. Um die Shell zu beenden strg c drücken und exit eingeben. 
- 
- 
-        ​ 
-        ​ 
hlr/phoenix/jobs_starten.1505675084.txt.gz · Zuletzt geändert: 2017/09/17 21:04 von y0050733
Gauß-IT-Zentrum