Frequency Limits set by Powertools doesn't persist if game is having launcher #144

Open
opened 2024-03-09 09:15:00 +00:00 by Anon581 · 12 comments

Expected Behaviour

Frequency Limits set by Powertools should persist even when game is having launcher.

Actual Behaviour

Frequency Limits work properly before the game is launched by the launcher but after the game is launched the Frequency Limits are ignored. I observed this issue in Simpsons Hit and Run using the Lucas Mod Launcher to run the game and Fallout 2.

Steps To Reproduce

  1. Set Frequency Limits to arbitary values.

  2. Play a game which is having a Launcher required for it to launch.

  3. Frequency Limits work before the game is launched but are ignored afterwards.

Anything else?

No response

Version

Latest

Platform

LCD SteamDeck

OS

Bazzite Deck Edition (but I can confirm this issue is present in SteamOS also)

### Expected Behaviour Frequency Limits set by Powertools should persist even when game is having launcher. ### Actual Behaviour Frequency Limits work properly before the game is launched by the launcher but after the game is launched the Frequency Limits are ignored. I observed this issue in Simpsons Hit and Run using the Lucas Mod Launcher to run the game and Fallout 2. ### Steps To Reproduce 1. Set Frequency Limits to arbitary values. 2. Play a game which is having a Launcher required for it to launch. 3. Frequency Limits work before the game is launched but are ignored afterwards. ### Anything else? _No response_ ### Version Latest ### Platform LCD SteamDeck ### OS Bazzite Deck Edition (but I can confirm this issue is present in SteamOS also)
Anon581 added the
bug
label 2024-03-09 09:15:00 +00:00
Author

Strangely the CPU governor settings do persist even when game is having launcher so its likely just the Frequency Limits that are ignored when game is having Launcher rather than all the settings of Powertools.

Strangely the CPU governor settings do persist even when game is having launcher so its likely just the Frequency Limits that are ignored when game is having Launcher rather than all the settings of Powertools.
Anon581 started working 2024-03-09 09:52:43 +00:00
Anon581 canceled time tracking 2024-03-09 09:52:58 +00:00
Owner

Tested with Stellaris and I can't reproduce. If this is only caused by one specific game, I cannot fix it.

More information is required to reproduce this.

Tested with Stellaris and I can't reproduce. If this is only caused by one specific game, I cannot fix it. More information is required to reproduce this.
NGnius added the
???
label 2024-03-24 00:23:41 +00:00
Owner

This may be specific to the GPU clock limit

This may be specific to the GPU clock limit

I have same behavior with modded stardew valley. On startup, it's open SMAPI console first, after that opens the game itself. If performance overlay active, I can see that frenq of cpu changing to my limit at SMAPI window, but after game starts, freq limit ignored.

platform: steam deck lcd
steamOS version: 3.5.17
plugin version: 2.0.0-rls

I have same behavior with modded stardew valley. On startup, it's open SMAPI console first, after that opens the game itself. If performance overlay active, I can see that frenq of cpu changing to my limit at SMAPI window, but after game starts, freq limit ignored. platform: steam deck lcd steamOS version: 3.5.17 plugin version: 2.0.0-rls
Owner

Is the correct profile/game detected? Then you should be able to just click the "reapply settings" at the bottom of the menu and it'll fix it. Otherwise it's a problem with profile tracking, which isn't so easy to workaround.

Is the correct profile/game detected? Then you should be able to just click the "reapply settings" at the bottom of the menu and it'll fix it. Otherwise it's a problem with profile tracking, which isn't so easy to workaround.

Yes, profile detecting is correct. Clicking on reapply settings button working, but this behaivor is unexpected - every time user must to check, whether his profile works or not.
If there is any way to help catch this bug, I can provide the information you need.

Yes, profile detecting is correct. Clicking on reapply settings button working, but this behaivor is unexpected - every time user must to check, whether his profile works or not. If there is any way to help catch this bug, I can provide the information you need.
Owner

Sounds like the Steam client is reapplying (some of?) its power settings whenever a new window opens instead of just whenever a new game launches. Please make sure you haven't set any of the vanilla power settings that are duplicated by PowerTools (e.g. GPU clock speed, TDP, and maybe others).

I suspect the actual fix for PowerTools is to listen for that event and reapply the settings whenever it happens (maybe with a bit of a delay to do it after the Steam client). But at least there's a workaround for now.

Sounds like the Steam client is reapplying (some of?) its power settings whenever a new window opens instead of just whenever a new game launches. Please make sure you haven't set any of the vanilla power settings that are duplicated by PowerTools (e.g. GPU clock speed, TDP, and maybe others). I suspect the actual fix for PowerTools is to listen for that event and reapply the settings whenever it happens (maybe with a bit of a delay to do it after the Steam client). But at least there's a workaround for now.

Yeah, you're right about steam client interferes with power limits. Disabling vanilla profile solves the problem.
I've checked several times - it happens even if only fps limiting is enabled in the vanilla settings with any game, that I tried. So, I think, better way will if you some how catch that event, because vanilla restriction may apply with differents delays.

Yeah, you're right about steam client interferes with power limits. Disabling vanilla profile solves the problem. I've checked several times - it happens even if only fps limiting is enabled in the vanilla settings with any game, that I tried. So, I think, better way will if you some how catch that event, because vanilla restriction may apply with differents delays.

Just wanted to come in to also confirm that this is an issue with Steam’s own power settings.

Playing Fallout 4 (with Steam Deck detection turned off) goes like this:

  1. Play is clicked to launch the game, PowerTools profile kicks in immediately
  2. Launcher window opens. Launcher is static so Gamescope has yet to update. PowerTools works correctly.
  3. Move mouse to click on “Play” causes the screen to refresh and for the Steam power settings to kick in (in my case it’s a 40FPS limit and nothing more). This resets the CPU freq limit set by PowerTools.
  4. Game launches, PowerTools does not reapply freq limit unless done so manually

Interestingly it looks like Gamescope doesn’t apply its settings on game launch, but on the first frame update after a game is launched. Could PowerTools wait until after this first frame update to apply its profile settings?

Edit: v2.0.2

Just wanted to come in to also confirm that this is an issue with Steam’s own power settings. Playing Fallout 4 (with Steam Deck detection turned off) goes like this: 1. Play is clicked to launch the game, PowerTools profile kicks in immediately 2. Launcher window opens. Launcher is static so Gamescope has yet to update. PowerTools works correctly. 3. Move mouse to click on “Play” causes the screen to refresh and for the Steam power settings to kick in (in my case it’s a 40FPS limit and nothing more). This resets the CPU freq limit set by PowerTools. 4. Game launches, PowerTools does not reapply freq limit unless done so manually Interestingly it looks like Gamescope doesn’t apply its settings on game launch, but on the first frame update after a game is launched. Could PowerTools wait until after this first frame update to apply its profile settings? Edit: v2.0.2

Issue still persists on PowerTools v2.0.3-rls with “Re-enable dirty echoes to hopefully mitigate #144” fix; tested on games with launchers Cyberpunk 2077 and Forza Horizon 5

Issue still persists on PowerTools v2.0.3-rls with “Re-enable dirty echoes to hopefully mitigate #144” [fix](https://git.ngni.us/NG-SD-Plugins/PowerTools/compare/v2.0.2...main); tested on games with launchers Cyberpunk 2077 and Forza Horizon 5

Not sure that this helps you but figure I’d mention; I remember when manual GPU clock was fixed by Valve for Forza Horizon 5

Steam Deck Beta Client Update: September 9th

  • Fix manual GPU clocks not getting applied when launching a game.

https://steamcommunity.com/games/1675200/announcements/detail/3687940304693148219

Not sure that this helps you but figure I’d mention; I remember when manual GPU clock was fixed by Valve for Forza Horizon 5 Steam Deck Beta Client Update: September 9th - Fix manual GPU clocks not getting applied when launching a game. https://steamcommunity.com/games/1675200/announcements/detail/3687940304693148219
NGnius added this to the Genry milestone 2024-06-13 22:07:59 +01:00

This is also an issue I’m having and have been having regardless of whether the game has a launcher or not. Half the time or even well over half the time PowerTools simply does not load its persistent profile beyond disabling SMT.

This is also an issue I’m having and have been having regardless of whether the game has a launcher or not. Half the time or even well over half the time PowerTools simply does not load its persistent profile beyond disabling SMT.
Sign in to join this conversation.
No milestone
No project
No assignees
6 participants
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: NG-SD-Plugins/PowerTools#144
No description provided.