Ana içeriğe atla

Slurm YPH

SLURM açık kaynaklı bir iş yükü yönetimi ve iş çizelgeleme sistemidir. Bölümdeki Turing HPC makinesi 64 çekirdek (4 x 16) ve 192 GB RAM içermektedir.

Küme topolojisi:

  • slurm(.ceng.metu.edu.tr) sunucusu, kullanıcı yönetimi ve turing(.ceng.metu.edu.tr) üzerine iş göndermek içindir. Slurm'un tek amacı Turing HPC'ye iş göndermek olduğundan, minimum sayıda derleyici içerecek şekilde kurulmuştur.
  • Kullanıcılar iş göndermek için ekteki örnek betikleri düzenlemeli ve kullanmalıdır. Aksi takdirde, slurm makinesi kısıtlı donanım kapasitesi nedeniyle yanıt vermeyebilir.
  • Turing HPC, SLURM yapısında "partition" (bölüm) olarak adlandırılan 2 kuyruk içerir: halley ve supernova. Ayrıca özdeş düğümlere (node) ayrılmıştır ve her düğüm 1 çekirdek ile 3 GB RAM'e sahiptir.
  • halley bölümü, maksimum 12 saatlik çalışma süresiyle sınırlı 40 düğüm içerirken; supernova bölümü, maksimum 24 saatlik çalışma süresiyle sınırlı 20 düğüm içerir.
  • Slurm FIFO prensibiyle çalışır; yani gönderilen bir iş, önceki işler tamamlanana kadar ilgili bölümde bekletilir.
1) sbatch : iş göndermek için
user@slurm:~$ sbatch slurmscript.sh 
Submitted batch job 2

Referans: sbatch dokümantasyonu

2) squeue : gönderilen bir işin durumunu görmek için
user@slurm:~$ squeue 
JOBID    PARTITION    NAME        USER     ST     TIME     NODES    NODELIST(REASON)
2        halley        slurm_test  user     R        0:00     20       node-[1-20]

Durum Kodları (ST):

CA CANCELLED İş, kullanıcı veya sistem yöneticisi tarafından açıkça iptal edildi.
CD COMPLETED İş, tüm düğümlerdeki tüm süreçleri sonlandırdı.
CF CONFIGURING İşe kaynak ayrıldı ancak kaynakların hazır olması bekleniyor.
CG COMPLETING İş tamamlanma aşamasında.
F FAILED İş, sıfır olmayan bir çıkış kodu veya başka bir hata durumuyla sonlandı.
NF NODE_FAIL İş, ayrılan bir veya daha fazla düğümün arızalanması nedeniyle sonlandı.
PD PENDING İş, kaynak tahsisi bekliyor.
PR PREEMPTED İş, öncelik kesilmesi (preemption) nedeniyle sonlandırıldı.
R RUNNING İşin şu anda bir tahsisi var ve çalışıyor.
S SUSPENDED İşin tahsisi var ancak yürütme askıya alındı.
TO TIMEOUT İş, zaman sınırına ulaştığı için sonlandırıldı.

Referans: squeue dokümantasyonu

3) sinfo : bölüm yapısını görmek için / sinfo -lNe : bölümleri donanım detaylarıyla görmek için
user@slurm:~$ sinfo
PARTITION    AVAIL  TIMELIMIT  NODES    STATE NODELIST
halley       up     12:00:00   40       idle  node-[1-40]
supernova* up     1-00:00:00 20       idle  node-[41-60]

user@slurm:~$ sinfo -lNe
NODELIST     NODES  PARTITION    STATE  CPUS  S:C:T  MEMORY  TMP_DISK WEIGHT FEATURES REASON
node-[1-40]  40     halley      idle   1      1:1:1  3072    0        1      (null)   none
node-[41-60] 20     supernova* idle   1      1:1:1  3072    0        1      (null)   none

Referans: sinfo dokümantasyonu

4) scancel : gönderilen bir işi iptal etmek için

Kullanım: scancel <job_id>

Referans: scancel dokümantasyonu

Düzenlemek ve iş göndermek için slurmscript1 ve slurmscript2 dosyalarını indirebilirsiniz. Betikler yorum satırlarıyla açıklanmıştır; sorularınız olursa admin [at] ceng.metu.edu.tr adresine e-posta gönderebilirsiniz.

  • slurm 15.08.3
  • Python 2.7.9 / Python 3.4.2
  • openmpi-1.10.1
  • Java 1.8.0_65
  • tensorflow-0.11.0
  • Hadoop 2.6.3
  • Apache Maven 3.3.9
  • octave 3.8.2
Son güncelleme