VU MIF VSL STSC
Skaitmeninių tyrimų ir skaičiavimų centras, Virtualių skaičiavimų laboratorija
Naujienos
Dažnos problemos
Studentams
Darbuotojams
Administratoriams
Naudotojų sąrašai
Programų sąrašai
Debesų kompiuterija
Skaičiavimų tinklas
Microsoft Imagine
Belaidis tinklas
Kompiuterių tinklas
Budėjimo grafikas
Esant problemoms VU MIF kompiuterių tinkle rašykite adresu:
pagalba@mif.vu.lt .

 

Turinys

Įrangos aprašymas

Paskirstytų skaičiavimų tinklas (PST) yra specialiai paruoštas kompiuterių tinklas, kuriame yra galimybė vykdyti programas, kurios galėtų efektyviai apsikeisti duomenimis.


VU MIF PST sudaro superkompiuteris iš telkinių (pirmas skaičius - faktiškai pasiekiamas kiekis):

PavadinimasMazgaiProcesoriaiRAMHDDTinklasYpatybės
alpha26/562 x Intel Xeon X5650 2.66GHz = 12 cores24GB160GB2x1Gbit/s ethernetalpha
beta42/562 x Intel Xeon X5650 2.66GHz = 12 cores24GB160GB1Gbit/s,4xDDR(20Gbit/s) infinibandbeta,ib,ib20,ups
gamma3/34 x 4 x Intel Xeon X7550 2GHz = 128 cores256GB500GB1Gbit/s,4xQDR(40Gbit/s) infinibandgamma,bullx,ib,ib20,ib40
Iš viso71/115184/272 sockets, 1200/1728 cores3456GB19420GB

Skaičiavimo mazgų ypatybės:

  • alpha,beta,gamma - atitinkamo telkinio mazgai
  • ib - turi kokią nors infiniband tinklo prieigą
  • ib20 - turi 20Gbit/s infiniband tinklo prieigą
  • ib40 - turi 40Gbit/s infiniband tinklo prieigą
  • ups - turi elektros tiekimą per UPS

Toliau tekste procesorius = CPU = core - procesoriaus vienas branduolys (su visomis hypergijomis, jei jos yra įjungtos).

Nenaudojami skaičiavimo mazgai yra išjungiami, tai užduočių startavimas gali užtrūkti ~5-10min. Skaičiavimo mazgai yra įjungiami po vieną per minutę.

Neleiskite MPI užduočių telkinyje alpha jeigu skaičiavimų metu bus apsikeičiama daug duomenų, nes ten MPI gali naudoti tik 1Gbit/s tinklą.


Programinė įranga

PST yra instaliuota Debian operacinė sistema (OS) su Linux branduoliu. Joje instaliuoti tokie paketai (ir dar daugiau):

PavadinimasVersija
gcc/g++/gfortran4.9.2
OpenMP*4.9.2
OpenMPI*1.6.5
BLAS1.2.20110419
OpenBLAS0.2.12
LAPACK3.5.0
Python2.7.9/3.4.2
NumPy1.8.2
SciPy0.14.0
Matplotlib1.4.2
ipython2.3.0
mpi4py1.3.1
Perl5.20.2
PDL2.007
R*3.3.2
ATLAS3.10.2
BLACS1.1
ScaLAPACK1.8.0
gnuplot4.6.6
Octave*4.0.3
HDF51.8.13
FFTW22.1.5
FFTW33.3.4
GAMESS-US*11 AUG 2011 (R1)
Gaussian*03 Rev D.01
Dalton*2011 Jul 5
Java/OpenJDK7 ir 8
Hadoop*1.2.1
* - yra papildoma informacija apie programos naudojimą VU MIF PST.


Registracija

PST gali naudotis tik registruoti VU MIF kompiuterių tinklo naudotojai. Registraciją gali atlikti STSC darbuotojai. Registracijos metu turi būti nurodyta, kad pageidaujama naudotis PST. Po registracijos naudotojas turėtų atvykti į STSC įvesti savo pradinį slaptažodį, nebent jis turi VU E.tapatybę - tuomet gali pasikeisti per pamiršto slaptažodžio pakeitimą, tik svarbu, kad registracijos metu nurodytų savo VU el. pašto adresą. Su suteiktu (pasirinktu) naudotojo vardu ir savo įvestu slaptažodžiu įgyjama teisė jungtis prie serverio uosis.mif.vu.lt, VU MIF mokymo klasių ir dalies VU MIF darbo vietų kompiuterių.

Esami VU MIF tinklo naudotojai PST gali naudotis (eilėje short) be papildomos registracijos.


Prisijungimas

Norint prisijungti prie PST reikia naudoti SSH programas (ssh, putty, winscp, mobaxterm) ir Kerberos arba SSH raktų autentikaciją.

Jeigu naudojate Kerberos:

  • Prisijungiate į Linux aplinką VU MIF klasėje arba viešame terminale savo VU MIF naudotojo vardu ir slaptažodžiu
  • arba su ssh ar putty programa prisijungiate į uosis.mif.vu.lt savo VU MIF naudotojo vardu ir slaptažodžiu.
  • Su komanda klist patikrinkite ar turite galiojantį Kerberos raktą (ticket). Jei rakto nėra arba jo galiojimo laikas pasibaigęs, tai reikia įvykdyti komandą kinit.
  • Jungiates į mazgą cluster su komanda ssh cluster (turi nereikalauti slaptažodžio).

Jeigu naudojate SSH raktus:

  • Prisijungiate su ssh, sftp, scp, putty, winscp ar kitomis ssh protokolą palaikančiomis programomis į cluster.mif.vu.lt su savo ssh privačiu raktu nurodydami savo VU MIF naudotojo vardą (turi nereikalauti prisijungimo slaptažodžio, bet gali reikalauti jūsų ssh privataus rakto slaptažodžio).
  • Prieš naudodami šį būdą, reikia bent vieną kartą prisijungti naudojant Kerberos ir įdėti savo (OpenSSH formato) ssh viešąjį raktą į ~/.ssh/authorized_keys failą.


VU MIF PST failų sistemos

VU MIF PST bendra failų sistema (Lustre)

VU MIF PST bendra failų sistema yra pasiekiama /scratch/lustre kataloge. Tai Lustre failų sistema, kuriai naudojamas DDN S2A9900 diskų masyvas su 600TB (~350TB realiai) SATA diskų.

Joje kiekvienam PST naudotojui yra sukuriamas /scratch/lustre/home/username katalogas, kur username - PST naudotojo vardas.

Šios failų sistemos failai yra vienodai pasiekiami visuose skaičiavimo mazguose ir mazge cluster.

Prašome šiuos katalogus naudoti tik pagal paskirtį ir atlikus skaičiavimus - išsivalyti.

VU MIF PST eilės (partition)

Eilė (partition)Laiko limitasAtminties per CPU limitasPastabos
short2h2000MBalpha, beta ir gamma telkinių mazgai
long48h2000MBalpha, beta ir gamma telkinių mazgai
verylong7d2000MBbeta ir gamma telkinių mazgai
extralongnelimituota2000MB14 beta telkinio mazgų

  • short eilė yra prieinamos visiems VU MIF tinklo naudotojams.
  • long eilė yra prieinamos tik cluster, cluster2 ir btisk grupių nariams.
  • verylong eilė prieinama tik cluster ir btisk grupės nariams.
  • extralong eilė prieinama tik cluster grupės nariams.
  • verylong ir extralong eilėse laiko limitas yra 48h, jei jis nenurodytas užduotyje (laiko limitas pagal nutylėjimą).

Nenaudojami skaičiavimo mazgai yra išjungiami, tai užduočių startavimas gali užtrūkti ~5-10min. Skaičiavimo mazgai yra įjungiami po vieną per minutę. Jeigu naudojate >1 skaičiavimo mazgą ir jums reikia, kad visi jie būtų įjungti, tai užduoties pradžioje įvykdykite srun true.


Paketinis užduočių vykdymas (SLURM)

Norint pasinaudoti PST skaičiavimo resursais, reikia formuoti užduočių scenarijus (sh arba csh).

Pavyzdys (failas mpi-test-job):

#!/bin/sh
#SBATCH -p short
#SBATCH -n4
#SBATCH -C alpha
mpicc -o mpi-test mpi-test.c
mpirun mpi-test
Jame kaip specialūs komentarai yra nurodymai užduočių vykdytojui.
-p short - į koią eilę siųsti (short, long, verylong).
-n4 - kiek procesorių rezervuoti.
-C alpha - kokias ypatybes turinčius mazgus parinkti (jei nenurodyta - parinks iš visų, kurie gali tenkinti kitas sąlygas).

Užduoties pradinis einamasis katalogas yra dabartinis katalogas (pwd) prisijungimo mazge iš kur paleidžiama užduotis, nebent parametru -D pakeistas į kitą. Pradiniam einamajam katalogui naudokite PST bendros failų sistemos katalogus /scratch/lustre, nes jis turi egzistuoti skaičiavimo mazge ir ten yra kuriamas užduoties išvesties failas slurm-JOBID.out, nebent nukreiptas kitur parametrais -o arba -i (jiems irgi patariama naudoti bendrą failų sistemą).

Suformuotą scenarijų siunčiame su komanda sbatch

$ sbatch mpi-test-job
kuri gražina pateiktos užduoties numerį JOBID.

Laukiančios arba vykdomos užduoties būseną galima sužinoti su komanda squeue

$ squeue -j JOBID

Su komanda scancel galima nutraukti užduoties vykdymą arba išimti ją iš eilės

$ scancel JOBID
Jeigu neatsimenate savo užduočių JOBID, tai galite pasižiūrėti su komanda squeue
$ squeue
Užbaigtų užduočių squeue jau neberodo.

Jeigu nurodytas procesorių kiekis nėra pasiekiamas, tai jūsų užduotis yra įterpiama į eilę. Joje ji bus kol atsilaisvins pakankamas kiekis procesorių arba kol jūs ją pašalinsite su scancel.

Vykdomos užduoties išvestis (output) yra įrašoma į failą slurm-JOBID.out. Jei nenurodyta kitaip, tai ir klaidų (error) išvestis yra įrašoma į tą patį failą. Failų vardus galima pakeisti su komandos sbatch parametrais -o (nurodyti išvesties failą) ir -e (nurodyti klaidų failą).

Daugiau apie SLURM galimybes galite paskaityti Quick Start User Guide.


Interaktyvios užduotys (SLURM)

Interaktyvias užduotis galima pradėti vykdyti su komanda srun:

$ srun --pty $SHELL

Įvykdę aukščiau pateiktą komandą prisijungsite prie SLURM paskirtos skaičiavimo mazgo aplinkos ir galėsite tiesiogiai vykdyti ir derinti programas jame.

Įvykdę komandas atsijunkite nuo skaičiavimo mazgo su komanda

$ exit

Jeigu norima vykdyti grafines programas, tai reikia jungtis su ssh -X į uosis.mif.vu.lt ir cluster:

$ ssh -X uosis.mif.vu.lt
$ ssh -X cluster
$ srun --pty $SHELL

Įvadas į OpenMPI

MPI programų kompiliavimas

Paprastos MPI programos pavyzdys yra kataloge /scratch/lustre/test/openmpi. mpicc (mpiCC, mpif77, mpif90) yra apvalkalai C (C++, F77, F90) kompiliatoriams, kurie automatiškai įtraukia į komandų eilutę reikiamus MPI intarpų (include) ir bibliotekų failus.

$ mpicc -o foo foo.c
$ mpif77 -o foo foo.f
$ mpif90 -o foo foo.f

MPI programų vykdymas

MPI programos startuojamos su mpirun arba mpiexec programa. Daugiau apie jas galima sužinoti su komanda man mpirun arba man mpiexec.

Paprasta (SPMD) programa gali būti startuojama su tokia mpirun komandų eilute.

$ mpirun foo

Tai naudos visus paskirtus procesorius, pagal tai, kiek jų buvo užsakyta. Jeigu norima pasinaudoti mažiau, tai mpirun galima nurodyti parametrą -np kiekis. Nepageidaujama ilgesniam laikui naudoti mažiau, nei rezervuota, nes neišnaudoti CPU lieka laisvi. Didesnį kiekį, nei rezervuotą, yra griežtai draudžiama naudoti, nes tai gali turėti įtakos kitų užduočių vykdymui.

Daugiau apie instaliuotą OpenMPI yra OpenMPI puslapyje.


Užduočių efektyvumas

  • Prašome išnaudoti ne mažiau 50% užsakyto CPU kiekio.
  • Naudoti daugiau CPU, nei užsakyta, nepadidins efektyvumo, nes jūsų užduotys galės naudoti tik tiek CPU, kiek buvo užsakyta.
  • Jeigu naudosite parametrą --mem=X, tai užduotis gali rezervuoti daugiau CPUs proporcingai norimos atminties kiekiui. Pvz: užsakius --mem=10000 eilėjė short, bus užsakyti ne mažiau 5 CPUs, jei kiti parametrai nenurodo daugiau. Jeigu jūsų užduotis naudos mažiau, tai bus neefektyvus resursų naudojimas, be to tai gali veikti lėčiau, nes gali būti naudojama kita, nei vykdančio, procesoriaus atmintis.

Nuorodos

Pastaba. Dalis informacijos šiuose puslapiuose prieinama tik VU MIF kompiuterių tinklo naudotojams, pateikusiems savo VU MIF naudotojo vardą ir slaptažodį.
© 1999 - 2017 VU MIF Skaitmeninių tyrimų ir skaičiavimo centras