Install STRIX-GTX1060-DC2O6G with NVIDIA driver
はじめに
PCを組んでCnetOS7.6.1810を入れた.
CPUは i7-9700K なので, インテル® UHD グラフィックス 630 が動作する想定だったが, Cinnamon がソフトウェアレンダリングしかしてくれない.
大したことしなくても定常的にCPU使用率20〜60%程度を維持し続ける. 無駄にCPUを使いまくるので,ドライバをいじるのか,グラボ挿すか,対応が必要.
ドライバのソースはすごい勢いでコミットされているようだし,ビルド手順も整備されている様子. でも,何でもかんでもビルドするのは面倒. いずれCUDAも使ってみたいのでNVIDIAのグラボを挿すことにした.
Installation instructions: Once you have downloaded the driver, change to the directory containing the driver package and install the driver by running, as root, sh ./NVIDIA-Linux-x86_64-418.30.run One of the last installation steps will offer to update your X configuration file. Either accept that offer, edit your X configuration file manually so that the NVIDIA X driver will be used, or run nvidia-xconfig
どこかに公式で詳細な手順あったっけ...
ということで,ドライバ導入の流れをメモしておく.
ドライバ導入前の状態
ROG STRIX な GTX1060 を買った.
ちなみに,名前も見た目もそっくりな2タイプある.
- STRIX-GTX1060-DC2O6G
- こっちのほうが若干コアクロック高め
- こっちのほうが若干お値段控えめ
- STRIX-GTX1060-DC26G
ということで DC2O6G の方を買った.
デュアルファンでヒートパイプがメカメカしい感じがスーパーかっこいい. パッケージもスーパーかっこいい.
ASUSの図解はさっぱりわからん.
挿すとこんな感じ.スペース的にはまだまだ余裕が有る.
ハードウェアはこんな感じで認識されている.
# lspci | grep -i vga 00:02.0 VGA compatible controller: Intel Corporation Device 3e98 01:00.0 VGA compatible controller: NVIDIA Corporation GP106 [GeForce GTX 1060 6GB] (rev a1)
$ sudo lshw -C video *-display description: VGA compatible controller product: GP106 [GeForce GTX 1060 6GB] vendor: NVIDIA Corporation physical id: 0 bus info: pci@0000:01:00.0 version: a1 width: 64 bits clock: 33MHz capabilities: pm msi pciexpress vga_controller bus_master cap_list rom configuration: driver=nouveau latency=0 resources: irq:136 memory:a3000000-a3ffffff memory:90000000-9fffffff memory:a0000000-a1ffffff ioport:3000(size=128) memory:a4000000-a407ffff *-display description: VGA compatible controller product: Intel Corporation vendor: Intel Corporation physical id: 2 bus info: pci@0000:00:02.0 version: 00 width: 64 bits clock: 33MHz capabilities: pciexpress msi pm vga_controller bus_master cap_list rom configuration: driver=i915 latency=0 resources: irq:124 memory:a2000000-a2ffffff memory:80000000-8fffffff ioport:4000(size=64)
ドライバはこんな感じ.
# modinfo nouveau | grep -v 'alias\|parm\|firmware\|sig\|^\s' filename: /lib/modules/3.10.0-957.5.1.el7.x86_64/kernel/drivers/gpu/drm/nouveau/nouveau.ko.xz license: GPL and additional rights description: nVidia Riva/TNT/GeForce/Quadro/Tesla/Tegra K1+ author: Nouveau Project retpoline: Y rhelversion: 7.6 srcversion: 464415DA74D2AF7BF0C5E06 depends: drm,drm_kms_helper,ttm,mxm-wmi,wmi,video,i2c-algo-bit intree: Y vermagic: 3.10.0-957.5.1.el7.x86_64 SMP mod_unload modversions
# modinfo i915 | grep -v 'alias\|parm\|firmware\|sig\|^\s' filename: /lib/modules/3.10.0-957.5.1.el7.x86_64/kernel/drivers/gpu/drm/i915/i915.ko.xz license: GPL and additional rights description: Intel Graphics author: Intel Corporation author: Tungsten Graphics, Inc. retpoline: Y rhelversion: 7.6 srcversion: F5476F156AA00D6C36B89BD depends: drm,drm_kms_helper,iosf_mbi,video,i2c-algo-bit intree: Y vermagic: 3.10.0-957.5.1.el7.x86_64 SMP mod_unload modversions
今回はデフォルトでロードされているドライバ nouveau を無効にして,NVIDIAのドライバをインストールする.
$ lsmod | grep nouveau nouveau 1869689 0 mxm_wmi 13021 1 nouveau ttm 114635 1 nouveau wmi 21636 3 mxm_wmi,nouveau,asus_wmi i2c_algo_bit 13413 2 i915,nouveau drm_kms_helper 179394 2 i915,nouveau drm 429744 6 ttm,i915,drm_kms_helper,nouveau video 24538 3 i915,nouveau,asus_wmi
導入
NVIDIAドライバダウンロード
wget でも curl でもブラウザからでも適当にドライバを 拾ってくる.
今回は NVIDIA-Linux-x86_64-410.93.run を拾ってきた.
ドライバアンロード
# echo -e "blacklist nouveau\noptions nouveau modeset=0" >> /etc/modprobe.d/disable-nouveau.conf
nouveau を読み込まないように設定入れておく.
関連パッケージインストール
$ sudo yum install kernel-devel kernel-headers gcc make
関連パッケージを入れる.
デフォルトターゲット切り替え
$ sudo systemctl set-default multi-user.target
ドライバインストール
$ su # sh ./NVIDIA-Linux-x86_64-410.93.run # インストールが始まるので適当に進める # nvidia-smi Fri Feb 23 00:00:00 2019 +-----------------------------------------------------------------------------+ | NVIDIA-SMI 410.93 Driver Version: 410.93 CUDA Version: 10.0 | |-------------------------------+----------------------+----------------------+ | GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC | | Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. | |===============================+======================+======================| | 0 GeForce GTX 106... Off | 00000000:01:00.0 Off | N/A | | 0% 36C P0 28W / 120W | 0MiB / 6078MiB | 6% Default | +-------------------------------+----------------------+----------------------+ +-----------------------------------------------------------------------------+ | Processes: GPU Memory | | GPU PID Type Process name Usage | |=============================================================================| | No running processes found | +-----------------------------------------------------------------------------+
表示に従って適当に勧めればインストール完了
デフォルトターゲット戻す
$ sudo systemctl set-default graphical.target $ sudo reboot
CUI から GUI に戻して,ついでに念の為再起動しておわり. 必要に応じてBIOSから優先ディスプレイを変更する.
おわりに
グラボのおかげでCPU使用率が定常的に1桁%まで下がった.
いろいろ弄りながら勧めたので,途中の再起動とか若干何かしらの手順が飛んでいるような...