tensorflow2.x使用cuda10.2(非常简单)

# 目前tensorflow2.2/2.3官方标配cuda10.1,也是官方在github给出方案,修改cuda软链接即可,非常简单。也不影响pytorch1.5(cuda10.2)的继续使用。

# 前提是你已经正确安装cuda10.2,检查:

nvidia-smi
nvcc -V

# 干正事(重点就这二步):

cd /usr/local/cuda-10.2/targets/x86_64-linux/lib/
ln -s libcudart.so.10.2.89 libcudart.so.10.1

cd /usr/local/cuda-10.2/extras/CUPTI/lib64
ln -s libcupti.so.10.2.75 libcupti.so.10.1

# 检查添加路径:

vim /etc/profile
export CUDA_HOME=/usr/local/cuda-10.2
export LD_LIBRARY_PATH=${CUDA_HOME}/lib64:${CUDA_HOME}/extras/CUPTI/lib64
export PATH=${CUDA_HOME}/bin:${PATH}
source /etc/profile

# 检查GPU:

>python
>>>import tensorflow as tf
>>>tf.__version__
2.2.0
>>>tf.test.is_gpu_available()
True
>>>tf.config.list_physical_devices('GPU')
[PhysicalDevice(name='/physical_device:GPU:0', device_type='GPU'),
 PhysicalDevice(name='/physical_device:GPU:1', device_type='GPU'),
 PhysicalDevice(name='/physical_device:GPU:2', device_type='GPU'),
 PhysicalDevice(name='/physical_device:GPU:3', device_type='GPU')]

大功告成!

nohup python train_tf_model.py > log.txt 2>&1 &
watch -n 0.1 -d nvidia-smi     #每隔0.1秒刷新一次
tailf log.txt

tensorboard --logdir=callbacks --host=xxx.xx.xxx.xx 服务器地址

摘录自https://blog.csdn.net/sinat_20174131/article/details/106807448

Ubuntu下更新NVIDIA显卡驱动导致的重启无法进入操作系统

在外网上搜索一番后,终于找到了症结所在:Ubuntu内核bug导致gdm3和nvidia驱动冲突,使得gdm3无法正常启动图形界面,而gdm不断尝试启动的后果就是屏幕的闪烁。

解决方法

sudo apt purge gdm gdm3 # 卸载gdm和gdm3
sudo apt install gdm3 ubuntu-desktop    # 重新安装gdm3
systemctl restart gdm       # 重新启动gdm3服务

如果还是进不了。
看到登录界面,在右下角选Ubuntu wayload.

Ubuntu中安装NVIDIA显卡驱动

a. ubuntu 18.04默认安装了第三方开源的驱动程序nouveau,安装nvidia显卡驱动首先需要禁用nouveau,不然会碰到冲突的问题,导致无法安装nvidia显卡驱动。

编辑文件blacklist.conf

sudo vim /etc/modprobe.d/blacklist.conf

安装或使用vi

在文件最后部分插入以下两行内容

blacklist nouveau
 
options nouveau modeset=0

更新系统

sudo update-initramfs -u

没有信息显示,说明nouveau已被禁用,接下来可以安装nvidia的显卡驱动。

2. 在英伟达的官网上查找你自己电脑的显卡型号然后下载相应的驱动。
3. 在ubuntu下按ctrl+alt+f6进入命令行界面,(进入命令行的方式可能有所不同,)

然后在命令行界面下输入:

sudo service lightdm stop      //这个是关闭图形界面,不执行会出错。(执行该语句时提示no lightdm service loaded ,跳过即可)

然后卸载掉原有驱动:

sudo apt-get remove nvidia-*  (若安装过其他版本或其他方式安装过驱动执行此项)

4.

给驱动run文件赋予执行权限:

sudo chmod  a+x NVIDIA-Linux-x86_64-版本号.run

安装:

sudo ./NVIDIA-Linux-x86_64-410.78.run -no-x-check -no-nouveau-check -no-opengl-files //只有禁用opengl这样安装才不会出现循环登陆的问题

no-x-check:安装驱动时关闭X服务

-no-nouveau-check:安装驱动时禁用nouveau

-no-opengl-files:只安装驱动文件,不安装OpenGL文件
出现找不到cc文件的问题,要执行下面的语句,否则安装完成,建立软连接也无法找到cc文件

sudo apt-get install gcc
sudo apt-get install g++
sudo apt-get install make

The distribution-provided pre-install script failed! Are you sure you want to continue? 选择 yes 继续。
Would you like to register the kernel module souces with DKMS? This will allow DKMS to automatically build a new module, if you install a different kernel later? 选择 No 继续。
问题没记住,选项是:install without signing
问题大概是:Nvidia’s 32-bit compatibility libraries? 选择 No 继续。
Would you like to run the nvidia-xconfigutility to automatically update your x configuration so that the NVIDIA x driver will be used when you restart x? Any pre-existing x confile will be backed up. 选择 Yes 继续

这些选项如果选择错误可能会导致安装失败,没关系,只要前面不出错,多尝试几次就好。

挂载Nvidia驱动:

modprobe nvidia

检查驱动是否安装成功:

nvidia-smi