Outils pour utilisateurs

Outils du site


cupy_vs_numpy

Ceci est une ancienne révision du document !


Cupy: calcul numpy avec CUDA

CuPy – NumPy-like API accelerated with CUDA

Ressources

Version de CUDA

  • Les exemples de cette page sont réalisés sur Xubuntu 18.04 et CUDA 10.0

Bibliothèques associées

  • scipy
  • opencv

Comment adapter un fichier numpy en cupy

Exemple avec l'intelligence du sémaphore

Numpy

Avec le script semaphore_ia.py

AMD FX(tm)-8320 Eight-Core Processor

Calcul avec numpy ... numpy ... numpy ... numpy ... 
Training: Shot 60000 Lettre 60000; Testing: Shot 10000 Lettre 10000
Training...
type(weight_list :) <class 'list'> 
len(weight_list) = 3 
    0 100 
    1 100 
    2 27
weights.npy enregistré
Testing...
Learningrate: 0.023 Résultat 87.4
Calcul en: 139.8 s

Cupy

Avec le script cupy_ia.py

cupy 7.3
Successfully installed cupy-7.3.0 fastrlock-0.4
Nvidia 1060 GTX

Calcul avec cupy ... cupy ... cupy ... cupy ... 
Training: Shot 60000 Lettre 60000; Testing: Shot 10000 Lettre 10000
Training...
type(weight_list :) <class 'list'> 
len(weight_list) = 3 
    0 100 <class 'cupy.core.core.ndarray'> 
    1 100 <class 'cupy.core.core.ndarray'> 
    2 27 <class 'cupy.core.core.ndarray'>
weights_cupy.npy enregistré
Testing...
Learningrate: 0.023 Résultat 89.9
Calcul en: 91.7 s

Soit un gain de 34% avec cupy
Il faudrait vérifier que toutes les datas sont bien chargées dans la RAM GPU, et qu'il n'y a pas de transfert entre RAM CPU et RAM GPU: en particulier, weight_list qui est une list de cupy array.

OpenCV

cupy_vs_numpy.1586877261.txt.gz · Dernière modification : 2020/04/14 15:14 de serge