hpc:gpu
Skirtumai
Čia matote skirtumus tarp pasirinktos versijos ir esamo dokumento.
| Abiejų pusių ankstesnis pataisymasPrevious revisionKitas pataisymas | Previous revision | ||
| hpc:gpu [2022/01/31 17:11] – linp | hpc:gpu [2022/10/30 13:54] (esamas) – linp | ||
|---|---|---|---|
| Linija 2: | Linija 2: | ||
| Norint pasinaudoti PST skaičiavimo resursais su GPU reikės formuoti užduočių skriptus (.sh): | Norint pasinaudoti PST skaičiavimo resursais su GPU reikės formuoti užduočių skriptus (.sh): | ||
| - | + | Labai dažnai GPU mum reiks vykdant mašininio mokymo ir dirbtinio intelekto technologijų modeliams, pažiurėkime kaip pasiruošti PyTorch ir Tensorflow aplinkas ir patikrinti ar bibliotekos gali vykdyti kodą GPU spartinimu. | |
| - | Pavyzdys, bandant patikrinti ar jum suteikta | + | ====== Skriptų su PyTorch ir GPU paleidimas per SLURM ====== |
| - | Sukuriamas | + | |
| + | Programos vykdymo metu sukuriamas | ||
| <code shell test_gpu.sh> | <code shell test_gpu.sh> | ||
| Linija 13: | Linija 14: | ||
| #SBATCH --gres gpu | #SBATCH --gres gpu | ||
| - | source | + | . gpu_env/ |
| python3 test.py | python3 test.py | ||
| </ | </ | ||
| Linija 35: | Linija 36: | ||
| <code shell> | <code shell> | ||
| - | $ source | + | $ . gpu_env/ |
| </ | </ | ||
| pasiruošiame aplinką darbui (pirmą kartą ją reikia sukurti atskirai žr. aplinka.sh) | pasiruošiame aplinką darbui (pirmą kartą ją reikia sukurti atskirai žr. aplinka.sh) | ||
| Linija 74: | Linija 75: | ||
| pip3 install pillow scikit-image | pip3 install pillow scikit-image | ||
| pip3 install numba | pip3 install numba | ||
| - | pip3 install torch==1.10.0+cu113 | + | pip3 install torch torchvision torchaudio |
| </ | </ | ||
| + | |||
| + | |||
| + | ====== Skriptų su Tensorflow/ | ||
| + | |||
| + | Programos vykdymo metu sukuriamas failas gpu.txt su indikatoriumi ir vykdymo laiko momentu: | ||
| + | |||
| + | <code shell test_gpu_tf.sh> | ||
| + | #!/bin/sh | ||
| + | #SBATCH -p gpu | ||
| + | #SBATCH -n1 | ||
| + | #SBATCH --gres gpu | ||
| + | |||
| + | export PATH=$HOME/ | ||
| + | export CONDA_PREFIX=$HOME/ | ||
| + | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: | ||
| + | . activate base | ||
| + | conda activate gpu_env | ||
| + | |||
| + | |||
| + | python3 test_tf.py | ||
| + | </ | ||
| + | |||
| + | Pasinagrinėkime pavyzdį paeilučiui: | ||
| + | <code shell> | ||
| + | $ #SBATCH -p gpu | ||
| + | </ | ||
| + | nukreipiama į PST su vaizdo plokščių resursais skaičiavimo resursą. | ||
| + | |||
| + | <code shell> | ||
| + | $ #SBATCH -n1 | ||
| + | </ | ||
| + | nurodome, koks CPU poreikis bus reikalingas | ||
| + | |||
| + | <code shell> | ||
| + | $ #SBATCH --gres gpu | ||
| + | </ | ||
| + | nurodome, koks GPU poreikis bus reikalingas (esant N GPU poreikiui būtų nurodoma gpu:N). | ||
| + | |||
| + | |||
| + | <code shell> | ||
| + | $ export PATH=$HOME/ | ||
| + | $ export CONDA_PREFIX=$HOME/ | ||
| + | $ export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: | ||
| + | $ . activate base | ||
| + | $ conda activate gpu_env | ||
| + | </ | ||
| + | pasiruošiame aplinką darbui (pirmą kartą ją reikia sukurti atskirai žr. aplinka_tf.sh) | ||
| + | |||
| + | <code shell> | ||
| + | $ python3 test_tf.py | ||
| + | </ | ||
| + | Kviečiame savo kodo skriptą, atlikti užduočiai su Python | ||
| + | |||
| + | |||
| + | |||
| + | Čia iškviečiamo Python kalbos skripto kodas, iškviečiant Tensorflow biblioteką ir patikrinat GPU prieigą, kurios dažniausiai reikia kuriant mašininio mokymo modelius. | ||
| + | |||
| + | <code shell test_tf.py> | ||
| + | import time | ||
| + | import tensorflow as tf | ||
| + | |||
| + | val = tf.test.is_gpu_available() | ||
| + | |||
| + | f = open(" | ||
| + | ts = time.time() | ||
| + | f.write(" | ||
| + | f.close() | ||
| + | </ | ||
| + | |||
| + | |||
| + | |||
| + | Čia iškviečiamo Python kalbos skripto kodas, iškviečiant Tensorflow biblioteką ir patikrinat GPU prieigą, kurios dažniausiai reikia kuriant mašininio mokymo modelius. | ||
| + | |||
| + | <code shell aplinka_tf.sh> | ||
| + | #!/bin/bash | ||
| + | |||
| + | wget https:// | ||
| + | bash Miniconda3-latest-Linux-x86_64.sh | ||
| + | # yes - on install, no - in init, path default one | ||
| + | |||
| + | export PATH=~/ | ||
| + | conda create --name gpu_env python=3.9 | ||
| + | . activate base | ||
| + | conda activate gpu_env | ||
| + | conda install -c conda-forge cudatoolkit=11.7 cudnn=8.1.0 | ||
| + | export LD_LIBRARY_PATH=$LD_LIBRARY_PATH: | ||
| + | |||
| + | |||
| + | # pirmؤ… kartؤ… susiraإ،ome reikiamas bibliotekas | ||
| + | pip3 install wheel | ||
| + | pip3 install pillow scikit-image | ||
| + | pip3 install tensorflow | ||
| + | |||
| + | </ | ||
| + | |||
| + | |||
hpc/gpu.1643649090.txt.gz · Keista: vartotojo linp
