[PYTHON] [Est-ce explosif!?] Configuration pour utiliser la version GPU de Tensorflow sous OSX

** * Ajouté le 12 mai 2016 Cet article est complètement obsolète car il a été fusionné dans le référentiel officiel Tensorflow. ** ** -> Le GPU OSX est pris en charge par Tensorflow Eh bien, la méthode d'installation ne change pas beaucoup.

** * Parce que ce n'est pas officiel, nous ne pouvons pas assumer la responsabilité quoi qu'il arrive. ** **

Je me suis souvenu que mon Macbook Pro (Retina, 15 pouces, mi-2014) avait un NVIDIA GeForce GT 750M en plus de ʻIntel Iris Pro, alors j'ai dit," 3.0 sur Cuda. J'ai pensé, et quand je cherchais un moyen, il y avait des gens qui le faisaient déjà à l'étranger, alors je quitterai la procédure lorsque j'y aurai fait référence. Cependant, il revient à ver0.6.0 Puisque bazel est utilisé, ceux qui ont installépip, Virtualenv , docker` devront peut-être d'abord installer à partir de la source.

Peut-être le genre que tu peux aller

Numéro de modèle GPU
iMac (21-inch, Late 2012) NVIDIA GeForce GT 640M
iMac (21-inch, Late 2012) NVIDIA GeForce GT 650M
iMac (27-inch, Late 2012) NVIDIA GeForce GTX 660MX
iMac (27-inch, Late 2012) NVIDIA GeForce GTX 675MX
iMac (27-inch, Late 2012) NVIDIA GeForce GT 680M
iMac (21.5-inch, Late 2013) NVIDIA Geforce GT 750M
iMac (27-inch, Late 2013) NVIDIA Geforce GT 755M
iMac (27-inch, Late 2013) NVIDIA Geforce GTX 775M
iMac (27-inch, Late 2013) NVIDIA Geforce GTX 780M
MacBook Pro (15-inch, Mid 2012)
MacBook Pro (Mid 2012)
MacBook Pro (15-inch, Early 2013)
NVIDIA GeForce GT 650M
MacBook Pro (15-inch, Late 2013)
MacBook Pro (15-inch, Mid 2014)
NVIDIA GeForce GT 750M

installer

Source de référence: Fabrizio Milo @ How to compile tensorflow with CUDA support on OSX

Tout d'abord, installez Cuda. J'étais «brasserie».

$ brew upgrade
$ brew install coreutils
$ brew cask install cuda

Vérifiez la version(7.5.Devrait être 20)
$ brew cask info cuda 

Téléchargez la bibliothèque libCudnn depuis NVIDIA. (Enregistrement requis) https://developer.nvidia.com/cudnn. Voici la version que j'ai téléchargée: cudnn-7.0-osx-x64-v4.0-prod.tgz

Déplacez le contenu de celui téléchargé vers les emplacements correspondants de lib et ʻinclude dans / usr / local / cuda /`, respectivement.

Ajoutez le chemin à .bash_profile

$ vim ~/.bash_profile
export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:$DYLD_LIBRARY_PATH

Apportez Pull Request # 644 pour activer le GPU sur OSX dans le référentiel de Tensorflow

$ cd tensorflow
$ git fetch origin pull/664/head:cuda_osx
$ git checkout cuda_osx

Réinstaller Tensorflow

$ TF_UNOFFICIAL_SETTING=1 ./configure                                                                                                     
                                                                                                                                          
WARNING: You are configuring unofficial settings in TensorFlow. Because some external libraries are not backward compatible, these setting
s are largely untested and unsupported.                                                                                                   
                                                                                                                                          
Please specify the location of python. [Default is /usr/local/bin/python]:                                                                
Do you wish to build TensorFlow with GPU support? [y/N] Y                                                                                 
GPU support will be enabled for TensorFlow                                                                                                
Please specify the Cuda SDK version you want to use. [Default is 7.0]: 7.5                                                                
Please specify the location where CUDA 7.5 toolkit is installed. Refer to README.md for more details. [Default is /usr/local/cuda]:       
                                                                                                  
Please specify the Cudnn version you want to use. [Default is 6.5]: 4                                                                     
Please specify the location where cuDNN 4 library is installed. Refer to README.md for more details. [Default is /usr/local/cuda]:        
Please specify a list of comma-separated Cuda compute capabilities you want to build with.                                                
You can find the compute capability of your device at: https://developer.nvidia.com/cuda-gpus.                                            
Please note that each additional compute capability significantly increases your build time and binary size.                              
[Default is: "3.5,5.2"]: 3.0                                                                                                              
Setting up Cuda include                                                                                                                   
Setting up Cuda lib                                                                                                                       
Setting up Cuda bin                                                                                                                       
Setting up Cuda nvvm                                                                                                                      
Configuration finished   

$ bazel build -c opt --config=cuda //tensorflow/cc:tutorials_example_trainer

$ bazel build -c opt --config=cuda //tensorflow/tools/pip_package:build_pip_package

$ bazel-bin/tensorflow/tools/pip_package/build_pip_package /tmp/tensorflow_pkg

$ pip install /tmp/tensorflow_pkg/tensorflow-Dans mon tmp-whl

Test de confirmation.py


import tensorflow as tf

# Creates a graph.
a = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[2, 3], name='a')
b = tf.constant([1.0, 2.0, 3.0, 4.0, 5.0, 6.0], shape=[3, 2], name='b')
c = tf.matmul(a, b)

# Creates a session with log_device_placement set to True.
sess = tf.Session(config=tf.ConfigProto(log_device_placement=True))

# Runs the op.
print sess.run(c)

Si l'erreur indique "Raison: image non trouvée", il semble que la bibliothèque Cuda est introuvable, vérifiez donc le chemin.

$ export DYLD_LIBRARY_PATH=/usr/local/cuda/lib:$DYLD_LIBRARY_PATH

Vous devriez pouvoir y aller.

Essayons de mesurer la vitesse de traitement avec le CNN de "Hiranaga MAIST".

。。。

Cette. heavy_breathing.jpg

J'ai préparé l'image avec l'idée de **, mais cela s'est accéléré. ** **

Environ 52 minutes avec le processeur

CPU-MAIST.py


i 19900, training accuracy 1 cross_entropy 0.205204
test accuracy 0.943847
elapsed_time:3312.28295398[sec]

GPU-MAIST.py


i 19900, training accuracy 1 cross_entropy 0.0745807
test accuracy 0.945042                              
elapsed_time:1274.27083302[sec]

Environ 21 minutes avec GPU.

Si diverses autres applications sont en cours d'exécution, la mémoire du GPU peut être assez petite dans la partie Mémoire libre: du journal qui apparaît pendant l'exécution. S'il est trop petit, une erreur se produira en raison d'une mémoire insuffisante. C'est un ordinateur portable, donc je ne peux pas m'en empêcher. Il récupérera dès que vous déposerez l'application ou que vous la redémarrerez, donc c'est approprié.

Recommended Posts

[Est-ce explosif!?] Configuration pour utiliser la version GPU de Tensorflow sous OSX
Jusqu'à ce que l'environnement Deep Learning (TensorFlow) utilisant le GPU soit préparé pour Ubuntu 14.04
[Est-ce explosif!?] Configuration pour utiliser la version GPU de Tensorflow sous OSX
Lire partiellement les paramètres dans l'ancien TensorFlow 1.x
Installation de TensorFlow 0.11.0rc2 sur OS X El Capitan (10.11.6)
Installez LightGBM dans l'environnement virtualenv OSX
TensorFlow 2.1 est arrivé!
TensorBoard facile de 3 minutes dans Google Colab (en utilisant TensorFlow 2.x)
Lorsque "ERREUR: HTTP n'est pas pris en charge." S'affiche dans mpsyt
Gtk-ERROR **: 04: 28: 17.451: symboles GTK + 2.x détectés. L'utilisation de GTK + 2.x et GTK + 3 dans le même processus n'est pas prise en charge. Erreur
Utilisation de plusieurs versions de Python sur Mac OS X (2) Utilisation
Je suis tombé sur TensorFlow (Quelle est la mémoire du GPU)
Étapes pour installer la dernière version d'OpenCV sur OS X El Capitan sans Homebrew
Utilisation de plusieurs versions de Python sur Mac OS X (1) Installation de plusieurs ver
Installez la dernière version d'Apache httpd 2.4 à partir des sources sur Cent OS 8
Version de juin 2017 pour créer un environnement Tensorflow / Keras sur une instance GPU d'AWS
J'ai essayé d'installer TensorFlow (version GPU) sur Ubuntu
J'ai installé Pygame avec Python 3.5.1 dans l'environnement de pyenv sur OS X
En Python, changez le comportement de la méthode en fonction de la façon dont elle est appelée
J'ai essayé la détection d'objets avec YOLO v3 (TensorFlow 2.1) sur le GPU de windows!
Utilisez la dernière version de PyCharm sur Ubuntu
Installation de TensorFlow 0.11.0rc2 sur OS X El Capitan (10.11.6)
Remarques sur l'utilisation de TensorFlow sur Bash sur Ubuntu sous Windows
J'ai essayé le tutoriel MNIST de tensorflow pour les débutants.
Création d'un environnement pour "Tello_Video" sur Mac OS X
Essayez d'utiliser E-Cell 4 sur Windows 7 ou Mac OS X
Remarques sur l'installation de Chainer 1.5 pour GPU sous Windows
Dessinez sur Jupyter en utilisant la fonction de tracé des pandas
Exécutez la version GPU tensorflow sur une instance ponctuelle d'AWS EC2
La valeur de retour de len ou unichr peut changer selon qu'il s'agit de UCS-2 ou UCS-4.