Pri predmetu Porazdeljeni sistemi bomo za delo uporabljali računsko gručo Arnes. Trenutno je to drugi najzmogljivejši superračunalnik v Sloveniji (prvi je Vega).
Računska gruča Arnes |
- 4480 procesorskih jeder
- 62 x 64 jeder, AMD Epyc 7702P
- 24 x 12 jeder, AMD Epyc 7272, 2x Nvidia V100
- 7 x 32 jeder, AMD Epyc 9124, 2x Nvidia H100
- 17,9 TB RAM
- 3 PB HDD, 320 TB SSD
- 100 Gb/s WAN
- Programska oprema
- OS AlmaLinux 9
- Porazdeljen datotečni sistem Ceph
- Sistem za upravljanje s posli SLURM
Do sistema bomo dostopali preko povezave SSH. Uporabniške račune in gesla za dostop najdete na spletni učilnici FRI. Dostop je mogoč samo z uporabo ustreznega ključa SSH in 2FA avtentikacije. Navodila kako si ustvarite lasten ključ in ga dodate v sistem za upravljanje z identitetami najdete tukaj. Navodila za vzpostavitev 2FA avtentikacije pa najdete tukaj. Po tem, ko ste uredili vse potrebno se na gručo preko ukazne vrstice povežete z ukazom:
ssh <uporabnisko_ime>@hpc-login.arnes.si
Pri delo z gručo lahko uporabljate poljubno orodje za oddaljen dostop (ukazna lupina, MobaXterm, Putty, FileZilla, WinSCP, CyberDuck, Termius, ...). Priporočamo pa uporabo orodja VSCode v kombinaciji z razširitvijo Remote - SSH. Navodila kako vzpostavite povezavo preko VSCode najdete tukaj.
Pri uporabi VSCode so težave s 2FA avtentikacijo. Priporočamo uporabo žetonov krb5 kot je opisano v navodilih. Uporabniki operacijskega sistema Windows, lahko žetone generirate v okolju WSL in VSCode naročite, naj za povezovanje uporabi odjemalca ssh znotraj okolja WSL. V poljubni mapi ustvarite skriptno datoteko ssh.bat
z vsebino:
wsl --exec ssh %*
Nato pa v okolju VSCode spremenite nastavitev Remote.SSH: Path
tako, da vsebuje absolutno pot do vaše datoteke ssh.bat
. Vaš privatni ključ in konfiguracijsko datoteko config
, ki se običajno nahajata v mapi C:\Users\<uporabnik>\.ssh\
morate prenesti v mapo ~/.ssh
v okolju WSL. Popraviti morate tudi pravice za dostop vašega privatnega ključa:
chmod 600 ~/.ssh/<privatni kljuc>
Vodič za delo na gruči in uporamo vmesne programske upreme SLURM za upravljanje s posli in nalogami najdete tukaj. Vsem udeležencem predmeta priporočam, da se prebijejo čez tečaj objavljen na prejšnji povezavi. Pri našem delu z gručo bomo uporabljali rezervacijo fri
, tako da ne bomo imeli težav s čakanjem, da se naši posli izvedejo. V rezervaciji imamo na voljo nekaj računskih vozlišč, ki jih ostali uporabniki gruče ne morejo zasesti. Rezervacijo pri zaganjanju posla uporabite na naslednji način:
$ srun --reservation=fri <ime_programa>
Posle lahko zaganjate tudi s pomočjo opisne skripte bash v kateri navedete zahteve posla. Primer skripte:
#!/bin/bash
#SBATCH --job-name=my_job_name
#SBATCH --partition=all
#SBATCH --reservation=fri
#SBATCH --ntasks=4
#SBATCH --nodes=1
#SBATCH --mem-per-cpu=100MB
#SBATCH --output=my_job.out
#SBATCH --time=00:01:00
srun hostname
Zgornjo skripto shranite v datoteko končnico .sh
, npr.: posel.sh
in jo zaženete z ukazom:
$ sbatch posel.sh
Ne šteje kot ena izmed petih nalog pri predmetu!
- Spremeni privzeto uporabniško geslo na https://fido.sling.si/.
- Ustvari in dodaj ključ SSH v uporabniški profil na https://fido.sling.si/. Navodila najdete na povezavi.
- Vzpostavite avtentikacijo s pomočjo krb5 žetonov po navodilih.
- Preko SSH se povežite na vstopno vozlišče Arnes:
hpc-login.arnes.si
. - Zaženite program
hostname
na računskem vozlišču znotraj rezervacijepsistemi
. - Zaženite program
nvidia-smi
(izpiše informacije o grafičnih procesnih enotah na vozlišču). Pri zagonu morate uporabiti ustrezno particijo z vozlišči, ki vsebujejo GPE. (--partition=gpu
). - Kogar zanima malo več gre lahko skozi delavnico Osnove superračunalništva.