ubuntu16.4 安装 tensorflow pycharm

ubuntu16.4 安装 tensorflow pycharm

最近做强化学习需要用到 linux,配置一下环境 cuda10.0,tensorflow1.14,nvidia435 驱动。遇到了不少问题,记录下来给自己一个参考。前面是正确的安装姿势。后面是出现一些问题的解决方式

Nvidia驱动安装

N 卡驱动遇上了不少坑
官网上有驱动下载。推荐选择 .run 的。(如果使用apt-get-install安装N卡驱动有概率进不了系统)。驱动版本需要和cuda版本对应,太老的驱动不支持新版 cuda。由于目前(19/09/04)tensorflow 依然是对应 cuda10.0。

我在安装 cuda 时把以前的435的驱动变成了418的驱动。

  • 先卸载旧驱动安装新驱动,
sudo apt-get --purge remove nvidia-418
  • 将开源驱动屏蔽。
    编辑 /etc/modprobe.d/blacklist.conf ,在文件后面加入 blacklist nouveau 。最好把下载的安装文件移动到home文件夹下。

crtl+alt+F1,进入纯文本界面。然后sudo /etc/init.d/lightdm stop停止x-window

运行之前下载好的安装文件。进入到安装文件的文件夹。这里是不能输入中文,所以之前说要出来。

chmod +x ./NVIDIA-Linux-x86_64-435.32.run
sudo ./NVIDIA-Linux-x86_64-435.32.run -no-x-check -no-nouveau-check -no-opengl-files

都选默认就可以了。大概率会报错Unable to load the “nvidia-drm” kernel module。没关系,其实应该是装成功了。感谢 zhanjzh的blog

重启 shutdown -r now

然后nvidia-smi,如果显示了显卡信息就说明装好了

cuda安装

在官网选择对应系统和版本下载。ubuntu安装下面会有安装命令。推荐下载.run文件。

下载完后 sudo sh ./cuda_10.0.130_410.48_linux.run。路径默认就可以,询问是否安装驱动看个人,我选 no。询问是否添加到库引用选 yes。卸载的话 /etc/cuda

如果是 .deb文件按照他的指令装完后需要添加路径vim ~/.bashrc文件末尾添加两行

export PATH=$PATH:/usr/local/cuda/bin
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH

保存,source ~/.bashrc更新。卸载的话sudo apt-get autoremove --purge cuda也可以试试sudo dpkg -P cuda-repo-ubuntu1604-10-0-local*,包名字根据版本定

装完之后用 nvcc -V测试,成功的话会显示 cuda 的版本,不成功可以看看/etc/local路径下有没有 cuda,有的话就是路径的问题。

cudnn安装

先到官网上下载 cudnn,需要注册一个开发者账户。版本我选择7.6.3。
将下载下来的 cudnn 解压,然后复制到 cuda 各个对应的文件夹内

tar -xzvf cudnn*
sudo cp cuda/include/cudnn.h /usr/local/cuda/include
sudo cp cuda/lib64/libcudnn* /usr/local/cuda/lib64
sudo chmod a+r /usr/local/cuda/include/cudnn.h /usr/local/cuda/lib64/libcudnn*

pycharm安装

pycharm 官网,选择 community 下载。

tensorflow安装

我使用的是 pycharm 自带的安装。点击右下角,选择 Interpreter Setting。点击右边的 +,搜索tensorflow-gpu。默认是1.14,就用这个。在装之前将自带的源换成清华的源,点击Manage Repositories输入 https://pypi.tuna.tsinghua.edu.cn/simple/

安装完了之后不出意外是用不了 GPU 的,会报 warning,意思就是找不到 cuda 和 cudnn。import tensorflow 能成功不意味gpu可以使用。需要在 pycharm 的右上角 run 里编辑里添加环境变量LD_LIBRARY_PATH /usr/local/cuda-10.0/lib64:$LD_LIBRARY_PATH

默认安装的 numpy1.17 会有 warning FutureWarning:Passing (type, 1) or ‘1type’。安装成1.14就好了

N卡驱动装完后Linux黑屏只有光标在闪

哇 当时都绝望了
启动黑屏很多人说是 grub 的问题。但是我通过 usb 启动盘选择 try ubuntu 后,重装了 grub 之后发现问题依旧,这时觉得是nvidia驱动问题。

卸载驱动需要先进系统,两种方法都可以

  1. usb安装盘进入后,切换到硬盘上的系统。先挂载sudo mount /dev/nvme0n1p3 /mnt

    注意这里的 nvme0n1p3 是我 ubuntu 所在的分区。使用fdisk -l找到你系统所在的分区。然后sudo grub-install --boot-directory=/mnt/boot dev/nvme0n1p3,这是修复 grub 的,没问题的可以不用改。然后sudo chroot /mnt切换到硬盘上的 bash。

  2. 开机选择 ubuntu advanced 选择进入 recovery 模式进入 root 终端

接着就是卸载和重装N卡驱动了。

pytorch

pytorch 使用 anaconda 安装,没有什么问题。使用torch.cuda.is_available()检查是否可以使用cuda


本文命令纯手打,可能存在错误。

参考

nvidia官网

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值