i have got a question concerning a new IPFire-build i am configuring right now. The hardware used is an Intel i3-9100 CPU, 16GB DDR4, a Gigabyte B365M-Mainboard and four Intel Gigabit nework cards.
I have noticed that the clock speed of my CPU does merely drop, even if there is just a very low usage. This means, at e.g. 1-5% load, the clock speeds of all four core stay at 4100-4200 Mhz with little drops to 3800 Mhz, even tough the idle clock rates should be around 1500-2000 Mhz.
This leads to an unnecessary power consumption.
In my old IPFire-build (Intel Celeron J1900 quad core) i had nothing to do to get the cores to their idle frequency, this worked automatically.
As i did some research, the “cpufreq-utils” should be installed automatically when using IPFire >2.x, but this is not the case in my build, since the package is visible as “not installed” in pakfire.
As i do not want to mess up my new build i want to ask, which is the best way to achieve idle clocks? Install the cpufreq-utils by using pakfire and setting the govenor to e.g. “on demand”?
Thank you very much in advance for your help and your time!
This is not correct. cpufreq-utils will not installed automatically. The default cpu governor is performance without installed cpufreq-utils because many users have complained that the want low latency insted of powersave. (On many systems it make nearly no difference in power consumption at Idle state but it was measurable higher latency in on demand mode.)
If you install it cpufreq-utils it will set to on-demand at next reboot if the cpu support this.
Thank you very much for your answer and your time. I will test cpufreq-utils tomorrow and report back here.
Is there any standardised way of testing latencies in an IPFire environment? Could you name the utility which is normally used for that? I will do some “before-after” measurements to be able to decide wether cpufreq-utils should be kept active or not.
Thank you very much for your help, it is very much appreciated.
Arne.F: You mention that installing cpufreq-utils will set it to on-demand status at next start. What will happen if I uninstall it later and reboot? Will cpu governor go back to performance or stay at on-demand?
On the left side of the graph you can see the CPU with Turbo-Boost disabled (= highest clock rates are 3600 Mhz), while the graph on the right shows the Turbo-Boost enabled (= highest clock-rates are 4200 Mhz).
The cpu usage was around 0.4 to 0.5% all the time.
As you can see, there are some minor down-clocks, but only on one core and not permanently. Moreover, those clock-rates only go down to ~3600 Mhz, while it should be 800 Mhz in idle state.
As the difference in power consumption between a Windows 10 installation with clockrates going down (~12W) and IPFire with all-time high clock rates (~20W) nearly doubles, i don’t want to put my new machine into usage as it runs 24/7.
Is there anything else i can do? Any ideas?
Thank you for your further assistance.
If i set the intel_pstate governor to “powersave” in all policies under /sys/devices/system/cpu/cpufreq/policy*/ , the cores will clock down to a clockrate between 800 and 4200 Mhz depending on the actual cpu load.
Oddly, doing so does not have any impact on the power consumption (not even 0.1 watts).
Regardless of the governor, the system still consumes between 3 and 7 watts more than the same system running Windows 10 x64. This sounds like a tiny amount, but is between 20 and 50% of the total power usage.
Changing the power-driver from intel_pstate to acpi_cpufreq by adding “intel_pstate=disabled” in the GRUB boot options does indeed change the power driver, but does not have any impact on power consumption.