cudav7.5+anaconda3.5+Theano+vs2012失败经验

失败经验总结

~具体详细配置看参考博客,这里只是记录一下失败的经验,希望对大家有帮助~

参考博客 http://blog.youkuaiyun.com/stormragewang/article/details/51261465


  • 本小白的本本一开始是win8的,谁知道cuda只支持win8.1,所以没办法,只能升级win8.1了,目前还不想升级win10.谁知道不升级还好,一升级很多软件都好像不能用了。悲剧 (T_T)
  • 刚开始是wamp不能用,最后分别各组件安装服务就能用了,这些都是题外话啦。

cuda安装失败

  • 第一次尝试卸载原显卡驱动,到官网找了对应系统的驱动包安装,还是失败。
  • 最后尝试打开vs,发现vs打不开,显示的是MSVCR110.dll 丢失,因为重装了系统可能丢失文件。按网上的找会对应文件会出现各种问题,最后在 ==控制面板-卸载-卸载vs,这时会弹出安装包的界面,点击修复==,vs能正常运行了,再尝试安装,终于成功了。
  • 按照博客的步骤测试一下,这是要注意选择对应版本的工程,刚开始选错了2013还以为自己又配置错了。

import theano 失败

  • 我的anaconda3.5之前已经有theano,之前记得是可以import的,但是重装系统后连import都不可以,报错显示了一大堆东西,后来选择了python3.4版本上运行。
  • 新建一个py34的环境,然后用activita py34进入环境,以后每次都要激活。
    [py34] C:\Users\yourname>

  • 这里的步骤有些就忘记了,反正就一步步有==pip install==和==conda install==安装对应的包,先安装 mingwlibpython, 然后再安装numpyscipy,在这里安装scipy又出现了什么VC++10.0 required的错误,最后还像是pip和conda都试了,出现安装100多M的mlk,装完就成功安装scipy,后面再安装theano就快了。

只能用cpu

  • 进入py34的环境,我不想环境变量换来换去,直接在py34上输入idle进入简单的开发环境,在里面直接写测试代码。
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')
  • 刚跑出来的一瞬间好开心,谁知道显示的是使用cpu,崩溃。最后发现漏了配置文件。在 ==C:\用户\你的用户名\== 里面新建.theanorc.txt
[global]  
floatX = float32  
device = gpu  
[nvcc]  
flags=-L(你自己anaconda的py34下的libs,忽略括号)
compiler_bindir=(你自己vs的VC的bin,忽略括号)
[cuda]
root = C:/Program Files/NVIDIA GPU Computing Toolkit/CUDA/v7.5
  • 配置完了,在idle上跑一下测试文件,第一次跑回build一堆东西的。
Using gpu device 0: GeForce GT 740M (CNMeM is disabled, cuDNN not available)
[GpuElemwise{exp,no_inplace}(<CudaNdarrayType(float32, vector)>), HostFromGpu(GpuElemwise{exp,no_inplace}.0)]
Looping 1000 times took 1.388921 seconds
Result is [ 1.23178029  1.61879349  1.52278066 ...,  2.20771813  2.29967761
  1.62323296]
Used the gpu

到这里终于告一段落,用期末复习的一天时间来搞这个,真是有点呵呵哒。不过遇到问题就是想解决心里才踏实。
至于环境变量什么的就不想再搞了,毕竟之前的版本里面就有sklearn和seaborn等库,以后就直接进idle吧,虽然不能进spyder,但是学习还是够用的。

加油!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值