You are not logged in.

#1 2013-12-17 10:52:05

zir_blazer
Member
Registered: 2013-12-12
Posts: 35

Is there a Software based way to undervolt a Intel Haswell Processor?

For a bit of older background, I did this Thread some months ago:
http://forums.anandtech.com/showthread.php?t=2330764


I have a Xeon E3-1245 V3 (Haswell) with retail cooling on a Workstation Motherboard, Supermicro X10SAT. Supermicro usually doesn't give you any BIOS option to do anything that would technically allow to run the Hardware out-of-spec, this includes going below retail values instead of the more famous overclocking. Why I want to undervolt? Because assuming I stress it enough to guarantee that at a lower value it is rock solid, I could reduce power consumption and temperatures (Increasing life expectancy) with absolutely no drawbacks.
At this precise moment, I'm really interesed in lowering temperatures in a urgent fashion. Due to the fact that we're going through a very hot summer (30-36°C temperatures), the retail cooling that Intel includes with its Processors sucks, I don't have air conditioner, and the computer is in a room with poor air circulation, the net result is that there has been occations where I touch the 100°C barrier and the Motherboard integrated speaker goes haywire beeping as an overheating alarm, while the Processor I suppose should be under emergency Thermal Throttling conditions. I have Turbo Boost disabled in BIOS, so it reachs those temperatures with less-than-nominal stress, and the only other thing I could disable to reduce Processor heat generation is Hyper Threading. As expected, this is not a good situation for neither Processor life expectancy, nor for my hears when it starts to beep and everyone on my household ask what the hell is that annoying noise.
Options that cost money like purchasing an air conditioner or bigger heatsink are not an alternative. So the most effective and cheaper way to mitigate this issue, would be to undervolt and underclock the Processor. Undervolting at stock Frequency would save power and reduce temperatures with no drawbacks, but due to the fact that I have far beyond CPU power that I really need, I could also underclock it to 2 GHz or so with even lower Voltages that at nominal 3.4 GHz. However, as I can't do it from the BIOS, I need a Software based tool to do so.

I have used Windows based tools to do so on my previous AMD platforms with Windows XP, including CBID (Central Brain Identifier) for K8 (Athlon 64) based platforms and K10stat for K10 (Athlon II/Phenom II) platforms. But so far, I have had no luck finding tools like that in Linux and for modern Processors. I just heared about a tool called PHC or something like that, but supposedly it is outdated and I don't know if it will work on a Haswell. So I would love to hear if anyone managed to use a Software based tool to undervolt/underclock Haswell.

Offline

#2 2013-12-17 11:31:56

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

A Haswell processor will run at near-zero voltage most of the time anyway (in the C7 state), so there's not much point in undervolting.

If it's thermal management you want, install thermald.

Offline

#3 2013-12-17 11:54:17

zir_blazer
Member
Registered: 2013-12-12
Posts: 35

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

Gusar wrote:

A Haswell processor will run at near-zero voltage most of the time anyway (in the C7 state), so there's not much point in undervolting.

I doubt it enters C7 state when its on Full Load... Actually, that sounds exactly like the guys in the Anandtech Thread I linked that keep saying "undervolting Haswell is pointless because its soo efficient in idle", while entirely forgetting that undervolting shines on load scenarios:
http://www.anandtech.com/show/5763/unde … ivy-bridge

I want to lower the Voltage while on C0 state to reduce peak temperatures during usage and avoid getting close to throttling temperatures. So yes, there is a point, I just need a tool to do so.


Gusar wrote:

If it's thermal management you want, install thermald.

I checked their website:
https://01.org/linux-thermal-daemon/doc … mal-daemon
Sounds interesing, but is not what I want. I need something like PHC but that works on Haswell:
http://www.linux-phc.org/

Offline

#4 2013-12-17 14:07:35

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

zir_blazer wrote:

Actually, that sounds exactly like the guys in the Anandtech Thread I linked that keep saying "undervolting Haswell is pointless because its soo efficient in idle", while entirely forgetting that undervolting shines on load scenarios

Are you aware how much time a processor actually spends in idle? Hint: It's a lot. Unless you're running a continuous task that utilizes 100% of all CPU cores every millisecond, a lot of the CPU time will be in idle.

zir_blazer wrote:

to reduce peak temperatures during usage and avoid getting close to throttling temperatures. So yes, there is a point, I just need a tool to do so.

thermald is that tool.

zir_blazer wrote:

Sounds interesing, but is not what I want.

It is exactly what you want. The scenario you describe is the main thing thermald was created for.

Offline

#5 2013-12-17 14:12:31

Thorsten Reinbold
Member
From: Germany
Registered: 2011-12-06
Posts: 353

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

Remove the intel retail cooling and replace it with something more efficient.

Offline

#6 2013-12-17 16:13:02

zir_blazer
Member
Registered: 2013-12-12
Posts: 35

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

Gusar wrote:
zir_blazer wrote:

Actually, that sounds exactly like the guys in the Anandtech Thread I linked that keep saying "undervolting Haswell is pointless because its soo efficient in idle", while entirely forgetting that undervolting shines on load scenarios

Are you aware how much time a processor actually spends in idle? Hint: It's a lot. Unless you're running a continuous task that utilizes 100% of all CPU cores every millisecond, a lot of the CPU time will be in idle.

Are you aware about why my Processor reachs 100°C and the alarm starts to beep? Hint: Its not when it is in Idle. Improving Idle doesn't help me in anything at all, so how efficient it is idling at C7 is quite useless.


Gusar wrote:
zir_blazer wrote:

to reduce peak temperatures during usage and avoid getting close to throttling temperatures. So yes, there is a point, I just need a tool to do so.

thermald is that tool.

zir_blazer wrote:

Sounds interesing, but is not what I want.

It is exactly what you want. The scenario you describe is the main thing thermald was created for.

I checked twice the documentation and it MAY help me, yet much less than what you think. Its just a ugly bandaid and doesn't fix the core problem.
It pretty much says that it starts activating cooling early before Hardware does it itself as a dramatic emergency measure. However, Fans are always spinning at max speed (Set it from BIOS), and Turbo is already disabled (Also from BIOS). The only thing it can do is kicking in slower Power States earlier, before spamming HLT instructions then Throttle States, which are already part of the standard Thermal Throttling procedure if I recall correctly. Using a slower Power State (Which is basically a lower Frequency/Voltage point, so technically it counts as undervolt) could do it, but I want it to not go beyond a determined PState to make sure it doesn't even get close to critical temperatures, so I have that headroom as safety margin. Reason why I want manual controls, not an automatic program.


I think I MAY have found what I want, it seems PHC can do it:
http://forums.gentoo.org/viewtopic-p-73 … ml#7399530
Gonna give this a try. There is a one months old version on the AUR repository.


Thorsten Reinbold wrote:

Remove the intel retail cooling and replace it with something more efficient.

I said that spending money is not an option. Unless you're volunteering yourself to make me a christmas gift.

Offline

#7 2013-12-17 17:43:08

Gusar
Member
Registered: 2009-08-25
Posts: 3,605

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

zir_blazer wrote:

Are you aware about why my Processor reachs 100°C and the alarm starts to beep?

This to me indicates a problem that needs to be fixed (insufficient and possibly faulty cooling), not hacked around by running the processor out-of-spec. Getting into critical mode should be the exception, not the norm.

zir_blazer wrote:

Improving Idle doesn't help me in anything at all, so how efficient it is idling at C7 is quite useless.

It's not about "improving idle states". It's about letting the processor work as it was intended to.

zir_blazer wrote:

Its just a ugly bandaid and doesn't fix the core problem.

No, what you are doing are ugly bandaids. thermald was created to make use of the capabilities provided by intel_pstate and intel_powerclamp and RAPL and such, it is the proper way to keep long-running processes in check, and to make sure thermal conditions do not exceeded configured thresholds. This is exactly what you want to do. But thermald does it using frameworks that were specifically designed for this, instead of hacking the processor to run out-of-spec.

Last edited by Gusar (2013-12-17 17:58:13)

Offline

#8 2013-12-17 18:34:04

Xyne
Administrator/PM
Registered: 2008-08-03
Posts: 6,965
Website

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

I have to agree that it should not be hitting critical temperatures. Do you regularly clean out the case? If you often run at full CPU load, you should change the thermal grease as often as once a year. I know that you said that spending money is not an option, but a tube of decent thermal grease will not cost more than a meal at a fast foot place. (edit: ok, you'll need some isopropanol or acetone to remove the old grease, but that shouldn't cost more than a drink at the same fast food place).

I'm also inclined to agree that undervolting is a workaround, not a solution. This seems very much like an XY problem.

Last edited by Xyne (2013-12-17 18:36:59)


My Arch Linux StuffForum EtiquetteCommunity Ethos - Arch is not for everyone

Offline

#9 2013-12-17 20:23:48

zir_blazer
Member
Registered: 2013-12-12
Posts: 35

Re: Is there a Software based way to undervolt a Intel Haswell Processor?

Xyne wrote:

I have to agree that it should not be hitting critical temperatures. Do you regularly clean out the case? If you often run at full CPU load, you should change the thermal grease as often as once a year. I know that you said that spending money is not an option, but a tube of decent thermal grease will not cost more than a meal at a fast foot place. (edit: ok, you'll need some isopropanol or acetone to remove the old grease, but that shouldn't cost more than a drink at the same fast food place).

The build is just two weeks old. Is still pristine. Grease is the default that comes preapplied under the stock heatsink. But you are forgetting that Haswells typically DO run hot:
http://www.legitreviews.com/intel-core- … ew_2203/13
You will find tons of people in forums asking if their 80°C+ temperatures aren't too high. However, my case is aggraviated by all what I mentioned earlier:
Summer with a powerful heat wave, we're with 35°C ambient temperature. I'm naked yet still bathed in my own sweat
No air conditioner or anything else on my house but some fans, and the one in my room is blowing directly to the case, which is open
Crappy stock heatsink and stock grease, with what a Core i7 4770 can easily hit 80°C with these on better conditions


Xyne wrote:

I'm also inclined to agree that undervolting is a workaround, not a solution. This seems very much like an XY problem.

You can consider it a workaround if you like. Still, as a workaround its excellent: Has no drawbacks as long as you take care to stress test stability to make sure its rock solid, its free, reduces power consumption so you spend a bit less on electricity, reduces temperatures which increases components lifespan, and on some border cases like this one allows you to not get to Thermal Throttling if you're against all odds. And on Mobile form factors, its even better as you can get a bit extra battery life, and most of the cheaper Notebooks with bad build quality have rather poor cooling to being with, too, with those nasty finger-burning keyboards. I view it as a solution, because for a temperature issue, you can tackle it either adding more cooling, or reducing the heat generated. I usually go with the latter, but my problem is that I can't find a way to apply it in here (No BIOS support for out-of-spec, no Software based tools for do so like in my previous AMD platforms).
There are a few places devoted to what I do, so don't think that I'm crazy simply because you're not used to these methods:
http://forum.notebookreview.com/hardwar … guide.html
http://www.silentpcreview.com/article33-page1.html



PHC seems to not have Haswell support, according to authors:
http://www.linux-phc.org/forum/viewtopic.php?f=8&t=5140
Disappointing. I'm out of luck this one. Delidding seems to be the only "free" option, but I'm not going to risk a 2 weeks old 300 U$D Processor doing so. Forget my balls in the other pants.

Last edited by zir_blazer (2013-12-17 20:24:46)

Offline

Board footer

Powered by FluxBB