Hyppää sisältöön

Welcome to our weekly research support coffee hour on Zoom! Click here for more information.

Warning!

Puhti scratch disk is becoming very full (80+ % ) resulting in performance degradation. Everybody is advised to only keep actively processed data on scratch, all other data should be deleted, transferred to host institute or stored in Lumi-O. No new quota will be granted. Click here for a tool for examining your disk usage.

TensorFlow

Pythonin syväoppimiskehys.

Uutiset

5.10.2022 Puhdin Red Hat Enterprise Linux 8 -päivityksen (RHEL8) vuoksi täysin tuettujen TensorFlow-versioiden määrää on vähennetty. Aiemmin vanhentuneiksi merkityt Conda-pohjaiset versiot on poistettu. Ota yhteyttä asiakastukeemme, jos tarvitset todella pääsyn vanhempiin versioihin.

5.5.2022 Mahdin Red Hat Enterprise Linux 8 -päivityksen (RHEL8) vuoksi täysin tuettujen TensorFlow-versioiden määrää on vähennetty. Ota yhteyttä asiakastukeemme, jos tarvitset todella pääsyn muihin versioihin.

4.2.2022 Kaikki vanhat TensorFlow-versiot, jotka perustuivat suoriin Conda- asennuksiin, on merkitty vanhentuneiksi, ja kannustamme käyttäjiä siirtymään uudempiin versioihin. Lue lisää erilliseltä Condan vanhentumista käsittelevältä sivultamme.

Saatavilla

Tällä hetkellä tuetut TensorFlow-versiot:

Versio Moduuli Puhti Mahti LUMI Huomautukset
2.18.0 tensorflow/2.18 X X - oletusversio
2.17.0 tensorflow/2.17 X X -
2.16.1 tensorflow/2.16 - - X oletusversio
2.15.0 tensorflow/2.15 X X -
2.14.0 tensorflow/2.14 X X -
2.13.0 tensorflow/2.13 X X -
2.12.0 tensorflow/2.12 X X X
2.11.0 tensorflow/2.11 X X X
2.10.0 tensorflow/2.10 X X X
2.9.0 tensorflow/2.9 X X X
2.8.0 tensorflow/2.8 X X X
2.7.0 tensorflow/2.7 (x) (x) -
2.6.0 tensorflow/2.6 (x) (x) -
2.5.0 tensorflow/2.5 (x) (x) -
2.4.1 tensorflow/2.4 (x) (x) -
2.4.0 tensorflow/2.4-sng (x) - -
2.3.0 tensorflow/2.3 (x) - -
2.2.0 tensorflow/2.2 (x) - -
1.15.5 tensorflow/1.15 (x) - -

Sisältää TensorFlow'n ja Kerasin GPU-tuella CUDA:n/ROCm:n kautta.

Versiot, jotka on merkitty merkinnällä "(x)", perustuvat vanhoihin Red Hat Enterprise Linux 7 (RHEL7) -kuviin, eikä niitä enää tueta täysin. Erityisesti MPI:n ja Horovodin ei enää odoteta toimivan näiden moduulien kanssa. Jos haluat silti käyttää näitä versioita, sinun täytyy ottaa vanhat RHEL7- moduulit käyttöön komennolla module use /appl/soft/ai/rhel7/modulefiles/.

Jos huomaat, että jokin paketti puuttuu, voit usein asentaa sen itse komennolla pip install. On suositeltavaa käyttää Pythonin virtuaaliympäristöjä. Katso Python-dokumentaatiostamme lisätietoja siitä, kuinka asentaa paketteja itse. Jos mielestäsi jokin tärkeä paketti pitäisi sisällyttää CSC:n tarjoamaan moduuliin, ota yhteyttä asiakastukeemme.

Kaikki moduulit perustuvat Apptaineria käyttäviin kontteihin (tunnettiin aiemmin nimellä Singularity). Tarjolla on wrapper-skriptejä, jotta yleiset komennot kuten python, python3, pip ja pip3 toimivat normaalisti. Muiden komentojen kohdalla sinun täytyy lisätä niiden eteen apptainer_wrapper exec, esimerkiksi apptainer_wrapper exec huggingface-cli. Lisätietoja on CSC:n yleisissä ohjeissa Apptainer-konttien ajamisesta.

Jotkin moduulit tukevat Horovodia, joka on suositeltu kehyksemme monisolmutöille eli töille, jotka tarvitsevat yli 4 GPU:ta Puhdissa ja Mahdissa. Horovodia voidaan käyttää myös yksisolmutöissä 2–4 GPU:lle. Lisätietoja saat lukemalla koneoppimisoppaamme Multi-GPU-osion.

Lisenssi

TensorFlow on lisensoitu Apache License 2.0:lla.

Käyttö

Käyttääksesi TensorFlow'n oletusversiota Puhdissa tai Mahdissa, ota se käyttöön komennolla:

module load tensorflow

Käyttääksesi TensorFlow'ta LUMIssa:

module use /appl/local/csc/modulefiles/
module load tensorflow

Jos haluat käyttää tiettyä versiota (katso yllä saatavilla olevat versiot), käytä:

module load tensorflow/2.12

Huomaa, että moduulit sisältävät jo CUDA/ROCm-kirjastot, joten cuda- tai rocm-moduuleja ei tarvitse ladata erikseen!

Tämä komento näyttää myös kaikki saatavilla olevat versiot:

module avail tensorflow

Voit tarkistaa ladattuun moduuliin sisältyvät tarkat paketit ja versiot ajamalla:

list-packages

Warning

Huomaa, että kirjautumissolmut eivät ole tarkoitettu raskasta laskentaa varten, käytä sen sijaan Slurm-eräajoja. Katso ohjeemme eräajojärjestelmän käytöstä.

Esimerkkieräajokomentosarja

Esimerkkieräajokomentosarja yhden GPU:n ja 1/4:n (LUMIssa 1/8:n) käytettävissä olevista CPU-ytimistä varaamiseen yhdellä solmulla:

#!/bin/bash
#SBATCH --account=<project>
#SBATCH --partition=gpu
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=10
#SBATCH --mem=64G
#SBATCH --time=1:00:00
#SBATCH --gres=gpu:v100:1

module load tensorflow/2.14
srun python3 myprog.py <options>
#!/bin/bash
#SBATCH --account=<project>
#SBATCH --partition=gpusmall
#SBATCH --nodes=1
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=32
#SBATCH --time=1:00:00
#SBATCH --gres=gpu:a100:1

module load tensorflow/2.14
srun python3 myprog.py <options>
#!/bin/bash
#SBATCH --account=<project>
#SBATCH --partition=small-g
#SBATCH --ntasks=1
#SBATCH --cpus-per-task=7
#SBATCH --gpus-per-node=1
#SBATCH --mem=60G
#SBATCH --time=1:00:00

module use /appl/local/csc/modulefiles/
module load tensorflow/2.12
srun python3 myprog.py <options>

Lue osio GPU:n tehokkaasta hyödyntämisestä koneoppimisoppaassamme, jotta opit käyttämään GPU:ta tehokkaasti.

Suuret aineistot, multi-GPU ja monisolmutyöt

Jos työskentelet suurten aineistojen kanssa tai sellaisten aineistojen kanssa, jotka sisältävät paljon tiedostoja, lue koneoppimisoppaamme data-osio. Erityisesti älä lue valtavaa määrää tiedostoja jaetusta tiedostojärjestelmästä, vaan käytä sen sijaan nopeaa paikallista levyä tai paketoi datasi suuremmiksi tiedostoiksi!

Lisätietoja multi-GPU:sta ja monisolmutöistä saat koneoppimisoppaamme Multi-GPU- ja monisolmuosiosta

Lisätietoja

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta