2016-04-08 10 views
1

Ich habe libgpuarray wie in this link angegeben installiert.Gibt es eine Möglichkeit, die Intel HD Graphics 5000 GPU des MacBook in Python zu verwenden?

Der Test

python -c "import pygpu;pygpu.test()" 

gibt nur eine Folge von Fehlern, die alle mit der Endung

====================================================================== 
ERROR: pygpu.tests.test_blas.test_ger(4, 5, 'float32', 'f', 1, 1, False, True) 
---------------------------------------------------------------------- 
Traceback (most recent call last): 
    File "/opt/local/Library/Frameworks/Python.framework/Versions/Current/lib/python2.7/site-packages/nose/case.py", line 197, in runTest 
    self.test(*self.arg) 
    File "/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pygpu-0.2.1-py2.7-macosx-10.9-x86_64.egg/pygpu/tests/test_blas.py", line 155, in ger 
    gr = gblas.ger(1.0, gX, gY, gA, overwrite_a=overwrite) 
    File "pygpu/blas.pyx", line 127, in pygpu.blas.ger (pygpu/blas.c:2681) 
    File "pygpu/blas.pyx", line 44, in pygpu.blas.pygpu_blas_rger (pygpu/blas.c:1561) 
GpuArrayException: ('Device does not support operation', 8) 

Ist es sogar möglich, GPU-Programmierung mit der Intel HD Graphics 5000 zusammen mit MacBook (früh zur Verfügung gestellt zu tun 2014)?

Antwort

1

In der Regel gibt es GPU-Bibliotheken, um OpenCL und/oder CUDA zu nutzen. Also, es gibt wirklich 2 Fragen hier: 1) unterstützt Ihre CPU CUDA/OpenCL? und 2) Hat die bestimmte Bibliothek, die Sie verwenden möchten, Unterstützung dafür?

kann ich nicht beantworten # 2, wie ich mit dieser bestimmten Bibliothek nicht vertraut bin, aber in Bezug auf # 1: Ja, es ist möglich

Für den Anfang werden Sie nicht Unterstützung sehen CUDA auf Intel integrierte Grafik/CPUs

Bei älteren Prozessoren werden Sie auch nicht OpenCL Unterstützung sehen entweder

Sie nicht erwähnt Art von Macbook, die Sie haben, aber 2014 Airs und Vorteile der neueren Generation Haswell CPUs hatte, die zu tun haben OpenCL-Unterstützung: http://www.intel.com/content/www/us/en/support/graphics-drivers/000005524.html

Also, Hardware-weise, können Sie Grafikprogrammierung mit OpenCL mit der CPU/Laptop, die Sie haben, tun.

Wenn Sie OpenCL in Python verwenden Sie so etwas wie PyOpenCL

Aber ob spezifische Bibliotheken haben eine gute Unterstützung für diese Plattform Kombination verwenden können, ob libgpuarray mit integrierten Grafik arbeiten, ob Sie jede materielle Leistung sehen werden Anstieg mit der iGPU über nur mit der CPU ist eine ganze andere Frage

+0

Ja Simon, ich bin zuversichtlich, dass OpenCL arbeitet in meinem Mac getestet mit [diesem Programm] positiv (http://stackoverflow.com/questions/7892955/how -can-i-test-für-opencl-Kompatibilität), vergleichbar mit OpenCL 1.2. PyOpenCL wurde ebenfalls erfolgreich installiert. Ich brauche nur PyGPU, damit ich Theano mit GPU-Unterstützung nutzen kann. Gibt es noch etwas, was ich tun sollte? –

+0

Das ist knifflig, denn theano hat lange die größte Unterstützung für CUDA erhalten. Vor kurzem haben sie begonnen, an einem openCL-Backend zu arbeiten, aber zuletzt habe ich gehört, dass es extrem fehlerhaft ist und nicht viel Funktionalität übertragen wurde. Ich bin mir also nicht sicher, was Sie sonst noch tun könnten, um das Problem zu lösen, aber auch wenn Sie mir nicht sicher sein könnten, dass der aktuelle Stand von theano openCL die Mühe wert wäre. Sorry, ich könnte nicht mehr helfen – Simon

+0

Ich bemerkte, dass der Link, den Sie bereitgestellt haben, tatsächlich zu einer tief lehrenden Website ist. Wenn Ihr Interesse am maschinellen Lernen liegt und Sie nicht an Python gebunden sind, können Sie sich die openCL-Versionen von Caffe und Fackel ansehen. – Simon