Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

TensorFlow 1.12.0

Na računalnom klasteru Isabella, na čvorovima s grafičkim procesorima NVIDIA Tesla V100-SXM2-16GB, instalirana je Python biblioteka za strojno učenje, TensorFlow, verzija 1.12.0, optimizirana za izvođenje na grafičkim procesorima.

...

VerzijaModul
1.12.0tensorflow/1-12-0-gpu

PyTorch 1.0.0

Na radnim čvorovim s grafičkim procesorima Tesla V100 instaliran je PyTorch 1.0.0 za Python 3.5 s podrškom za CUDA 10.

Pripremljen je modul koji priprema sve potrebne varijable okoline:

VerzijaModul
1.0.0pytorch/1-0-0-gpu

Horovod

Za paralelno izvođenje TensorFlow Python poslova na Isabelli, dostupna je Python biblioteka Horovod, verzija 0.15.2. Horovod je odabran radi minimalnih potrebnih izmjena Python skripti kako bi se mogle izvoditi na više GPU-ova, po potrebi preko više čvorova.

...

Horovod koristi OpenMPI 3.0.

Izvođenje

...

poslova

U nastavku je opisano podnošenje tipičnih TensorFlow Python poslova. Više informacija o pokretanju poslova možete pronaći na stranicama Korištenje grafičkih procesora te Pokretanje i upravljanje poslovima.

Korištenje jednog grafičkog procesora:

Warning
titleVažno

U opisima poslova koji koriste jedan grafički procesor, obavezno treba koristiti cuda-wrapper.sh, kao u sljedećem primjeru:


Code Block
titletfgpujob.sge
#$ -cwd
#$ -pe gpu 1

module load tensorflow/1-12-0-gpu <ime modula>

cuda-wrapper.sh python3.5 moj_program.py

Korištenje više grafičkih procesora:

Warning

Korištenje više grafičkih procesora nije dopušteno bez korištenja Horovod TensorFlow, PyTorch biblioteke.


Warning

U opisima poslova koji koriste više grafičkih procesora, obavezno treba koristiti openmpi-wrapper.sh, kao u primjerima u nastavku.

Korištenje više grafičkih procesora na jednom čvoru:

Za pokretanje poslova koji zahtijevaju više grafičkih procesora na jednom čvoru potrebno je koristiti paralelnu okolinu gpusingle te željeni broj grafičkih procesora (maksimalno 4):

Code Block
titletfgpujob.sge
#$ -cwd
#$ -pe gpusingle 4

module load tensorflow/1-12-0-gpu <ime modula>

openmpi-wrapper.sh python3.5 moj_program.py

Korištenje više grafičkih procesora na više čvorova:

Code Block
titletfgpujob.sge
#$ -cwd
#$ -pe gpu 6

module load tensorflow/1-12-0-gpu <ime modula>

openmpi-wrapper.sh python3.5 moj_program.py

Korištenje cijelih čvorova s grafičkim procesorima

Za pokretanje poslova koji zahtijevaju cijele čvorove potrebno je koristiti paralelnu okolinu gpufull te željeni broj grafičkih procesora (mora biti djelitelj broja 4). Primjer skripte za zauzimanje dva čvora:

Code Block
titletfgpujob.sge
#$ -cwd
#$ -pe gpufull 8

module load tensorflow/1-12-0-gpu <ime modula>

openmpi-wrapper.sh python3.5 moj_program.py

Podnošenje posla

Posao se podnosi s pristupnog čvora naredbom:

Code Block
qsub tf.sge

Performanse

Performanse paralelnog izvođenja TensorFlow aplikacija korištenjem Horovod biblioteke mjerene su standarnim resnet101 benchmarkom iz službenog TensorFlow benchmark repozitorija.

...