Saturday, August 14, 2021

A Manual Would Have Saved Me 6 Months of Time

I managed to play with a cat within the past day or so.

All's well with the world.

------

In other news, I've been an idiot. I kept on complaining about how Eileen-II was always running too bloody hot. I started with undervolting (correct thing to do, though the undervolt offset was best applied uniformly across all applicable components instead of just the CPU for stability reasons), then started messing with the Turboboost ratios at 100% load (sketchy) while keeping an eye on the temperature, then messed with EPP values which lowered the temperature but introduced lag spikes/stuttering from sudden downclocks, before starting to use the alarm function in Throttlestop to trigger a much cooler profile setting while simultaneously using the original (but undervolted) turbo-ratio options.

Mind you, I was trying my hardest to ensure that the sustained temperature did not heat up the keyboard to an uncomfortable level. That was empirically determined to be about 85°C two months ago.

After one bloody big round, I just realised this little item hiding in the corner of the Options screen:
Oh my, what is this I see? PROCHOT Offset?

That's the bloody option to set the temperature threshold from which the CPU will auto thermal throttle. In this case, it is technically the number of degrees Celsius lower than 100°C that the processor is allowed to reach before it will be forced to thermal throttle.

🤦‍♂️

That would have solved all my stupid problems without doing so much crazy stuff.

Anyway, after discovering that, I applied it, and did some additional adjustments and associated testing of the parameters:
  1. From experience, the PROCHOT value does trigger maximum sensed values about 7°C higher than the actual threshold(!), so for the default value of 100°C, HWiNFO64 does show a maximum CPU package temperature of 107°C; I'm not sure why this is so. Thus, the PROCHOT Offset is set to 20, which is equivalent to saying ``throttle if we exceed 80°C''. Empirical evidence shows that the 10-minute average of 500 ms temperature samples were steady at around 80°C, with very rare spikes of 87°C as predicted.
  2. I've set the AC Timer Resolution to 1.00 ms so that the CPU can adjust its clock speed much faster to avoid triggering that higher-than-expected temperature. Since it only applies when plugged in, the cost is negligible.
  3. I am still using the Alarm (and by extension, the higher poll rate for Throttlestop). I did adjust the settings so that it will trigger off at temperatures at 90°C or higher, using a new setting that basically just disables Turboboosting to allow the CPU to cool down faster.
  4. I pushed the EPP down to 16 (instead of 32 as noted last time).
  5. Thermal Velocity Boost is completely disabled across all the profiles since there really isn't any thermal room for it; that way we don't waste time for the CPU logic to do crazy ramp ups only to ramp down before ramping up again.
The result of it all is much better average performance with much better thermal performance.

Man, just what have I been doing all these while?

In defense, it's not as though Throttlestop has a reference manual or something. The features may exist, but there is little to no explanation of what they do. Each time I make an update here about something else I did came about because I stumbled upon some forum post that described the feature with enough detail for me to learn how it affects both the temperature and the performance accordingly.

Now, the use of PROCHOT Offset means also that I can, in theory, run Eileen-II without using some standing legs. However, a test of running Grim Dawn while watching Ina's Minecraft stream in Waterfox showed that the 10-minute average of 500 ms Core ratio samples was around 19×, while doing the same with the standing legs for ventilation reached 24×. Note that while both numbers are much lower than the base ratio [of no more than 26×], the ventilation did improve the thermals enough to allow a 26% increase in clock speed. Of course, clock speed isn't everything (actual processing load is also as important), but empirically from within Grim Dawn, it was a difference of about 10--20 fps. So yes, the ventilation did make a substantial difference.

Alright, that's all for now. Till the next update.

No comments: