Powernow-k8 power saving


Recommended Posts

Fellow Xpenologists,

 

Has anybody gotten the powernow-k8.ko module to work with their AMD CPU, in terms of power saving? I've been playing around with my setup and did not see any power saving. Here's the setup:

 

cpu: AMD A8-3800

mobo: GA-A75M-D2H FM1 A75

boot loader: gnoboot alpha 10.5 on USB stick

DSM: 5.0-4458 update 2

HDD: 1TB WD blue

 

After much reading from the forum, I inserted the powernow-k8.ko in /lib/modules/ with insmod and installed cpufreq-utils to run cpufreq-set. With the ondemand scaling governor, the CPU is read from /proc/cpuinfo as 800MHz for all 4 cores during idle and will jump to 2.4GHz with load. *BUT* the kill-a-watt reading barely moves at 39-40 watts, at min and max CPU frequencies. Am I missing something? By the way, I've made sure that the BIOS has AMD Cool'n'Quiet enabled.

 

This has been driving me crazy for the last few days. I must also add that this same setup was previously used as an HTPC consuming ~29W in idle in Windows 7 Ultimate, with an optical drive as well.

 

Thanks in advance for any insights or suggestions.

Link to post
Share on other sites

After poking around some more, I found that my motherboard has a BIOS version that supports the C6 idle state and so I went ahead and flashed that version. With more reading, I also found that the cstate is supported or handled by ACPI, not by powernow module (or so it seems).

 

Does anybody know how to get ACPI working? Specifically, how do I know if ACPI=on and CONFIG_ACPI_PROCESSOR is enabled in the kernel? From what I've been reading so far, this will use ACPI for cpu idle states.

 

Thanks in advance for any feedback.

Link to post
Share on other sites
  • 3 weeks later...

Some update and perhaps a conclusion to this post. I gave up fiddling with C-states, and ended up undervolting the CPU by 200mV, and the NB by 150mV. That brought my idle power to ~35W and hopefully with disk spindown it should be about ~30mW. Such a shame that C6 is not being utilized though, since it can potentially bring the CPU voltage down to 0V.

Link to post
Share on other sites
  • 1 month later...

Hi dtran,

 

I recently try your way to configure cpufreq governor. (using ipkg cpufrequtils)

 

In gnoboot10.5 w/ powernow-k8.ko, the governor works well, able to automatically switch freq in all cores. (4 in my case)

However, in nanoboot, the powernoe-k8.ko is missing, and it seems the only way for me is the acpi-cpufreq. But still, I can't insmod it and there's no governor shows in cpufreq-info.

 

After a few searching, I found someone said nanoboot don't have acpi loaded in default. Do you have a solution for acpi examination?

Since the nanoboot seems rebuild the kernel, not sure if the powernow-k8.ko could be loaded.

Link to post
Share on other sites

jkm, yes I ran into the same problem that you saw: nanoboot doesn't include powernow-k8.ko and acpi-cpufreq could not be insmod'd during boot. I lived with it for a while but I saw an Intel deal I couldn't resist, a $30 G1820 (Haswell) from Microcenter. So I swapped my AMD setup for an Intel version (w/ a B85 mobo that also came on another deal). Essentially it has almost the same performance as the A8-3800 in terms of cpu benchmark but now I have acpi-cpufreq support. Using i7z from ipkg, I can see that cpu idle is using up to C6 now. The cpu performance is used for Plex support by the way.

 

So the short answer is that I didn't solve the nanoboot issue with AMD CPUs. But have you looked at the power usage with a power meter? I had the AMD setup idle power almost equivalent to the Intel setup (27-28W no HDD), by undervolting cpu/mobo but the upper envelope (65W AMD TDP vs 54W Intel TDP) actually is more in AMD: mid-50W vs mid-40W (with 2xHDD).

Link to post
Share on other sites

dtran, thanks for replying.

 

Yes, I also get a Watt meter (cheap one, probably not so accuracy), and it reads 75W in my gnoboot 10.5 system (with governor set 2core@conservative, 2core@ondemand, lowest at 800MHz). Which is around 10W difference compared to no governor set (all core @3.0GHz).

 

My machine is 3HDD(1*OLD HITACHI 160G, 1*WD red 2TB, 1*Seagate VX 2TB), cpu(AMD X4 640), m-ATX board(780g), no other pci interface card, 350W fsp power(no 80+ certification)

 

list as below:

gnoboot 10.5 w/ powernow - governor set - idle 800MHz ~75W

gnoboot 10.5 w/o powernow - NO governor - idle 3.0GHz ~85W

nanoboot 5.0.3.1 w/o powernow - NO governor - idle 3.0GHz ~85W

 

pretending each HDD consume 8~10W(no hib), raw system power consumption is 45~55W. The total power consumption was still too high for a 24/7 system IMAO, however, this machine was my old desktop, not built for NAS purpose. And sadly there's no undervoltage setting available in my motherboard BIOS, it seems the only way to lower it would be hardward replacement.

 

Thanks for your advice anyway. :wink:

Link to post
Share on other sites

There's one more thing that you may be able to do, which is to install DSM with gnoboot 10.5 on a temporary setup or hard drive. Then you can extract powernow-k8.ko from/lib/module and save somewhere else (maybe the usb stick). As you re-install with nanoboot to the desired setup, import that file to /lib/module. I thought about this for mine but then I went with Intel and didn't go through that step.

Link to post
Share on other sites

Yes, I though exactly the same way as you mentioned. But my system runs okay with gnoboot now, probably won't do too much change to that in near future. If there's any need to upgrade to further FW(which gnoboot doesn't support), I will try and reports that way here.

 

BTW, since I use 780g as mobo chipset with internal display, I try to lower the freq of display(default 500MHz -> 150MHz lowest available setting), and it turns out that reduced the power by ~4W to 71W. Still pretty high though, but I will try some more tweak and report here.

Link to post
Share on other sites