IT wiki

VU MIF STSC

User Tools

Site Tools


en:hpc

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
en:hpc [2022/07/04 14:07] grikieteen:hpc [2022/07/18 07:50] – [MPI programų kompiliavimas] grikiete
Line 167: Line 167:
 More about SLURM opportunities you can read [[https://slurm.schedmd.com/quickstart.html|Quick Start User Guide]]. More about SLURM opportunities you can read [[https://slurm.schedmd.com/quickstart.html|Quick Start User Guide]].
  
-====== Paketinis užduočių vykdymas (SLURM) ======+====== Interactive Tasks (SLURM) ======
  
-Norint pasinaudoti PST skaičiavimo resursais, reikia formuoti užduočių scenarijus (sh arba csh). +Interactive tasks can be done with the //srun// command:
- +
-Pavyzdys: +
- +
-<code shell mpi-test-job.sh> +
-#!/bin/bash +
-#SBATCH -p main +
-#SBATCH -n4 +
-module load openmpi +
-mpicc -o mpi-test mpi-test.c +
-mpirun mpi-test +
-</code> +
- +
-Pateikus paraišką ITAPC ir gavus teigimą sprendimą, reikia susikurti naudotoją https://hpc.mif.vu.lt/. Sukurtas naudotojas bus įtrauktas į atitinkamą projektą, kuris turės tam tikrą kiekį resursų. Norint naudoti projekto resursus atliekant skaičiavimus reikia nurodyti savo alokacijos numerį. Žemiau pateiktas pavyzdys su nustatytu alokacijos parametru "alloc_xxxx_projektas" (taikomas ne VU MIF naudotojams, VU MIF naudotojai -- account parametro nurodyti neturi). +
- +
-<code shell mpi-test-job.sh> +
-#!/bin/bash +
-#SBATCH --account=alloc_xxxx_projektas +
-#SBATCH -p main +
-#SBATCH -n4 +
-#SBATCH --time=minutes +
-module load openmpi +
-mpicc -o mpi-test mpi-test.c +
-mpirun mpi-test +
-</code> +
- +
- +
-Jame kaip specialūs komentarai yra nurodymai užduočių vykdytojui. +
- +
- -p short - į kokią eilę siųsti (main, gpu, power). +
- +
- -n4 - kiek procesorių rezervuoti (**PASTABA:** nustačius naudotinų branduolių skaičių x, tačiau realiai programiškai išnaudojant mažiau, apskaitoje vis tiek bus skaičiuojami visi x "užprašyti" branduoliai, todėl rekomenduojame apsiskaičiuoti iš anksto). +
- +
-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 [[https://slurm.schedmd.com/quickstart.html|Quick Start User Guide]]. +
- +
-====== Interaktyvios užduotys (SLURM) ====== +
- +
-Interaktyvias užduotis galima vykdyti su komanda srun:+
  
 <code> <code>
Line 238: Line 175:
 </code> </code>
  
-Įvykdę aukščiau pateiktą komandą prisijungsite prie SLURM paskirtos skaičiavimo mazgo aplinkos ir galėsite tiesiogiai vykdyti ir derinti programas jame.+The above command will connect you to the compute node environment assigned to SLURM and allow you to directly run and debug programs on it.
  
-Įvykdę komandas atsijunkite nuo skaičiavimo mazgo su komanda+After the commands are done disconnect from the compute node with the command
  
 <code> <code>
Line 246: Line 183:
 </code> </code>
  
-Jeigu norima vykdyti grafines programastai reikia jungtis su **ssh -X** į **uosis.mif.vu.lt** ir **hpc**:+If you want to run graphical programsyou need to connect to **ssh -X** to **uosis.mif.vu.lt** and **hpc**:
  
 <code> <code>
Line 254: Line 191:
 </code> </code>
  
-**power** telkinyje interaktyvias užduotis galima vykdyti su+In **power** cluster interactive tasks can be performed with
  
 <code> <code>
Line 260: Line 197:
 </code> </code>
  
-====== GPU užduotys (SLURM) ======+====== GPU Tasks (SLURM) ======
  
-Norint pasinaudoti GPU, reikia papildomai nurodyti <code>--gres gpu:N</code> kur - norimas GPU kiekis.+To use GPU you need to specify additionally <code>--gres gpu:N</code> where is desired GPU amount.
  
-Su ''nvidia-smi'' užduotyje galite pasitikrinti kiek GPU buvo paskirta.+With ''nvidia-smi'' in the task you can check the GPU amount that was dedicated.
  
-Pavyzdys interaktyvios užduoties su 1 GPU:+Example of an interactive task with 1 GPU:
 <code> <code>
 $ srun -p gpu --gres gpu --pty $SHELL $ srun -p gpu --gres gpu --pty $SHELL
 </code> </code>
  
-====== Įvadas į OpenMPI ======+====== Introduction to OpenMPI ======
  
-Ubuntu 18.04 LTS yra **2.1.1** versijos OpenMPI paketai+Ubuntu 18.04 LTS is the packet of **2.1.1** OpenMPI version
-Norint pasinaudoti naujesne **4.0.1** versija reikia naudoti+To use the newer version **4.0.1** you need to use
 <code> <code>
 module load openmpi/4.0 module load openmpi/4.0
 </code> </code>
-prieš vykdant MPI komandas.+before running MPI commands.
  
-===== MPI programų kompiliavimas =====+===== MPI Compiling Programs =====
  
-Paprastos MPI programos pavyzdys yra kataloge ''/scratch/lustre/test/openmpi''. **mpicc** (**mpiCC**, **mpif77**, **mpif90**, **mpifort**) yra apvalkalai C (C++, F77, F90, Fortran) kompiliatoriams, kurie automatiškai įtraukia į komandų eilutę reikiamus **MPI** intarpų (include) ir bibliotekų failus.+An example of a simple MPI program is in the directory ''/scratch/lustre/test/openmpi''. **mpicc** (**mpiCC**, **mpif77**, **mpif90**, **mpifort**) is a framework for C (C++, F77, F90, Fortran) compilers that automatically adds the necessary **MPI** include and library files to the command line.
  
 <code> <code>
en/hpc.txt · Last modified: 2024/02/21 12:50 by rolnas

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki