Ege2 Kullanım Kılavuzu

UHeM sitesinden
Atla: kullan, ara

Ege2, paralel hesaplama konusunda tecrübe kazanmak isteyen kullanıcılarımız için hazırladığımız yeni sunucu sistemidir. Ege2 sistemine gelişmiş bir kuyruk yönetim sistemi olan LSF üzerinden iş teslim edilmektedir. Hazırladığınız paralel programları sisteme teslim edebilmeniz için gerekli temel adımlar aşağıda sıralanmıştır. Daha ayrıntılı bilgi için Ana Sayfa'mızda yer alan diğer belgelere göz atmanızı tavsiye ederiz.

  • Sunucu sistemimizde hesaplarınız açıldıktan sonra size otomatik olarak gönderilen e-posta içerisinde VPN yapılandırılmasının nasıl yapılacağına dair bilgileri bulacaksınız. Bu bilgileri kullanarak VPN yapılandırmasını gerçekleştiriniz.
  • elogin.uhem.itu.edu.tr sunucusuna SSH bağlantısını gerçekleştiriniz. Buradaki kullanıcı adınız ve şifreniz size otomatik olarak gönderilen e-posta içerisinde bulunmaktadır:
    ssh -l <kullanıcı.adı> elogin.uhem.itu.edu.tr
  • .bashrc dosyanızı (/AKDENIZ/users/<kullanici_adiniz> klasöründe yer alır) bir text editor (vim, nano...) ile açınız ve . /RS/progs/LSF/conf/profile.lsf satırını bu dosyaya ekleyiniz. Böylelikle LSF komutlarını kullanabileceksiniz.
  • Aşağıdaki komutu çalıştırın:
    source .bashrc
  • /RS/users/<kullanıcı.adınız> dizinine geçiniz[1].
    cd /RS/users/<kullanıcı.adı>
  • İşinizi LSF dosyası hazırlayarak teslim etmek için; aşağıdakine benzer bir LSF dosyası yaratın ve '.lsf' uzantısı ile kaydedin.

İşinizi göndermek için kullanabileceğiniz örnek LSF dosyası [2]:

#!/bin/bash
#BSUB -P hbm514
#BSUB -q hbm514_e2
#BSUB -m ege2_w  
#BSUB -o %J.out
#BSUB -e %J.err
#BSUB -a intelmpi
#BSUB -n 16
mpirun.lsf /RS/users/<kullanıcı.adı>/pi.x
  • LSF dosyasındaki parametrelerin açıklamaları şu şekildedir.
-P proje_ismi
Buraya kullanıcı hesabınız açıldıktan sonra size gelen e-posta içerisindeki proje adını yazmalısınız. Proje adları aynı zamanda UNIX grubuna karşılık geldiği için, üye olduğunuz grupları listelemek işinize yarayabilir. Bunun için id komutunu kullanabilirsiniz.
-q kuyruk_ismi
LSF'de ayrıntılı açıklandığı gibi sistemde birden fazla kuyruk sistemi bulunmaktadır. Hangi kuyuklar iş gönderme yetkinizin olduğunu bqueues -u <user_name>[3] komutu ile görebilirsiniz. <user_name> ifadesini kullanıcı adınızla değiştirmelisiniz. Örnek:
[hbm51401@elogin ~]$ bqueues -u hbm51401
QUEUE_NAME      PRIO STATUS          MAX JL/U JL/P JL/H NJOBS  PEND   RUN  SUSP 
hbm514_e2        40  Open:Active     256   32    -    -     0     0     0     0
-m sunucu_sistemi
ege2_w yazılır.
-o %J.out
Programın çıktısının yazılacağı dosya adı. %J ifadesinin yerine LSF otomatik olarak işin numarasını yerleştirecektir böylece LSF'i verdiğiniz her iş için ayrı dosyalar yaratılacaktır.
-e %J.err
Hata dosyasının adı.
-a intelmpi
Kullandığınız programın tipi. Intel'in derleyicileri ile hazırlanmış standard bir MPI programı için bu değer intelmpi olacaktır.
-n 16
Toplam çekirdek sayısı (sunucu sayısı değil) girilir. Ege2'de her sunucu 8 çekirdekli olduğu için 8'in katlarını yazmanızı tavsiye ederiz.
mpirun.lsf
Hazırladığınız çalıştırabilir dosyanın tam yolunun başına mpirun.lsf'i yazmalısınız. Programınızı /RS/users/<user_name> altına koymanız gerektiğini tekrar hatırlatmakta fayda var.
  • Hazırladığınız LSF dosyasını bsub[3] komutu ile sisteme gönderebilirsiniz.
bsub < dosya_adı.lsf
  • Herşey yolunda giderse bsub programı size bir jobid verecektir.
  • İşin bitip bitmediğini bjobs -l <jobid> komutu ile görebilirsiniz.
  • Program bittikten sonra programın bulunduğu dizinde belirtilen jobid numarası ile başlayan iki dosya içerisinde programın çıktılarını görebilirsiniz.

Notlar

  1. Daha önce merkezimizde iş koşmuş ancak Ege2'yi ilk defa kullananlar için önemli bir noktayı vurgulamak gerekiyor: lnode sunucusunda bulunan RS dizini ile elogin sunucusundaki RS dizini isimleri aynı olsa da farklı depolama alanlarını göstermektedir. lnode sunucusu tarafında erişilebilen RS dizini (yani her zaman kullandığınız RS dizini oluyor) elogin sunucusuna /RS_original adı ile mount edilmiştir. /RS_original dizini sadece elogin sunucusu üzerinde tanımlıdır ve ege2 sistemine bağlı hesaplama sunucuları tarafından bu dizine erişim yoktur. ege2 sunucu sisteminde iş çalıştırırken dosyalarınızın elogin sunucusunun /RS dizini altında olması gerekmektedir. Özetle sisteme lnode üzerinden bağlanıp /RS dizininde hazırladığınız bir işi ege2'ye veremezseniz. Ege2'ye iş vermek için muhakkak elogin sunucusunu ve bu sunucu üzerindeki /RS dizinini kullanmanız gereklidir.
  2. Örnek bir paralel hesaplama programı için Pi.c sayfasına bakınız.
  3. 3,0 3,1 LSF komutlarını çalıştırabilmek için sisteme ilk girişte source /RS/progs/LSF/conf/profile.lsf komutunu çalıştırmalısınız. Bu komutu tekrar tekrar çalıştırmak istemiyorsanız .bashrc dosyasına koyabilirsiniz.