Linux laskentapalvelinympäristöjen muutokset ja päivitys: käyttökatko 12.10.2023
Päivitykset vaikuttavat Linux-laskentapalvelimia käyttäviin opiskelijoihin ja käyttökatko tulee arviolta kestämään klo 22.00 saakka. Päivitykset koskevat kaikkia Kataja, ITEE, bcocore ja Lehmus -palvelimia.
Päivityksen yhteydessä muutetaan myös ITEE-palvelimilla käytettävän ThinLinc-ohjelmiston toimintaa, sekä mahdollistetaan Lehmus-laskentaympäristön laajamittaisempi käyttö.
Rocky Linux 8 -käyttöjärjestelmällä varustetut palvelimien käyttöjärjestelmät päivitetään RHEL 8 -käyttöjärjestelmään. Päivityksen tarkoituksena on mahdollistaa laajempi sovellustuki mm. Cadencen osalta.
ThinLinc-etätyöpöytäympäristön päivittäminen
ThinLinc-ympäristö päivitetään uusimpaan 14.5 versioon, joka edellyttää käyttäjiltä uuden asiakasohjelman lataamista Software Centeristä. Päivityksen yhteydessä kirjautumisosoite muuttuu thinlinc.oulu.fi osoitteeksi nykyisen itee01.oulu.fi sijaan. Thinlinc.oulu.fi osoitteen kautta pääsee kirjautumaan ITEE01 – ITEE04 palvelimille, joiden käyttöä rajoitetaan seuraavasti: ITEE01 – ITEE04 palvelimet ovat tarkoitettu ensisijaisesti interaktiiviseen työskentelyyn ThinLinc-etätyöpöytäympäristön kautta. Palvelimilla on rajoitettu resurssien käyttö siten, että yksi käyttäjä voi käyttää enintään 25% palvelimen kokonaisresursseista ja ylläpidolla on oikeus katkaista ThinLinc-ympäristön käyttöä haittaavien käyttäjien prosessit. Esimerkkinä käyttöä haittaavasta toiminnasta on raskaan Matlab simulaation ajaminen palvelimilla. Tällaisilla tilanteissa käyttäjää suositellaan ajamaan työ ITEE05 – ITEE12 palvelimilla tai Lehmus-laskentaympäristössä, joka takaa käyttäjälle tarvittavat resurssit.
Laskentapalvelimilla olevien sovellusten käyttö
Laskentapalvelimille on asennettu useita sovelluksia ja uusia sovellusasennuksia voi pyytää ict@oulu.fi sähköpostin kautta. Uudet sovellukset asennetaan Lmod-ympäristöön (https://lmod.readthedocs.io/en/latest/010_user.html), joka mahdollistaa sovellusten ympäristömuuttujien helpon hallinnan, sekä mahdollistaa helposti sovellusversiosta toiseen vaihtamisen.
Lmod:in käytön suhteen tärkeimmät komennot ovat:
$ module avail
Module avail listaa kaikki saatavilla olevat sovellukset ja niiden versiot
$ module load sovellus/versio
Module load lataa käyttöön sovelluksen suoritusympäristön, esim. Matlabin tapauksessa module load matlab/R2023b
$ module list
Listaa suoritusympäristöön ladatut sovellukset.
$ module purge
Poistaa käytöstä kaikki moduulit
$ module show sovellus/versio
Näyttää mitä muutoksia kyseisen sovelluksen moduulitiedosto tekee.
$ module help sovellus/versio
Tulostaa ylläpidon kirjoittaman ohjetekstin, tällä hetkellä ohjetekstien laajuus vaihtelee suuresti, mutta tulevaisuudessa tarkoituksena on hyödyntää Help-toiminnallisuutta sovellusasennuksissa.
Lehmus-laskentaympäristön käyttö
Lehmus-laskentapalvelinympäristö on uusin resurssi Oulun yliopiston tutkijoiden ja opiskelijoiden käyttöön. Ympäristö koostuu tällä hetkellä kuudesta (6) laskentapalvelimesta, joista jokaisesta löytyy nvidian näytönohjaimet. Ympäristöä voidaan käyttää interaktiivisesti https://lehmus.oulu.fi portaalin kautta tai ssh-yhteydellä lehmus-login1.oulu.fi -palvelimelta. Töiden käynnistäminen Lehmus-ympäristössä poikkeaa aikaisemmista Kataja ja ITEE palvelimista siten, että töiden ajamisessa käytetään SLURM-eräajoympäristöä.
Ohjeet slurmin käyttöön löytyvät SLURM:in dokumentaatiosta (https://slurm.schedmd.com/quickstart.html).
Laskentaympäristön tekniset tiedot käytön aloittamiseksi:
SLURM osiot
$ sinfo
PARTITION AVAIL TIMELIMIT NODES STATE NODELIST
interactive up 8:00:00 6 idle lehmus-cn[1-6]
normal* up 14-00:00:0 6 idle lehmus-cn[1-6]
debug up infinite 2 idle lehmus-testcn[1-2]
Interaktiiviset työt (https://lehmus.oulu.fi) portaalista käynnsityvät interactive partitioon. Muut työt tulee käynnistää normal partitiossa, joka on myös määritelty oletuspartitioksi käyttäjille.
SBATCH eräajon käynnistäminen:
Alla on esimerkki yksinkertaisen eräajon käynnistämisestä. Tiedostossa tärkeimmät muuttujat ovat –cpus-per-task, joka varaa cpu-ytimien lukumäärän, --mem, joka kertoo tarvittavan keskusmuistin määrän, --time, kuinka kauan työ kestää enintään:
$ cat job.sh
#!/bin/bash
#SBATCH --cpus-per-task=8
#SBATCH --mem=16G
#SBATCH --time=1:00:00
#SBATCH --job-name="Example slurm job"
#SBATCH --partition=normal
# Load Anaconda python environment and activate personal ml environment
module load anaconda/2023.03
conda activate ml
# Start the python job
python3 my_simulation.py
Työ voidaan käynnistää seuraavasti:
$ sbatch job.sh
Töiden käynnistämisen jälkeen slurm luo slurm-<jobid>.out tiedoston kansioon, mistä työ käynnistettiin. Tiedostoon kirjoitetaan sama tuloste, mitä interaktiivisessa käytössä kirjoitettaisiin terminaalin ikkunaan.
Jos töiden ajamisessa tulee ongelmia, olkaa yhteydessä ict@oulu.fi sähköpostin kautta ja liittäkää mukaan seuraavat tiedot: job id, job.sh tiedosto, slurm-<jobid>.out tiedosto, sekä kuvaus mitä yrititte tehdä.
GPU-korttien käyttäminen
SBATH tukee myös gpu:n varaamista käyttöön ja se voidaan toteuttaa esimerkiksi alla olevalla työtiedostolla.
$ cat job2.sh
#!/bin/bash
#SBATCH --cpus-per-task=8
#SBATCH –mem=16G
#SBATCH --gres=gpu:1
#SBATCH --time=1:00:00
#SBATCH --job-name="Example slurm job"
#SBATCH --partition=normal
# Load Anaconda python environment and activate personal ml environment
module load anaconda/2023.03
conda activate ml
# Start the python job
python3 my_simulation.py
Ympäristössä voidaan valita seuraavat gpu vaihtoehdot:
--gres:gpu:1 Valitsee minkä tahansa saatavilla olevan GPU:n
--gers:gpu:v100:1 Valitsee nvidia V100 16G GPU:n
--gers:gpu:a30:1 Valitsee nvidia A30 24G GPU:n
--gres:gpu:t4:1 Valitsee nvididian T4 GPU:n