You are not logged in.
I recently created a conf file /etc/X11/xorg.conf.d/20-nvidia.conf in order to enable overclock of my discrete card. My intention is to underclock/undervolt the GPU to deal with overheating. Following the wiki, I added the line
Option "Coolbits" "24"
to the device section of this file referring to the discrete GPU.
However, it seems it's not taking effect. nvidia-settings does not show controls over power or clock at all. Also:
~$ nvidia-smi -q -d SUPPORTED_CLOCKS
==============NVSMI LOG==============
Timestamp : Mon Aug 3 02:52:29 2020
Driver Version : 450.57
CUDA Version : 11.0
Attached GPUs : 1
GPU 00000000:02:00.0
Supported Clocks : N/A
which seems to indicate that change clock is not supported. /etc/X11/xorg.conf.d/20-nvidia.conf file contains:
Section "Device"
Identifier "Intel iGPU"
Driver "intel"
BusID "PCI:0:2:0"
EndSection
Section "Device"
Identifier "Nvidia Card"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce MX150"
Option "Coolbits" "24"
BusID "PCI:2:0:0"
EndSection
My system is an optimus laptop running with PRIME.
OS: Arch Linux x86_64
Kernel: 5.7.11-arch1-1
DE: GNOME
WM: Mutter
CPU: Intel i7-8565U (8) @ 4.600GHz
GPU: NVIDIA GeForce MX150
GPU: Intel UHD Graphics 620
Nvidia driver: 450.57-5
nvidia-prime: 1.0-4
Any ideas why I can't change the clock even if coolbits is set?
Last edited by jecogeo (2020-08-04 17:46:48)
Offline
Looking around, it seems that the applications where I'd be able to change clock or voltage, nvidia-seetings and nvidia-smi, need to be "connected"/"related" to any screen (physical or virtual). This was said on StackExchange, although I can't find anything mentioning that in the official docs.
I tried:
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "Screen0"
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section "Device"
Identifier "Intel iGPU"
Driver "intel"
BusID "PCI:0:2:0"
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
ModelName "Unknown"
Option "DPMS"
EndSection
Section "Device"
Identifier "Nvidia Card"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce MX150"
Option "Coolbits" "28"
BusID "PCI:2:0:0"
EndSection
Section "Screen"
Identifier "Screen0"
Device "Nvidia Card"
Monitor "Monitor0"
DefaultDepth 24
Option "Coolbits" "28"
SubSection "Display"
Depth 24
EndSubSection
EndSection
Also following this post, but no success at all yet. I'd appreciate any comments on that.
Offline
Ok, Got it. To coolbits (and nvidia-settings/nvidia-smi) properly function, the NVIDIA card has to be connected to a "virtual display" even if it is not rendering any display at all. My working file is:
# a layout combining the actual and virtual monitors
Section "ServerLayout"
Identifier "Layout0"
# Our real monitor
Screen 0 "Screen0" 0 0
# Our virtual monitor
Screen 1 "Screen1"
EndSection
Section "Screen"
#actual screen
Identifier "Screen0"
#integrated intel GPU card
Device "Device0"
#actual monitor
Monitor "Monitor0"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Screen"
# virtual monitor
Identifier "Screen1"
# discrete GPU nvidia
Device "Device1"
# virtual monitor
Monitor "Monitor1"
DefaultDepth 24
SubSection "Display"
Depth 24
EndSubSection
EndSection
Section "Monitor"
Identifier "Monitor0"
VendorName "Unknown"
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Monitor1"
VendorName "Unknown"
Option "DPMS"
EndSection
Section "Device"
# integrated intel GPU
Identifier "Device0"
Driver "intel"
BusID "PCI:0:2:0"
EndSection
Section "Device"
# discrete GPU NVIDIA
Identifier "Device1"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BoardName "GeForce MX150"
Option "Coolbits" "24"
BusID "PCI:2:0:0"
EndSection
Last edited by jecogeo (2020-08-04 17:49:32)
Offline