如何在 OSX 上使用带有 GPU 的 theano?
How to use theano with GPU on OSX?
OS: OSX 10.11.4
显卡:GeForce GT 750M,CUDA7.5
语言:PythonAnaconda 2.7
我已经按照 theano 的说明在我的 Mac 上设置了 CUDA:
- 设置路径:export PATH=/Developer/NVIDIA/CUDA-7.5/bin:$PATH
- 设置LD_LIBRARY_PATH:导出LD_LIBRARY_PATH=/Developer/NVIDIA/CUDA-7.5/lib:$LD_LIBRARY_PATH
- 创建了一个 .theanorc 文件并在 [cuda] 部分添加 CUDA_ROOT=/Developer/NVIDIA/CUDA-7.5
我从 theano 网站复制了代码并将其粘贴到 test.py 文件中:
from theano import function, config, shared, sandbox
import theano.tensor as T
import numpy
import time
vlen = 10 * 30 * 768 # 10 x #cores x # threads per core
iters = 1000
rng = numpy.random.RandomState(22)
x = shared(numpy.asarray(rng.rand(vlen), config.floatX))
f = function([], T.exp(x))
print(f.maker.fgraph.toposort())
t0 = time.time()
for i in range(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, T.Elemwise) for x in f.maker.fgraph.toposort()]):
print('Used the cpu')
else:
print('Used the gpu')
但是当我 运行 这一行时:
THEANO_FLAGS='floatX=float32,device=gpu0,nvcc.fastmath=True' python test.py
我收到这个错误:
nvcc fatal: The version ('70300') of the host compiler ('Apple clang') is not supported
警告如下所示:
WARNING (theano.sandbox.cuda): CUDA is installed, but device gpu0 is not available (error: cuda unavailable)
是不是因为我的Xcode版本(7.3版本)?如何解决这个问题?
我修复了这个错误:"nvcc fatal: The version ('70300').." 安装最新版本的 CUDA SDK 7.5.27,适用于 OSX 10.11.4
OS: OSX 10.11.4
显卡:GeForce GT 750M,CUDA7.5
语言:PythonAnaconda 2.7
我已经按照 theano 的说明在我的 Mac 上设置了 CUDA:
- 设置路径:export PATH=/Developer/NVIDIA/CUDA-7.5/bin:$PATH
- 设置LD_LIBRARY_PATH:导出LD_LIBRARY_PATH=/Developer/NVIDIA/CUDA-7.5/lib:$LD_LIBRARY_PATH
- 创建了一个 .theanorc 文件并在 [cuda] 部分添加 CUDA_ROOT=/Developer/NVIDIA/CUDA-7.5
我从 theano 网站复制了代码并将其粘贴到 test.py 文件中:
from theano import function, config, shared, sandbox
import theano.tensor as T
import numpy
import time
vlen = 10 * 30 * 768 # 10 x #cores x # threads per core
iters = 1000
rng = numpy.random.RandomState(22)
x = shared(numpy.asarray(rng.rand(vlen), config.floatX))
f = function([], T.exp(x))
print(f.maker.fgraph.toposort())
t0 = time.time()
for i in range(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, T.Elemwise) for x in f.maker.fgraph.toposort()]):
print('Used the cpu')
else:
print('Used the gpu')
但是当我 运行 这一行时:
THEANO_FLAGS='floatX=float32,device=gpu0,nvcc.fastmath=True' python test.py
我收到这个错误:
nvcc fatal: The version ('70300') of the host compiler ('Apple clang') is not supported
警告如下所示:
WARNING (theano.sandbox.cuda): CUDA is installed, but device gpu0 is not available (error: cuda unavailable)
是不是因为我的Xcode版本(7.3版本)?如何解决这个问题?
我修复了这个错误:"nvcc fatal: The version ('70300').." 安装最新版本的 CUDA SDK 7.5.27,适用于 OSX 10.11.4