參考
https://blog.csdn.net/wf19930209/article/details/81877822
http://blog.csdn.net/fdqw_sph/article/details/78745375
http://blog.csdn.net/wiinter_fdd/article/details/66523468
http://blog.csdn.net/liangyihuai/article/details/77842628
https://mxnet.incubator.apache.org/install/index.html
http://www.lxweimin.com/p/9ba7b257c91c
Nvidia驅動另一種安裝方法
https://blog.csdn.net/tjuyanming/article/details/80862290
卸載方法:
https://blog.csdn.net/l297969586/article/details/67632608
https://blog.csdn.net/FIELDOFFIER/article/details/54017297
使用軟件版本:cuda9.0,cudnn7.0.x堅決不用7.1!
系統安裝
問題1:雙顯卡電腦啟動會黑屏
解決方法:
- 在引導界面,按e進入grub編輯界面,在quiet splash 后面添加 acpi_osi=linux nomodeset
- 按F10接著引導啟動
- 進入登錄界面,輸入用戶名密碼,進入主界面,在命令行輸入代碼
sudo vim /etc/default/grub
找到 quiet splash 后面添加 acpi_osi=linux nomodeset
按:wq保存
sudo update-grub
重啟即可
下載安裝包
查看自己gpu顯卡型號
lspci | grep -i nvidia
驅動管網上下載安裝包NVIDIA-Linux-x86_64-390.25.run
網址http://www.nvidia.cn/page/home.html
下載cuda_9.1.85_387.26_linux.run
網址https://developer.nvidia.com/cuda-downloads
注意下載runfile文件
下載cudnn-9.1-linux-x64-v7.1.tgz 需要注冊登錄后才可以下載,cudnn版本一定要支持cuda版本
網址https://developer.nvidia.com/cudnn
nvidia 驅動安裝
禁用nouveau
ubuntu自帶的nouveau驅動會影響cuda安裝,不當操作會導致黑屏和登陸循環。參考https://linuxconfig.org/how-to-disable-nouveau-nvidia-driver-on-ubuntu-18-04-bionic-beaver-linux
安裝中遇到的問題:安裝驅動會無限循環登錄界面
解決方法:在登錄界面按住ctril+alt+F1 進入tty界面輸入用戶名和密碼登錄,卸載原有NVIDIA驅動
sudo apt-get remove --purge nvidia-*
sudo apt-get autoremove
安裝中遇到 unable load Nvidia-drm
在這兩個目錄中找到有關nvidia文件
grep nvidia /etc/modprobe.d/* /lib/modprobe.d/*
如果有blacklist-nvidia
文件,把它刪除
然后運行
sudo update-initramfs -u
sudo reboot
安裝中遇到nvidia-smi 可以使用,但是nvidia-setting不能使用
這是在/etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT 中設置了 acpi_osi=linux nomodeset 的結果
在/etc/default/grub
刪除該代碼并添加
acpi_rev_override=5 nouveau.runpm=0
sudo update-grub
即可
安裝一些依賴(網上借鑒,個人安裝沒有遇到)
我在安裝過程中遇到下圖中的問題
網上查找發現遇到的人不多,經查找,可能是因為缺少32位的庫文件(我安裝64位的,為啥需要這個。。。暈),需要安裝依賴
sudo apt-get install lib32ncurses5
sudo apt-get install lib32z1
安裝后可解決
然后開始安裝驅動,繼續在tty界面輸入命令
sudo service lightdm stop
(*網上借鑒,個人沒有遇到)此時可能關不了,即使現實該操作OK,但是一會再開啟時會有問題,可以在此基礎上增加操作,手動刪除X圖像界面,圖像界面X在/tmp路徑下,具體操作:
cd /tmp
sudo rm -rf .X*
這樣就可以把關于X的圖像界面文件全部刪除(每次重啟都會再次生成,所以會在alt+ctrl+f1界面下操作)
安裝nvidia driver
sudo chmod a+x NVIDIA-Linux-x86_64-390.25.run
sudo ./NVIDIA-Linux-x86_64-390.25.run -no-x-check -no-nouveau-check -no-opengl-files
- –no-x-check 安裝驅動時關閉X服務
- –no-nouveau-check 安裝驅動時禁用nouveau
- –no-opengl-files 只安裝驅動文件,不安裝OpenGL文件
提示步驟
Accept->Continue installation->sign the kernel module(為內核模塊簽名)?選擇是->使用已有的密鑰給模塊簽名還是重新生成?選重新生成密鑰->是否刪除已生成的密鑰文件?選擇否->安裝完成
問題:The target kernel has CONFIG_MODULE_SIG set,which means that it supports cryptographic signatures on kernel module. On some systems, the kernel may refuse to load modules without a valid signature from a trusted key.This system also UEFI Secure Boot enabled; many distributions enforce module signature verification on UEFI systems when Secure Boot is enabled. Would you like to sign the NVIDIA kernel module?
解決:禁用UEFI安全啟動功能
啟動電腦,然后按電腦的設置訪問UEFI,本機器按[F2]鍵,不同的制造商可能有不同的設置,具體請參考主板說明書。
根據不同的UEFI版本,安全啟動選項通常在一個選項卡下,這個選項卡可能被命名為“Boot”、“Security”或者“Authentication”,在類似的選項卡中查找,我們會發現一個“Secure Boot”選項,該選項默認設置為“Enabled”,選中它并回車,將其設置為“Disabled”,按[Apply]鍵存儲設置,重新啟動電腦即可安裝我們需要的操作系統。
sudo reboot
進入主界面輸入
nvidia-smi
顯示上圖則說明成功
顯卡切換
prime-select intel
prime-select nvidia
安裝cuda9.1
找到下載文件的路徑
chmod a+x cuda_9.1.85_387.26_linux.run
sudo ./cuda_9.1.85_387.26_linux.run
單擊回車,一路往下運行,直到提示“是否為NVIDIA安裝驅動nvidia-384?”,選擇否,因為已經安裝好驅動程序了,其他的全都是默認,不過要記住安裝位置,默認是安裝在/usr/local/cuda文件夾下。
配置環境變量,運行如下命令打開profile文件
sudo gedit /etc/profile
打開文件后在文件末尾添加路徑,也就是安裝目錄,命令如下:
export PATH=/usr/local/cuda-9.1/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64$LD_LIBRARY_PATH
保存,然后重啟電腦
sudo reboot
測試CUDA的例子
cd /usr/local/cuda-9.1/samples/1_Utilities/deviceQuery
sudo make
./deviceQuery
如果顯示的是關于GPU的信息,則說明安裝成功了。
最后你會看到cuda驅動、sample、tookit已經安裝成功,但是缺少一些庫。
sudo apt-get install freeglut3-dev build-essential libx11-dev libxmu-dev libxi-dev libgl1-mesa-glx libglu1-mesa libglu1-mesa-dev
環境變量配置
安裝完畢后,再聲明一下環境變量,并將其寫入到 ~/.bashrc 的尾部:
export PATH=/usr/local/cuda-9.1/bin${PATH:+:${PATH}}
export LD_LIBRARY_PATH=/usr/local/cuda-9.1/lib64${LD_LIBRARY_PATH:+:${LD_LIBRARY_PATH}}
然后設置環境變量和動態鏈接庫,在命令行輸入:
sudo gedit /etc/profile
在打開的文件末尾加入:
export PATH=/usr/local/cuda/bin:$PATH
保存之后,創建鏈接文件:
sudo gedit /etc/ld.so.conf.d/cuda.conf
在打開的文件中添加如下語句:
/usr/local/cuda/lib64
然后執行
sudo ldconfig
使鏈接立即生效。
安裝cudnn
繼續Ctrl+alt+F1進入的字符界面
進入解壓后的cudnn-9.1-linux-x64-v7.1.tgz文件cuda,在終端執行下面的指令安裝:
tar -zxvf cudnn-9.1-linux-x64-v7.1.tgz
cd cuda
sudo cp lib64/lib* /usr/local/cuda/lib64/
sudo cp include/cudnn.h /usr/local/cuda/include/
然后更新網絡連接:
cd /usr/local/cuda/lib64/
sudo chmod +r libcudnn.so.7.0.3 # 自己查看.so的版本
sudo ln -sf libcudnn.so.7.0.3. libcudnn.so.7
sudo ln -sf libcudnn.so.7 libcudnn.so
sudo ldconfig
重新啟動圖形化界面
sudo service lightdm start
再Ctrl+alt+F7退出Text Mode。
使用anaconda創建虛擬化環境
conda create -n mxnet python=3.6
激活虛擬化環境
conda activate mxnet
在虛擬化環境中使用pip安裝gpu mxnet
Install MXNet with GPU support using CUDA 9.1
pip install mxnet-cu91
install graphviz(Optional, needed for graph visualization using mxnet.viz package).
sudo apt-get install graphviz
pip install graphviz
Validate the installation by running simple MXNet code described here.
Experimental Choice If You would like to install mxnet with Intel MKL, try the experimental pip package with MKL:
pip install mxnet-cu91mkl
python
>>> import mxnet as mx
>>> a = mx.nd.ones((2, 3), mx.gpu())
>>> b = a * 2 + 1
>>> b.asnumpy()
array([[ 3., 3., 3.],
[ 3., 3., 3.]], dtype=float32)
運行成功則安裝成功
pycharm 使用虛擬環境
File->setting->Project:XXXX->Project Interperter
選擇anaconda3/envs/mxnet/bin/python3.6,選擇后系統會load相關的配置,這樣就可以愉快的在PyCharm中使用Anaconda的虛擬環境了。
遇到的坑(沒遇到)
練習的時候需要使用Graphviz這樣一個包,這是一個把數據圖形化的包。但是不管是通過brew brew install graphviz
還是Anaconda conda install -c anaconda graphviz
安裝,在代碼中始終無法導入。
最后通過查看這里解決。大概的意思是graphviz的conda包并不是一個python包,通過conda install -c anaconda graphviz
只是把相關的文件下載下來,還需要通過pip install graphviz
安裝。這樣就能在代碼里順利導入相關的包了。