aarron-lee / SimpleDeckyTDP

(Formerly Simple) TDP plugin for alternative AMD PC handhelds
Other
35 stars 5 forks source link

Quick resume resets tdp after a few seconds, takes some more seconds to get back #29

Closed dschibster closed 3 months ago

dschibster commented 3 months ago

Hi there, I'm not sure if this is to do with Bazzite in general or with SDTDP because it's the TDP tool I'm using.

This is on a legion go with beta bios that enabled tdp control.

Basically I am playing a game with custom tdp set to 30W on a per-game profile.

When I press the power button for standby and then want to quick resume, what happens is that the tdp persists for a few seconds, then the power LED goes back to white and (to my understanding) a way lower TDP, until after some more seconds it goes back to purple LED and my custom TDP again.

This seems to be arbitrary and no matter what setting I enable or disable, it's not going away. Also enabled polling to hopefully set it right, but polling also doesn't help. Is this due to some issues with TDP control or should I bring this to Bazzite?

aarron-lee commented 3 months ago

Hrm, if it's temporarily going to white LED, that usually means you hit the thermal limit of the Legion Go, and the bios is forcibly lowering TDP temporarily.

But if it's after resume, I'd assume that your device isn't hot at all.

Under Advanced Options, there should be a toggle for temporarily set max TDP on resume. Could you try turning that off, and see if you still have the issue?

perhaps that's related somehow.

I can also try to replicate on my Legion Go

dschibster commented 3 months ago

I have done that prior to writing this issue and setting it made not much of a difference unfortunately

During normal gameplay I have yet to be forced into the white LED

dschibster commented 3 months ago

https://youtu.be/EktTvyGYARU?si=laepS99zAYdFktUW

Created a quick video of this issue, sped up but it's clearly visible

Just now had a resume without a fall back to white LED, but nothing changed in my config since then. Makes me wonder what the reason might be

aarron-lee commented 3 months ago

https://youtu.be/EktTvyGYARU?si=laepS99zAYdFktUW

Created a quick video of this issue, sped up but it's clearly visible

Ok, this most likely is you running into the Legion Go's thermal limits, and the bios temporarily forcibly kicking you to the White LED.

For some additional context, SimpleDeckyTDP actually does not have the ability to change the LED light to white. It literally cannot do it, the code isn't there, so something else is changing the LED light.

The pattern you're seeing (Purple LED > White LED > Purple LED) is almost definitely something being forced by the Lenovo bios, or something else.

And when the LED light is forced to white by the Legion Go bios, any TDP commands sent by SimpleDeckyTDP get completely ignored by the bios, which would explain why polling didn't seem to work.

Just to confirm, do you have TDP controls disabled in hhd? that's the only other bit of software that I know of that can change the LED light on the LGO.

If hhd TDP control is off, then the behavior you're seeing probably isn't related to the OS, it's probably the bios.

I tried to replicate your issue, no luck on my LGO yet. I'll keep trying though, could you list the games you see this behavior in?

dschibster commented 3 months ago

Currently only playing final fantasy 7 remake where I am encountering this. HHD by now doesn't even let you enable tdp control with SimpleDeckyTDP turned on.

This explains it for sure, though it confuses me that this is only done when resuming, not during gameplay. But the ignoring part of it all is definitely reasonable.

To add up tdp control, I had a fan curve with LegionGoRemapper set up (or rather I enabled the option but didn't change anything). I don't see how that would change the led to white though.

aarron-lee commented 3 months ago

I'm downloading ff7 remake to try and replicate your issue.

as for LegionGoRemapper, it can change the light to purple or red only. forgot about that.

it's hardcoded to those two, so it can never set the LED to white. I can't imagine that being your issue.

aarron-lee commented 3 months ago

As a followup, I have not been able to replicate the behavior on my LGO with FF7 remake 😟

I'll keep trying, but it'll be hard to troubleshoot if I can't replicate it.

dschibster commented 3 months ago

I've also observed that waiting some more before resuming also reduces the chances of this reduction happening.

So it is probably really thermal throttling. What I don't get is why it happens after resuming but not while I'm running the game, where the device is obviously hotter

aarron-lee commented 3 months ago

Yeah, I haven't seen the issue on my device recently, so I don't know what is triggering the thermal throttle.

aarron-lee commented 3 months ago

One thing that might help is to enable STT in the bios, and use the Lenovo Custom TDP option in SimpleDeckyTDP. It might have better thermal throttle behavior.

Hadn't thought about it til just now.

aarron-lee commented 3 months ago

closing for now since this is known to be a LGO bios and thermal throttle issue, not something that can be solved via plugin