2016-04-07 1 views
0

J'ai essayé d'exécuter le programme de test pour l'utilisation du GPU:Comment faire pour que Theano utilise le GPU intégré dans MacBook Air?

from theano import function, config, shared, tensor, sandbox 
import numpy 
import time 
vlen=10*30*768 #10x #coresx #threadspercore 
iters = 1000 
rng = numpy.random.RandomState(22) 

x = shared(numpy.asarray(rng.rand(vlen), config.floatX)) 
f = function([], tensor.exp(x)) 
print(f.maker.fgraph.toposort()) 
t0 = time.time() 
for i in xrange(iters): 
    r = f() 
t1 = time.time() 
print("Looping %d times took %f seconds" % (iters, t1 - t0)) 
print("Result is %s" % (r,)) 
if numpy.any([isinstance(x.op, tensor.Elemwise) and ('Gpu' not in type(x.op).__name__) 
       for x in f.maker.fgraph.toposort()]): 
    print('Used the cpu') 
else: 
    print('Used the gnu') 

Il montre que ce (même après l'installation libgpuarray):

[Elemwise{exp,no_inplace}(<TensorType(float64, vector)>)] 
Looping 1000 times took 2.723539 seconds 
Result is [ 1.23178032 1.61879341 1.52278065 ..., 2.20771815 2.29967753 
    1.62323285] 
Used the cpu 

Je voudrais savoir comment utiliser le GPU intégré du MacBook Air (début 2014).

Mon processeur a Intel HD Graphics 5000 - pas NVIDIA et donc pas compatible CUDA Beaucoup links suggèrent l'utilisation d'OpenCL. Cela devait également être pré-installé avec OS-X. Mais je ne peux pas faire la tête ou la queue hors des liens dans le web.

Je n'ai pas trouvé beaucoup d'aide pour configurer Theano dans le docs non plus.

J'ai juste besoin que Theano utilise le GPU intégré de mon Mac. Est-ce possible? Si c'est le cas, comment? Quels sont ses prérequis?

+0

Comment avez-vous exécuté le code? Avez-vous inclus THEANO_FLAGS = device = gpu? De toute façon, il ne me semble pas que vous obtiendrez une accélération raisonnable en utilisant une carte GPU intégrée. – sygi

+0

Comment spécifier ces balises, @sygi? Dois-je le faire dans la ligne de commande? J'utilise un cahier Ipython pour ça. Pourriez-vous s'il vous plaît fournir une instruction spécifique pour cela? –

Répondre

0
THEANO_FLAGS=device=opencl0:1 python ~/check_GPU.py 
+0

Bienvenue dans Stack Overflow! Bien que cet extrait de code puisse résoudre la question, [y compris une explication] (// meta.stackexchange.com/questions/114762/explaining-entirely-code-based-answers) aide vraiment à améliorer la qualité de votre message. Rappelez-vous que vous répondez à la question pour les lecteurs dans le futur, et que ces personnes pourraient ne pas connaître les raisons de votre suggestion de code. Essayez également de ne pas surcharger votre code avec des commentaires explicatifs, ceci réduit la lisibilité du code et des explications! – kayess