Is there a way to increase or decrease power limit on Mobile Ampere series GPUs? I have a laptop with RTX3080M but nvidia-smi says “Changing power management limit is not supported for GPU: 00000000:01:00.0.”. It is very easy to enable/disable turbo boost and other features also set target TGP values on Windows but not on Linux. Why? Is Nvidia planning anything for the next update? At least give an option to disable turbo boost or limit TGP.
Facing the same issue with mobile RTX 3060.
Can you please share the output of cat /proc/driver/nvidia/gpus/0000:01:00.0/power
here?
Also, when running a game/benchmark, can you share the power draw, i.e. the output of watch nvidia-smi
?
Also please mention the rated limit by the laptop manufacturer. Thanks
This laptop: Stellaris 15 - 15.6'' WQHD IPS + AMD Ryzen 9 5900HX, Intel Core i7-11800H + NVIDIA GeForce RTX 3080 + 2x M.2 NVMe SSD + max. 64GB RAM - TUXEDO Stellaris 15 - Gen3 - TUXEDO Computers
Also should be identical to this: XMG NEO 15 Gaming Laptop with RTX 3080 and Ryzen 9 | bestware
My laptop has Ryzen 5900HX and RTX3080 16GB, and the GPU should be Max-P model. According to the product page I should be able to get 150W+15W TGP with GPU. XMG users report that they get 165W from their GPUs on Windows. On Tuxedo’s page they say:
(NVIDIA currently allows a **maximum of 115 W TGP under Linux** . We are already in close contact with NVIDIA to improve the NVIDIA graphics driver as soon as possible and will deliver it via the system updates!)
Why? :(
Runtime D3 status: Enabled (fine-grained)
Video Memory: Active
GPU Hardware Support:
Video Memory Self Refresh: Supported
Video Memory Off: Supported
Power Limits:
Default: 115000 milliwatts
GPU Boost: 4294967295 milliwatts
-----------
nvidia-smi:
Fri Oct 29 17:41:21 2021
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 495.29.05 Driver Version: 495.29.05 CUDA Version: 11.5 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
| | | MIG M. |
|===============================+======================+======================|
| 0 NVIDIA GeForce ... On | 00000000:01:00.0 On | N/A |
| N/A 70C P3 115W / N/A | 3816MiB / 16102MiB | 87% Default |
| | | N/A |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: |
| GPU GI CI PID Type Process name GPU Memory |
| ID ID Usage |
|=============================================================================|
| 0 N/A N/A 1389 G /usr/lib/xorg/Xorg 53MiB |
| 0 N/A N/A 2282 G /usr/lib/xorg/Xorg 290MiB |
| 0 N/A N/A 2410 G /usr/bin/gnome-shell 120MiB |
| 0 N/A N/A 2873 G ...AAAAAAAAA= --shared-files 3MiB |
| 0 N/A N/A 77469 G /opt/telegram/telegram 3MiB |
| 0 N/A N/A 172204 G ...mviewer/tv_bin/TeamViewer 25MiB |
| 0 N/A N/A 205011 G ./steamwebhelper 3MiB |
| 0 N/A N/A 205107 G ...token=8225511945696457254 105MiB |
| 0 N/A N/A 247655 G ...AAAAAAAAA= --shared-files 98MiB |
| 0 N/A N/A 275993 G ...position-1.1/bin/launcher 27MiB |
| 0 N/A N/A 276479 G /usr/bin/nvidia-settings 3MiB |
| 0 N/A N/A 276693 G ...ion-1.1/bin/superposition 3062MiB |
+-----------------------------------------------------------------------------+
Also my “inxi -Fxxz” output:
System: Kernel: 5.14.15-xanmod1 x86_64 bits: 64 compiler: N/A Desktop: Gnome 3.36.9 wm: gnome-shell dm: GDM3
Distro: Ubuntu 20.04.3 LTS (Focal Fossa)
Machine: Type: Laptop System: TUXEDO product: TUXEDO Stellaris AMD Gen3 (CZN) v: Standard serial: <filter>
Mobo: NB02 model: GMxZGxx v: Standard serial: <filter> UEFI: American Megatrends LLC. v: N.1.21A08 date: 06/23/2021
Battery: ID-1: BAT0 charge: 93.5 Wh condition: 93.5/93.5 Wh (100%) volts: 12.8/11.4 model: standard serial: <filter>
status: Full
CPU: Topology: 8-Core model: AMD Ryzen 9 5900HX with Radeon Graphics bits: 64 type: MT MCP arch: Zen 3
L2 cache: 4096 KiB
flags: avx avx2 lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm bogomips: 105403
Speed: 1798 MHz min/max: 1200/3300 MHz Core speeds (MHz): 1: 1615 2: 1915 3: 2092 4: 1397 5: 1236 6: 1325 7: 1618
8: 2365 9: 2278 10: 1915 11: 2441 12: 1916 13: 1923 14: 2160 15: 1927 16: 1916
Graphics: Device-1: NVIDIA GA104M [GeForce RTX 3080 Mobile / Max-Q 8GB/16GB] vendor: Tongfang Hongkong Limited driver: nvidia
v: 495.29.05 bus ID: 01:00.0 chip ID: 10de:249c
Display: x11 server: X.Org 1.20.11 driver: none compositor: gnome-shell tty: N/A
OpenGL: renderer: NVIDIA GeForce RTX 3080 Laptop GPU/PCIe/SSE2 v: 4.6.0 NVIDIA 495.29.05 direct render: Yes
Audio: Device-1: Advanced Micro Devices [AMD] Raven/Raven2/FireFlight/Renoir Audio Processor
vendor: Tongfang Hongkong Limited driver: N/A bus ID: 06:00.5 chip ID: 1022:15e2
Device-2: Advanced Micro Devices [AMD] Family 17h HD Audio vendor: Tongfang Hongkong Limited driver: snd_hda_intel
v: kernel bus ID: 06:00.6 chip ID: 1022:15e3
Sound Server: ALSA v: k5.14.15-xanmod1
Network: Device-1: Realtek RTL8125 2.5GbE vendor: Tongfang Hongkong Limited driver: r8125 v: 9.006.04-NAPI port: e000
bus ID: 02:00.0 chip ID: 10ec:8125
IF: enp2s0 state: down mac: <filter>
Device-2: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel port: e000 bus ID: 04:00.0 chip ID: 8086:2723
IF: wlp4s0 state: up mac: <filter>
IF-ID-1: docker0 state: down mac: <filter>
Drives: Local Storage: total: 931.51 GiB used: 1.29 TiB (142.1%)
ID-1: /dev/nvme0n1 vendor: Samsung model: SSD 980 1TB size: 931.51 GiB speed: 31.6 Gb/s lanes: 4 serial: <filter>
ID-2: /dev/nvme1n1 vendor: Samsung model: SSD 980 1TB size: 931.51 GiB speed: 31.6 Gb/s lanes: 4 serial: <filter>
Partition: ID-1: / size: 915.77 GiB used: 687.09 GiB (75.0%) fs: ext4 dev: /dev/nvme0n1p5
Sensors: System Temperatures: cpu: 61.0 C mobo: N/A gpu: nvidia temp: 55 C
Fan Speeds (RPM): N/A
Info: Processes: 491 Uptime: 1d 13h 51m Memory: 62.72 GiB used: 7.45 GiB (11.9%) Init: systemd v: 245 runlevel: 5
Compilers: gcc: 9.3.0 alt: 8/9 clang: 10.0.0-4ubuntu1 Shell: bash v: 5.0.17 running in: gnome-terminal inxi: 3.0.38
Hi. Dell G15-5510 laptop (RTX 3060), same thing here, 80W max.
It should be able to reach 115W (for Ryzen) or 80W (for Intel). Plus 10W Dynamic Boost. Is it Intel or Ryzen for you?
Intel Core i7 10870H.
Power Limit Default says 80000 mW
GravityMark (vulkan) shows 78-80W
Can you please share also the output of cat /proc/driver/nvidia/gpus/0000:01:00.0/information
? Thanks.
Output of cat /proc/driver/nvidia/gpus/0000:01:00.0/information
:
Model: Unknown
IRQ: 137
GPU UUID: GPU-749f520f-b6de-8374-5f6c-7b10ed71d70e
Video BIOS: 94.04.3e.00.99
Bus Type: PCIe
DMA Size: 47 bits
DMA Mask: 0x7fffffffffff
Bus Location: 0000:01:00.0
Device Minor: 0
GPU Excluded: No
I was searching a little bit more to find where may be problem. In your laptop (what a beast !) are power levels for dGPU configured and saved in VBIOS (Tongfang ?), default target value is set to only 115W, but limit value says 165W (what technically means: 150W Max. Base + 15W Boost), as shows picture.
Can you please provide PN or ordering number of your laptop (not SN !), it looks like it is Clevo based product, and I will find some possible solutions for you, if there are any…
Yeah, I found that page too. It is possible to reach 165W on Windows, but not on Linux. Also, that’s a Tongfang laptop, not Clevo. I checked that PN is like gm5zg8wXXXXXXXX, but only gm5zg8w gives results on Google.
Yes, but Clevo is OEM laptop manufacturer, and probably brands like Tongfang, XMG, Mechrevo, Eluktronics, Medion and all others are sharing same HW platform, which is good for you, because I have found verified Clevo VBIOS for RTX3080 16GB with 150W Base power level. VBIOS reflashing is possible…
Model: NVIDIA GeForce RTX 3060 Laptop GPU
IRQ: 176
GPU UUID: GPU-1dfdd8a3-609f-ab69-f862-db0ee121b8ce
Video BIOS: 94.06.16.00.41
Bus Type: PCIe
DMA Size: 47 bits
DMA Mask: 0x7fffffffffff
Bus Location: 0000:01:00.0
Device Minor: 0
GPU Excluded: No
Sounds good but risky. I would do it if I were to own proper equipment for unbricking. Thanks anyway.
Also, there are power profiles on my BIOS but I think they change target TDP values, not the base TDP. Since the base TDP is hard coded it is not possible to modify it via BIOS settings. Also, I fouınd that there are some acpi calls to change some settings but it doesn’t look possible to modify the current TDP value. It looks possible to hand over responsibility to modify current TDP but not the ability to modify the value itself. And looks like Nvidia Driver is responsible for this task, but this feature has not been implemented for Ampere GPUs yet.
I hope this feature is on Nvidia’s to-do list. Any comments from Nvidia Devs?
I would add my request as well, as the driver should be able to handle undervolt/tgp/frequency, as this is supported on Windows.
Aside, I believe it should be possible to safely modify the VBios when using Optimus, as in case of errors the system would work normally and should be able to restore the backup vbios.
Any idea where to start modifying it? Unfortunately, I don’t have knowledge of Nvidia bios hacking…
Undervolting would be very nice.
About modifying bios; desktop GPUs may have dual BIOS chips and a button to switch between them, but laptops are more complicated. It wouldn’t be wise to risk your GPU in the era of silicon shortage and you may probably end up in a forum opening a post about your bricked mobile GPU if you don’t know what to do.
VBIOS modifications as of Kepler/Maxwell gen are not possible due to:
- Lack of HEX editors of .ROM files,
- Every VBIOS needs to be signed, if not it will not be loaded into GPU.
Your VBIOS (Dell) shows only 80W Target and 90W Limit, whats technically 80W Base + 10W Boost, and probably there is nothing to gain in terms of Max. TGP…
Modifying VBIOS is a risky route to take and ideally it ought to be handled by the drivers as it is on Windows.
https://www.reddit.com/r/linux_gaming/comments/qjiwxs/psa_if_youre_running_any_of_these_laptops_on/ ← this thread on reddit also reports many such cases
This power limit is also present in my asus rog strix g15 g513qr, my 3070 works as expected in windows but in linux I was surprised to discover it was detected as a max-q gpu when it is a max-p gpu, this should not be the case so I’m posting to help give this issue visibility and to give the information for anyone who would want to install linux in this asus laptop.
Hope it gets a fix quick.