Limiting Nvidia GPU max frequency help


My GTX 1050 Mobile is running at 1700MHz (According to GreenWithEnvy) when playing somewhat demanding games. This is making it run hot enough to make the fans spin obnoxiously loud and I were considering to limit the max frequency to lower the temperature.

I have tried to use the Coolbits method described in [ArchWiki] (NVIDIA/Tips and tricks - ArchWiki)
Which should enable me to enter a negative off-set value in Nvidia X Server Settings, but to no luck.

Using nvidia-smi -i 0 -pl to set a powerlimit does not work as it just reports
"Changing power management limit is not supported for GPU: 00000000:3A:00.0.
Treating as warning and moving on.
All done."

and neither does Nvidia-smi --lock-gpu-clocks
"Setting locked GPU clocks is not supported for GPU 00000000:3A:00.0.
Treating as warning and moving on."
All done.

╰─λ inxi -Faz
Kernel: 5.15.13-zen1-1-zen x86_64 bits: 64 compiler: gcc v: 11.1.0
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=4019034f-6f4f-46e5-acf0-a35c21988880 rw [email protected]
quiet splash rd.udev.log_priority=3 vt.global_cursor_default=0
systemd.unified_cgroup_hierarchy=1 loglevel=3
Desktop: KDE Plasma 5.23.5 tk: Qt 5.15.2 info: latte-dock wm: kwin_x11
vt: 1 dm: SDDM Distro: Garuda Linux base: Arch Linux
Type: Convertible System: LENOVO product: 81JS v: Lenovo YOGA 730-15IWL
serial: <superuser required> Chassis: type: 31 v: Lenovo YOGA 730-15IWL
serial: <superuser required>
Mobo: LENOVO model: LNVNB161216 v: SDK0J40709 WIN
serial: <superuser required> UEFI: LENOVO v: 9MCN27WW(V2.08)
date: 12/31/2020
ID-1: BAT1 charge: 41.9 Wh (100.0%) condition: 41.9/51.6 Wh (81.1%)
volts: 12.6 min: 11.2 model: 0x43 0x65 0x6C 0x78 0x70 0x65 0x PABAS0241231
type: Li-ion serial: <filter> status: Full cycles: 272
Info: model: Intel Core i7-8565U bits: 64 type: MT MCP
arch: Comet/Whiskey Lake note: check family: 6 model-id: 0x8E (142)
stepping: 0xC (12) microcode: 0xEA
Topology: cpus: 1x cores: 4 tpc: 2 threads: 8 smt: enabled cache:
L1: 256 KiB desc: d-4x32 KiB; i-4x32 KiB L2: 1024 KiB desc: 4x256 KiB
L3: 8 MiB desc: 1x8 MiB
Speed (MHz): avg: 714 high: 800 min/max: 400/1800 scaling:
driver: intel_pstate governor: powersave cores: 1: 621 2: 692 3: 704 4: 800
5: 797 6: 700 7: 700 8: 700 bogomips: 31999
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Type: itlb_multihit status: KVM: VMX disabled
Type: l1tf status: Not affected
Type: mds status: Not affected
Type: meltdown status: Not affected
Type: spec_store_bypass
mitigation: Speculative Store Bypass disabled via prctl
Type: spectre_v1
mitigation: usercopy/swapgs barriers and __user pointer sanitization
Type: spectre_v2
mitigation: Enhanced IBRS, IBPB: conditional, RSB filling
Type: srbds mitigation: TSX disabled
Type: tsx_async_abort status: Not affected
Device-1: Intel WhiskeyLake-U GT2 [UHD Graphics 620] vendor: Lenovo
driver: i915 v: kernel bus-ID: 00:02.0 chip-ID: 8086:3ea0 class-ID: 0300
Device-2: NVIDIA GP107M [GeForce GTX 1050 Mobile] vendor: Lenovo
driver: nvidia v: 495.46 alternate: nouveau,nvidia_drm bus-ID: 3a:00.0
chip-ID: 10de:1c8d class-ID: 0302
Device-3: Chicony Integrated Camera type: USB driver: uvcvideo
bus-ID: 1-5:5 chip-ID: 04f2:b61e class-ID: 0e02 serial: <filter>
Display: x11 server: X.Org compositor: kwin_x11 driver:
loaded: modesetting,nvidia display-ID: :0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.0x11.2")
s-diag: 582mm (22.9")
Monitor-1: eDP-1 res: 1920x1080 hz: 60 dpi: 142
size: 344x193mm (13.5x7.6") diag: 394mm (15.5")
OpenGL: renderer: Mesa Intel UHD Graphics 620 (WHL GT2)
v: 4.6 Mesa 21.3.3 direct render: Yes
Device-1: Intel Cannon Point-LP High Definition Audio vendor: Lenovo
driver: snd_hda_intel v: kernel
alternate: snd_soc_skl,snd_sof_pci_intel_cnl bus-ID: 00:1f.3
chip-ID: 8086:9dc8 class-ID: 0403
Sound Server-1: ALSA v: k5.15.13-zen1-1-zen running: yes
Sound Server-2: JACK v: 1.9.19 running: no
Sound Server-3: PulseAudio v: 15.0 running: no
Sound Server-4: PipeWire v: 0.3.43 running: yes
Device-1: Intel Wireless-AC 9260 driver: iwlwifi v: kernel bus-ID: 39:00.0
chip-ID: 8086:2526 class-ID: 0280
IF: wlp57s0 state: up mac: <filter>
Device-1: Intel Wireless-AC 9260 Bluetooth Adapter type: USB driver: btusb
v: 0.8 bus-ID: 1-7:8 chip-ID: 8087:0025 class-ID: e001
Report: bt-adapter ID: hci0 rfk-id: 3 state: down
bt-service: enabled,running rfk-block: hardware: no software: yes
address: <filter>
Local Storage: total: 476.94 GiB used: 99.93 GiB (21.0%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung
model: MZVLB512HAJQ-000L2 size: 476.94 GiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 type: SSD serial: <filter>
rev: 5L1QEXA7 temp: 34.9 C scheme: GPT
ID-1: / raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
used: 99.93 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 576 KiB (0.2%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
ID-3: /home raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
used: 99.93 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-4: /var/log raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
used: 99.93 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
ID-5: /var/tmp raw-size: 476.64 GiB size: 476.64 GiB (100.00%)
used: 99.93 GiB (21.0%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:2
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default)
ID-1: swap-1 type: zram size: 15.35 GiB used: 512 KiB (0.0%)
priority: 100 dev: /dev/zram0
System Temperatures: cpu: 39.0 C pch: 37.0 C mobo: N/A
Fan Speeds (RPM): N/A
Processes: 292 Uptime: 20m wakeups: 3 Memory: 15.35 GiB
used: 4.03 GiB (26.2%) Init: systemd v: 250 tool: systemctl Compilers:
gcc: 11.1.0 clang: 13.0.0 Packages: pacman: 1802 lib: 538 Shell: fish
v: 3.3.1 default: Bash v: 5.1.16 running-in: konsole inxi: 3.3.11

What value did you set?

I have tried: 31, 28, 25 and 24.

I suspect it might have something to do with Optimus Manager. I right click the Optimus Manager Qt, go to settings and disabled overclocking options under Nvidia and it removed the option to set a frequency offset, despite the xorg.conf having it enabled with Coolbits.
I check the Optimus-Manager.conf and the setting only allows "Overclocking", which still does not enable negative offset

I seem to think that the Xorg configuration file that this reads is different to the standard location(s)... :thinking:

There is a conf file at /etc/X11/xorg.conf.d called 10-optimus-manager.conf but adding coolbits in that conf file still doesn't do anything.

It might just be Lenovo doing their best to lock away all user confirguration.
All the commands from Nvidia-Smi just reports back that "Feature not supported for GPU 00000000:3A:00.0".

Certain values are just reported back as N/A

From Nvidia-smi -q
Power Readings
Power Management                  : N/A
Power Draw                        : N/A
Power Limit                       : N/A
Default Power Limit               : N/A
Enforced Power Limit              : N/A
Min Power Limit                   : N/A
Max Power Limit                   : N/A

It is in line with them making other configurations like fan control completely inaccesible as the system cannot detect any fan whatsoever.

1 Like
  1. Try to enable power management.
    PRIME - ArchWiki

  2. Try to turn on v-sync in games - it should help hold games at 60fps value and here is potentially chance to get lower temperature.