LUMI
LUMI käyttää Apptainerin sijaan SingularityCE:tä.
Suosittelemme lukemaan Apptainer-konttien ohjeet, jotka pätevät LUMIn SingularityCE:hen tietyin tällä sivulla selitetyin muutoksin.
Käytämme komentoa singularity komennon apptainer sijaan.
Konttien ajaminen
Voimme ajaa komentoja kontista seuraavasti:
LUMIssa voimme liittää yleisiä levyalueita konttiin seuraavasti:
Voimme myös ottaa käyttöön ROCm-tuen LUMIn AMD-GPU:ille seuraavasti:
Konttien rakentaminen
Väliaikaishakemisto
LUMIssa käytämme /tmp:tä väliaikaishakemistona.
SingularityCE liittää sen oletusarvoisesti rakennusympäristöön.
Siksi väliaikaishakemiston manuaalinen liittäminen ei ole tarpeen.
Välimuistihakemisto
SingularityCE:n välimuistihakemisto voidaan tarvittaessa vaihtaa:
Rakennussijainti
Kirjautumissolmulla voimme rakentaa kontti-imagoja, jotka ovat riittävän pieniä eivätkä törmää muistirajoihin. LUMIn virtuaalimuisti on melko suuri (64 GB) ja asetettu valmiiksi kovaan ylärajaan, joten sitä ei tarvitse säätää.
Suuret kontti-imagot on rakennettava laskentasolmulla Slurm-työn kautta.
Voimme esimerkiksi varata interaktiivisen Slurm-työn seuraavasti; korvaa vain myproject omalla projektillasi:
Laskentasolmulla /tmp on tmpfs, jonka kokoa rajoittaa muisti.
Meidän on pyydettävä muistia vähintään kaksi kertaa kontti-imagosi (SIF-tiedoston) pakkaamattoman koon verran, jotta muisti ei lopu kesken.
SIF-imagon rakentaminen määrittelytiedostosta
Voimme kirjoittaa SingularityCE:n määrittelytiedostoja käyttäen tiedostopäätettä .def.
Tässä on yksinkertainen esimerkki kontin määrittelystä:
Bootstrap: docker
From: docker.io/opensuse/leap:15.5
%post
# Replace the failing commands with always succeeding dummies.
cp /usr/bin/true /usr/sbin/useradd
cp /usr/bin/true /usr/sbin/groupadd
# Continue to install software into the container normally.
zypper --non-interactive update
LUMIssa meidän on käytettävä prootia SIF-imagojen rakentamiseen SingularityCE:llä. Voimme ladata prootin seuraavasti:
Tämän jälkeen voimme rakentaa kontti-imagoja tavalliseen tapaan seuraavasti:
Älä käytä --fakeroot-valitsinta SingularityCE:n kanssa LUMIssa, sillä se ei toimi samalla tavalla kuin Apptainerissa.