問(wèn)題描述
最近勃蜘,各個(gè)操作系統(tǒng)針對(duì)Intel CPU的Meltdown
(熔斷)和Spectre
(幽靈)這兩個(gè)芯片級(jí)的設(shè)計(jì)漏洞推出了安全補(bǔ)丁。在更新了新的Kernel之后骇径,我們的AI服務(wù)器運(yùn)行的Ubuntu 16.04系統(tǒng)的Linux Kernel升級(jí)到了4.13.0-31-generic
。重啟之后者春,發(fā)現(xiàn)GPU無(wú)法正常使用破衔,出現(xiàn)無(wú)法登錄系統(tǒng)、分辨率改變等問(wèn)題钱烟,與Ubuntu 16.04安裝NVIDIA驅(qū)動(dòng)后循環(huán)登錄問(wèn)題中描述的癥狀一致晰筛。初步判斷原因是顯卡驅(qū)動(dòng)(nvidia driver 387.26
)和新的linux kernel(4.13.0-31-generic
)不兼容導(dǎo)致的嫡丙。去Nvidia的devtalk逛了一圈,確實(shí)很多人報(bào)告了這個(gè)問(wèn)題读第。
- 操作系統(tǒng):
ubuntu 16.04
- 系統(tǒng)內(nèi)核:
Linux version 4.13.0-31-generic
- GPU:
GTX 1080
- CUDA:
cuda-9.1
,cudnn-7.0.1
曙博,deb (local)安裝方式 - nvidia driver:
nvidia driver 387.26
Nvidia已經(jīng)更新了驅(qū)動(dòng),只需要安裝新的驅(qū)動(dòng)就可以解決linux kernel和nvidia driver不兼容的問(wèn)題怜瞒。不過(guò)父泳,devtalk安裝的新驅(qū)動(dòng)版本為nvidia driver 390
,在嘗試了單獨(dú)下載該驅(qū)動(dòng)的run文件安裝方式和deb (network)安裝方式之后吴汪,發(fā)現(xiàn)前一種安裝方式因?yàn)橹?code>nouveau問(wèn)題而安裝失敗惠窄,后一種依舊安裝387.26版本的驅(qū)動(dòng),最終放棄了這兩種安裝方式漾橙,采用了第三種PPA的途徑杆融。
解決方法
首先,在PPA GPU查看驅(qū)動(dòng)的版本(Current official release: nvidia-387
(387.34)...)
- 卸載現(xiàn)有GPU驅(qū)動(dòng)
$ sudo apt-get remove --purge nvidia-*
$ sudo apt-get autoremove
- PPA安裝新的GPU驅(qū)動(dòng)
# 如果沒(méi)有add-apt-repository命令霜运,安裝 software-properties-common即可
$ sudo add-apt-repository ppa:graphics-drivers
$ sudo apt-get update
# 安裝新的驅(qū)動(dòng)nvidia-387.34
$ sudo apt-get install nvidia-387
- 重啟
- deb (network)的方式安裝CUDA 9.1脾歇。如果用deb local的安裝方式,還是會(huì)安裝舊的驅(qū)動(dòng)版本淘捡。安裝好之后藕各,不要忘記設(shè)置環(huán)境變量。