NVidia 384.98ドライバーを使用して、Ubuntu 16.04システムにインストールされたGPUのオーバークロックを有効にするbashスクリプトのセットを構築しています。
最初のスクリプトでは、cool-bits
を使用して nvidia-xconfig
(リンク先ページの下部)オプションを設定しようとしています。私のスクリプトは以下です
#!/bin/bash
# Secure required privledges
[ "$UID" -eq 0 ] || exec Sudo bash "$0" "$@"
#== Enable overclocking in NVidia X settings (Replace/Add cool-bits for all GPUs installed)
# - 1 (bit 0) - Enables overclocking of older (pre-Fermi) cores on the Clock Frequencies page in nvidia-settings.
# - 2 (bit 1) - Driver will "attempt to initialize SLI when using GPUs with different amounts of video memory".
# - 4 (bit 2) - Enables manual configuration of GPU fan speed on the Thermal Monitor page in nvidia-settings.
# - 8 (bit 3) - Enables overclocking on the PowerMizer page in nvidia-settings.
# - 16(bit 4) - Enables overvoltage using nvidia-settings CLI options.
echo "============ CoolBits12_AllCards.sh: Started ============"
echo ">> Setting nvidia-xconfig cool-bits=12..."
Sudo nvidia-xconfig -a --cool-bits=12 --allow-empty-initial-configuration
echo ">> ! Please restart for changes to take effect !"
echo "=========== CoolBits12_AllCards.sh: Completed ==========="
私は基本的にコマンドを実行しています
Sudo nvidia-xconfig -a --cool-bits=12 --allow-empty-initial-configuration
私の最初のetc/X11/xorg.conf
はそのように見えます
Section "ServerLayout"
Identifier "layout"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "None"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:5@0:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:6@0:0:0"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
(念のため、スクリプトを数回実行して動作させようとしましたが、これは元の状態ではない可能性があります。これは再起動後のスクリプトを反映しています)
スクリプト実行の出力
============ CoolBits12_AllCards.sh: Started ============
>> Setting nvidia-xconfig cool-bits=12...
Using X configuration file: "/etc/X11/xorg.conf".
WARNING: Unable to find CorePointer in X configuration; attempting to add new
CorePointer section.
WARNING: The CorePointer device was not specified explicitly in the layout;
using the first mouse device.
WARNING: Unable to find CoreKeyboard in X configuration; attempting to add new
CoreKeyboard section.
WARNING: The CoreKeyboard device was not specified explicitly in the layout;
using the first keyboard device.
Option "AllowEmptyInitialConfiguration" "True" added to Screen "Screen0".
Option "AllowEmptyInitialConfiguration" "True" added to Screen "Screen1".
Backed up file '/etc/X11/xorg.conf' as
'/etc/X11/xorg.conf.nvidia-xconfig-original'
Backed up file '/etc/X11/xorg.conf' as '/etc/X11/xorg.conf.backup'
New X configuration file written to '/etc/X11/xorg.conf'
>> ! Please restart for changes to take effect !
=========== CoolBits12_AllCards.sh: Completed ===========
そして、スクリプトを実行した後、私の/etc/X11/xorg.conf
は次のようになります
# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig: version 384.98 (buildmeister@swio-display-x86-rhel47-02) Thu Oct 26 15:56:05 PDT 2017
Section "ServerLayout"
Identifier "layout"
Screen 0 "Screen0"
Screen 1 "Screen1" RightOf "Screen0"
Inactive "intel"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "InputDevice"
# generated from default
Identifier "Keyboard0"
Driver "keyboard"
EndSection
Section "InputDevice"
# generated from default
Identifier "Mouse0"
Driver "mouse"
Option "Protocol" "auto"
Option "Device" "/dev/psaux"
Option "Emulate3Buttons" "no"
Option "ZAxisMapping" "4 5"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
ModelName "Unknown"
HorizSync 28.0 - 33.0
VertRefresh 43.0 - 72.0
Option "DPMS"
EndSection
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 1060 3GB"
BusID "PCI:5:0:0"
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce GTX 1060 3GB"
BusID "PCI:6:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor0"
DefaultDepth 24
Option "AllowEmptyInitialConfiguration" "True"
Option "Coolbits" "12"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Monitor1"
DefaultDepth 24
Option "AllowEmptyInitialConfiguration" "True"
Option "Coolbits" "12"
SubSection "Display"
Depth 24
EndSubSection
EndSection
コンピューターを再起動した後、質問の最初にリストされている最初の/etc/X11/xorg.conf
ファイルの内容が適切であることを確認しました。変更されたファイル/ファイルの内容は保持されませんでした。
/etc/X11/xorg.conf
ファイルへの変更が保持されないのはなぜですか?
ある時点で、完了のために、再起動の前に上記のスクリプトを2回実行しました。スクリプトの出力を以下に示します。
============ CoolBits12_AllCards.sh: Started ============
>> Setting nvidia-xconfig cool-bits=12...
Using X configuration file: "/etc/X11/xorg.conf".
VALIDATION ERROR: Data incomplete in file /etc/X11/xorg.conf.
Undefined Device "intel" referenced by Screen "layout".
Package xorg-server was not found in the pkg-config search path.
Perhaps you should add the directory containing `xorg-server.pc'
to the PKG_CONFIG_PATH environment variable
No package 'xorg-server' found
Option "AllowEmptyInitialConfiguration" "True" added to Screen "Screen0".
Option "AllowEmptyInitialConfiguration" "True" added to Screen "Screen1".
Backed up file '/etc/X11/xorg.conf' as
'/etc/X11/xorg.conf.nvidia-xconfig-original'
Backed up file '/etc/X11/xorg.conf' as '/etc/X11/xorg.conf.backup'
New X configuration file written to '/etc/X11/xorg.conf'
>> ! Please restart for changes to take effect !
=========== CoolBits12_AllCards.sh: Completed ===========
NVidiaの画面の破損を修復する同様の問題がありました。 /etc/X11/xorg.confを削除した場合でも、再起動時に再作成されます。解決策は、カスタムの変更を次の場所に配置することです。
/etc/X11/xorg.conf.d/20-nvidia.conf
NVidiaの変更に関する詳細な説明は、 こちら にあります。