ubuntu14.04安装CUDA+theano

声明:
    该服务器系统是ubuntu14.04 64bit
   
安装显卡驱动:(来源:http://blog.csdn.net/xizero00/article/details/43227019/)
    在线安装:
        首先验证该服务器是否有nvida的显卡:
            lspci | grep -i nvidia
        查看该服务器的linux版本:
            uname -m && cat /etc/*release
        查看该服务器中的gcc版本:
            gcc --version
        下载nvidia cuda的仓库安装包:
            在线下载:
                wget http://developer.download.nvidia.com/compute/cuda/repos/ubuntu1404/x86_64/cuda-repo-ubuntu1404_7.5-18_amd64.deb
            离线下载再上传:
                到官网下载deb(network)版本,在上传到服务器中。
                我上传的位置是/home/handsight/Tanghy/
        安装该仓库安装包:
            sudo dpkg -i cuda-repo-<distro>_<version>_<architecture>.deb
        更新本地仓库:
            sudo apt-get update
        安装CUDA以及显卡驱动:
        (安装cuda的同时就会把显卡驱动也全部安装好,这个真的很方便。但是下载的时间真的很长!!)
            sudo apt-get install cuda
    
    这里提供的安装方法和官方的说明说基本一致,跟网上的很多安装方法不太一样,网上的方法相对比较复杂,容易出错。
        (1) 有些教程是手工安装显卡驱动,手工屏蔽系统的默认开源驱动
        (2) 安装CUDA也是手工进行
    使用本安装方法的时候一定要注意几个问题:
        (1) cuda6.5已经不支持老旧的显卡了所以sm11 等等都必须删除。
            可以参考我的另一个文章,关于编译opencv3.0的
        (2) ubuntu14.04是64位的,并且不要一开始就更新系统补丁什么的,
            因为系统更新过之后,再安装显卡驱动就会无法进入图形界面,
            我查看了相关的日志发现是卡在了dbus那边。所以,我建议一安
            装好ubuntu 14.04就不要更新系统补丁。
    
    设置环境变量:
        该博客介绍的配置方法:(貌似这种方式每次连接服务器的时候都需要配置一下才行)
            $ export PATH=/usr/local/cuda-6.5/bin:$PATH  
            $ export LD_LIBRARY_PATH=/usr/local/cuda-6.5/lib64:$LD_LIBRARY_PATH
        我使用的方法:
            sudo vi /etc/environment
            添加以下内容:
                在PATH的最后添加:  :/usr/local/cuda-6.5/bin  (第二个冒号是添加的内容)
                在空白处添加:LD_LIBRARY_PATH="/usr/local/cuda-6.5/lib64"
    设置完毕之后,你还可以选择是否安装cuda附带的示例代码(<dir>表示你要安装的位置,你可以将<dir>替换成~):
        $ cuda-install-samples-6.5.sh <dir>
    
    接下来做一些验证工作:
    查看显卡的驱动版本:
        cat /proc/driver/nvidia/version
    查看nvcc编译器的版本:
        nvcc -V i
    编译cuda的示例代码:
        cd Tanghy/NVIDIA_CUDA-7.5_Samples
        make
    进入bin路径运行devicequery
        cd /bin/x86_64/linux/release
        ./deviceQuery

安装Theano环境:
    需要预先安装的工具:
        sudo apt-get install -y python-dev python-pip python-nose gcc g++ git gfortran
    安装BLAS, LAPACK, ATLAS:
        这些软件包必须在安装Numpy和Scipy之前安装
        sudo apt-get install -y libopenblas-dev liblapack-dev libatlas-base-dev
    安装NumPy:
        在官方教程中使用了apt-get方式安装的,但是貌似我确实在安装后没有通过单元测试,有不少错误产生。
        尤其是后面安装的SciPy更是如此。可能和我之前没有把需要的工具包安装齐全有关系吧。
        # 安装NumPy,这个安装过程需要等待会,因为需要编译,所以得花一点时间。
        # 实际上后面安装的SciPy和Theano都会花时间编译的,整个安装过程还是要挺久的。
        sudo pip install numpy
        # 进行测试。
        python -c 'import numpy; numpy.test()'
        必须要保证上面的测试通过,然后再继续下一步,确保每一步都是正确的。没有Errors则通过测试。
    安装SciPy:
        # 安装方法,耐心等待编译吧:
        sudo pip install scipy
        # 进行测试
        python -c 'import scipy; scipy.test()'
        【这里安装scipy的时候总是有错误,在网上看了一些博客,最终解决方案如下:
            先使用apt-get的方法把scipy安装好:
                sudo apt-get install scipy
            卸载scipy:
                sudo apt-get remove scipy
            使用pip安装scipy:
                sudo pip install scipy
            搞定!
        】
        必须保证scipy也正常通过测试,这样才可以继续安装下面的Theano。
    安装Theano:
        # 安装方法,还是要耐心等待编译安装的,感觉比较耗时
        sudo pip install Theano
        # 开始测试
        sudo python -c 'import theano; theano.test()'
        这里的测试很久都没有通过,一开始是权限的问题,解决办法如下:
            sudo chown -R handsight:handsight .theano
        再然后说缺少nose_parameterized,解决办法如下:
            sudo pip install nose_parameterized

        最后测试通过了!


但好像有警告说pyCUDA导入失败。另外,就连经典的test.py的运行也都是在CPU上面,根本没有进入GPU。
尝试寻找解决办法:最后发现CUDA驱动和CUDA运行环境不匹配!!!
唉~~什么鬼啊!
所以在官网手动下载驱动吧,由于我们的显卡是GeForce GTX TITAN X,也就是900系列吧。
下载后(NVIDIA-Linux-x86_64-361.45.11.run)直接运行安装,可能会遇到该文件不可执行,修改一下执行权限就好了。
在安装的时候可能会遇到一些奇怪的问题,安装失败,可以参考http://www.cnblogs.com/platero/p/4070756.html
接下来,test.py还是运行在CPU下的。
后来又发现原来是cuDNN没有安装,OK,继续折腾吧:(http://www.linuxdiyf.com/linux/18652.html这里给了帮助)
所以在网上下载cuDNN,安装网站中的程序一步步走通,就搞定了!唉,终于搞定了!!
但是重启服务器之后发现,shit,还是运行在CPU中,也就是说按照网上说的环境变量配置方法只是一次性的!
那么如何永久性生效了?http://soft.chinabyte.com/os/169/11412169.shtml里面介绍得很详细
终于终于是运行在GPU上的了,到目前为止theano可以宣告安装完成!!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值