There’s been a few threads that I found discussing cooling and fan behaviour, with a few posts mentioning sluggish fan ramp up times, but none seemed to be appropriate for this discussion as they were all started originally as separate, more specific questions.
Over in the AMD BIOS 3.05 release thread a few people, myself included, appear to have noticed a seemingly sluggish fan behaviour on the FW13 AMD and there has been a short discussion, so I thought I’d share my findings.
Disclaimer: While I previously thought the fan behaviour was a bit sluggish to ramp up with sudden sustained CPU load, I never really ran any experiments up until now. I admit I only started investigating this and paying close attention to the fan behaviour after updating to BIOS v3.05 and seeing a post that caught my attention and kicked off the discussion there. Maybe I was actively looking for regressions where there may have none and the observed behaviour is likely nothing to do with BIOS 3.05 specifically.
Anyway, I took inspiration from another member’s post on the matter and I got ectool compiled (this version supports AMD boards without the custom patch set for the kernel) to get the fan RPM readings and ran some experiments.
Experimental set up and methodology
- no EC tweaking was ever done on this unit with
ectool
so EC behaviour is what would be considered “default” - Linux kernel 6.6.21 (Gentoo Linux)
amd_pstate
:active
(tends to be default for newer kernels and distros)- CPUFreq governor:
powersave
Default. Note, withamd_pstate=active
only other option isperformance
.powersave
, in fact, behaves more like “on-demand” and is similar topowersave
forintel_pstate
. This does not limit the frequency boost. The often defaultschedutil
governor is not available withamd_pstate=active
. - all-core load generated with
stress -c 17
- single-core load generated with
stress -c 1
- fan RPM values read from:
ectool pwmgetfanrpm
- CPU temperature values read from
k10temp
kernel module, as reported by HWMon under/sys/class/hwmon
- ambient temperature was about 19-20C
- CPU would be allowed to cool down to around 33-34C between experiments, which seemed to be the most stable average when idle
- variables considered:
- PPD profile
- Single/all core load
Results
Notes on the graphs:
- readings are taken approx every 0.5 sec (or 500 msec)
- reported experiments are approx. 6 min long where:
- CPU load starts at approx. 20 sec mark;
- CPU load runs for approx 3:40 min in all charts;
- ‘cooldown’ period after CPU load is approx. 2 min;
All-core Load Results
Single-core Load Results
Findings
For all-core load fan behaviour appears consistent with what was reported in the earlier post.
In the above graphs the fan took between 30-60 seconds at already peak temperatures to even start ramping up, with “balanced” PPD profile having the ‘fastest’ response time at the lower end, and PPD disabled having the ‘slowest’ response time. The ‘balanced’ PPD profile did not reach as RPM values as with ‘performance’ but the average sustained all-core CPU frequency was also slightly lower by about 100Mhz and Tctl was also lower, likely due to PPD policy, so this is to be expected.
Single-core load, on the other hand is more interesting. In all cases, the fan took about 60 sec to respond to the high CPU temperatures. Not only that, but the fan was sitting below 3000 RPM and well below its max RPM while Tctl was 95-100C.
Conclusions
- I’m less inclined to believe that there was any fan behaviour change with BIOS 3.05 but I have yet to roll back and run the experiments against 3.03.
- The sluggish fan ramp up for all-core loads is certainly less than what I would consider ideal, but with the CPU throttling itself while the fan decides to wake up it doesn’t seem to be something I would be particularly concerned about.
- Single-core loads, or perhaps also applicable to several, however, makes me wonder if there’s more room for cooling. Even if boost frequency remains at 4.8GHz (which was the case in my experiments), higher fan RPM might be able to bring down the temperature. With PPD set to performance, Tctl was pegged at 100C which is still “fine” as far as the hardware is concerned, but still rather toasty with plenty of RPMs to spare.
As an aside, it has been suggested that fan behaviour might be affected by the fact that it uses a sensor that is physically outside of the APU and may be contributing to the slower fan response time, i.e. that the above behaviour is expected ‘by design’. Not sure if it would be possible, but it does seem to be like there could be room for improvement here.
Anyway, I hope that all this helps answer some questions about the fan behaviour on the AMD FW13.
If I run any more experiments or have other findings I will share.
Edits:
- Add results for “power-saver” PPD profile
- Update incorrect title in all-core graph for powersave PPD profile (stated “load cores: single” instead of “load cores: all”)