ubuntu18 N卡驅動安裝+cuda10.0+cudnn7.5+anaconda+tensorflow-gpu


 

1.驅動安裝

打開軟件更新,點擊附加驅動,選擇N卡的驅動

首先添加源
$ sudo add-apt-repository ppa:graphics-drivers/ppa $ sudo apt update
查看系統gpu設備
$ ubuntu-drivers devices

在此安裝nvidia-driver-410,執行
$sudo apt-get install nvidia-driver-410

更改后重啟電腦,查看GPU信息

至此驅動安裝好了

2.cuda10.0安裝

首先安裝環境依賴

$sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev

下載cuda10.0及其相關https://developer.nvidia.com/cuda-10.0-download-archive?target_os=Linux&target_arch=x86_64&target_distro=Ubuntu&target_version=1804&target_type=runfilelocal

下載完之后進入到下載的文件夾中,安裝

 $ sudo sh cuda_10.0.130_410.48_linux.run
第一個提示選擇no,其余的yes或者default

然后編輯環境變量,添加以下內容,並啟用: source ~/.bashrc

export CUDA_HOME=/usr/local/cuda
export PATH=$PATH:$CUDA_HOME/bin
export LD_LIBRARY_PATH=/usr/local/cuda-10.0/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}

之后,輸入 

$nvcc -V 

顯示如下內容表明安裝成功

$cd /usr/local/cuda-9.0/samples $sudo make
$./bin/x86_64/linux/release/deviceQuery
顯示如下內容


3.cudnn7.5的安裝
下載:https://developer.nvidia.com/rdp/cudnn-download
得到文件:cudnn-10.0-linux-x64-v7.5.0.56.tgz
進入到文件目錄,執行
$ tar zxvf cudnn-10.0-linux-x64-v7.5.0.56.tgz
解壓后得到 名為 cuda 的文件夾,需要將里面的幾個文件拷貝到已安裝的cuda文件夾下面,並賦予相應的權限
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
sudo chmod a+r /usr/local/cuda/lib64/libcudnn*
之后執行
cat /usr/local/cuda/include/cudnn.h | grep CUDNN_MAJOR -A 2
若顯示以下內容表明安裝成功


4.anaconda 安裝
下載得到文件 Anaconda3-2018.12-Linux-x86_64.sh
在文件目錄中,執行+
sudo sh Anaconda3-2018.12-Linux-x86_64.sh
出現如下選擇yes

最后選擇不安裝vs code
安裝完后需要執行
source ~/.bashrc

anaconda換源:

制定清華的源:

conda config --add channels https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/

有資源顯示源地址:

conda config --set show_channel_urls yes

5.tensorflow-gpu安裝

安裝前先安裝bazel, 參見官方安裝手冊

安裝完bazel后執行

conda install tensorflow-gpu

之后進入python 環境 導入一下tensorflow,

import tensorflow as tf

tf.__version__

hello = tf.constant('hello tensorflow')

sess = tf.Session()

sess.run(hello)

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM