- 检查电脑显卡是否支持cuda
https://developer.nvidia.com/cuda-gpus - 安装DXSDK_Jun10.exe
编译cuda例子时用到 - 下载cuda8.0安装
不安装驱动,其他安装
win10下一直失败,解决方法:
- 关掉杀毒软件和防火墙
- 删除C盘安装目录下的NVIDIA.Coporation目录
命令行下nvcc -V查看安装结果
- 编译CUDA示例程序
- -
- 配置theano
- 用户目录下建立.theanorc.txt文件
[global]
device = gpu
floatX = float32
[nvcc]
compiler_bindir=C:\Program Files (x86)\Microsoft Visual Studio 12.0\VC\bin
- 测试theano
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')
- 测试keras
from keras.models import Sequential
from keras.layers import Dense, Activation
# for a single-input model with 2 classes (binary):
model = Sequential()
model.add(Dense(1, input_dim=784, activation='sigmoid'))
model.compile(optimizer='rmsprop',
loss='binary_crossentropy',
metrics=['accuracy'])
# generate dummy data
import numpy as np
data = np.random.random((1000, 784))
labels = np.random.randint(2, size=(1000, 1))
# train the model, iterating on the data in batches
# of 32 samples
model.fit(data, labels, nb_epoch=10, batch_size=32)
参考:
1. http://efavdb.com/gpu-accelerated-theano-keras-with-windows-10/
2. http://www.jianshu.com/p/c245d46d43f0