Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.

ekwipt

macrumors 65816
Jan 14, 2008
1,067
362
I believe there were the same issues when the X299 motherboards were released, Apple have clearly not designed the MBP with adequate cooling. Amazing find and coding there!
 

joptimus

macrumors regular
Oct 7, 2016
130
128
Could anyone with a 13" who feels bold to try this, read out the default values?
I'm thinking about getting a 13" and I'm interested in what Apple has chosen/set for that machine (be it i5 or i7).

Thank you!

@winterny:
Could you please explain a bit more how to run (read only) this? I want to "practice" on my MBA.
Honestly I'm confused about the process here, haven't done this stuff on my Mac as of yet.

I downloaded the binary, so I have the file with the kext extension already.
What do I run and how?

./voltageshift read 0x610
RDMSR 610 returns value 0x4283e800dd8320

What is the actual command? The first line or "RDMSR 610"?

Do I need to customize SIP already for this read command or only when I want to overwrite the settings?
 
Last edited:

winterny

macrumors 6502
Original poster
Jul 5, 2010
433
239
Could anyone with a 13" who feels bold to try this, read out the default values?
I'm thinking about getting a 13" and I'm interested in what Apple has chosen/set for that machine (be it i5 or i7).

Thank you!

@winterny:
Could you please explain how to run (read only) this? I want to "practice" on my MBA.

./voltageshift read 0x610
RDMSR 610 returns value 0x4283e800dd8320

What is the actual command? The first line or "RDMSR 610"?

Do I need to customize SIP already for this read command or only when I want to overwrite the settings?

It's the first line "./voltageshift read 0x610" ... The second line is showing the output of the command.

And yes, you need to customize the SIP to run the read command, too, unfortunately.

I'd warn you not to write the setting on the Macbook Air using the value that I listed here for the 2018 Macbook Pro, as it is absolutely not going to be the correct setting there, and may damage your system.
 

joptimus

macrumors regular
Oct 7, 2016
130
128
It's the first line "./voltageshift read 0x610" ... The second line is showing the output of the command.

And yes, you need to customize the SIP to run the read command, too, unfortunately.

I'd warn you not to write the setting on the Macbook Air using the value that I listed here for the 2018 Macbook Pro, as it is absolutely not going to be the correct setting there, and may damage your system.

Thanks!
I know, I will not change any setting on the air, just want to get a feel for the tool.
Do I run the command from terminal? Just browse to the folder and enter the first line?

Edit:
I changed the SIP setting, but when I run the voltage shift command from terminal, it asks for my password. When I enter it, nothing happens...weird?

Edit 2:
I have a 2015 MBA...so it should work?
 
Last edited:

winterny

macrumors 6502
Original poster
Jul 5, 2010
433
239
Thanks!
I know, I will not change any setting on the air, just want to get a feel for the tool.
Do I run the command from terminal? Just browse to the folder and enter the first line?
Yep. Depending on how old the system is, this MSR value may not exist (I think the first that had this MSR was mid-2013).

If you run the read command on a system where the MSR does not exist, the system will immediately reboot.
 

joptimus

macrumors regular
Oct 7, 2016
130
128
Never mind, found the problem (you might add this to your start post if you like):

https://www.insanelymac.com/forum/topic/331775-guide-how-to-undervolt-your-haswell-and-above-cpu/

2. After you downloaded the binary you need to change the file permissions by running the following command in terminal:
sudo chown -R root:wheel VoltageShift.kext

If I do this, it works.

I get:
0x4283e800dd8320

That cannot be right...these are the same values as from your machine. I have a 15W CPU...
Maybe we need others to post their values to compare.
 

winterny

macrumors 6502
Original poster
Jul 5, 2010
433
239
Thanks!
I know, I will not change any setting on the air, just want to get a feel for the tool.
Do I run the command from terminal? Just browse to the folder and enter the first line?

Edit:
I changed the SIP setting, but when I run the voltage shift command from terminal, it asks for my password. When I enter it, nothing happens...weird?

Edit 2:
I have a 2015 MBA...so it should work?

Make sure that you are running the command from inside the directory where the voltageshift binary is. It will not work if you try and run it from another directory:
ie:
Should work: ./voltageshift
Will not work: ~/voltageshift/voltageshift

I get that same behavior of a password, pause, no response if I run it from outside the directory.
 

karanlyons

macrumors member
Jul 20, 2018
41
13
Never mind, found the problem (you might add this to your start post if you like):

https://www.insanelymac.com/forum/topic/331775-guide-how-to-undervolt-your-haswell-and-above-cpu/

2. After you downloaded the binary you need to change the file permissions by running the following command in terminal:
sudo chown -R root:wheel VoltageShift.kext

If I do this, it works.

I get:
0x4283e800dd8320

That cannot be right...these are the same values as from your machine. I have a 15W CPU...
Maybe we need others to post their values to compare.

MacBook Air?

Can people running other 15” 2018s report back their benchmark scores with these settings? This is mostly going to paper over bad VRMs, and it could still be that, say, an i7 performs better than the i9 given the limits we have to impose.
 
  • Like
Reactions: simonmet

winterny

macrumors 6502
Original poster
Jul 5, 2010
433
239
Never mind, found the problem (you might add this to your start post if you like):

https://www.insanelymac.com/forum/topic/331775-guide-how-to-undervolt-your-haswell-and-above-cpu/

2. After you downloaded the binary you need to change the file permissions by running the following command in terminal:
sudo chown -R root:wheel VoltageShift.kext

If I do this, it works.

I get:
0x4283e800dd8320

That cannot be right...these are the same values as from your machine. I have a 15W CPU...
Maybe we need others to post their values to compare.

Could be right.

Perhaps this default MSR setting is just meant as "No power limit, let the CPU draw as much power as it can", and this is the first time there is a chip which can actually draw 100+ Watts if the system could deliver it.
 

karanlyons

macrumors member
Jul 20, 2018
41
13
You can actually set these values way higher if you’re insane, so I don’t think these are “no power limit” but more like the defaults for some set of chips. I’m pretty sure 28 seconds is at least the default time at PL2, but I honestly don’t know where to directly find data sheets for MSR values.
 

karanlyons

macrumors member
Jul 20, 2018
41
13
Yes, MBA 2015 with i5-5250U.
Sorry for the confusion, I don't want to hijack this thread. It just seems very odd that I have the same settings as the 2018 MBP.

Those are actually Apple’s vendored settings for the MBA. Yes, really. I’d wager the components can’t draw enough power for it to have mattered.

But yeah, I just don’t think Apple bothered too much with actually setting the parameters on this machine. It’s possible it’s just not something they bother with in general, and it’s only just now bit them hard.
 

winterny

macrumors 6502
Original poster
Jul 5, 2010
433
239
You can actually set these values way higher if you’re insane, so I don’t think these are “no power limit” but more like the defaults for some set of chips. I’m pretty sure 28 seconds is at least the default time at PL2, but I honestly don’t know where to directly find data sheets for MSR values.

Yeah, 28 seconds is intel's default.

I don't know about the default power limits from intel on different chips. Would be interesting to see what people have on various other chips on other models ... but if that was the default on the macbook air, perhaps it is the default on everything, and it just never mattered until now since this is the first chip to actually try and draw that much power.
[doublepost=1532319286][/doublepost]
Yes, MBA 2015 with i5-5250U.
Sorry for the confusion, I don't want to hijack this thread. It just seems very odd that I have the same settings as the 2018 MBP.

I'm the OP, and I don't consider it a hijack. Interesting finding, and perhaps helps explain how this mistake happened in the first place.
 

karanlyons

macrumors member
Jul 20, 2018
41
13
FYI @winterny I can confirm that plist I posted earlier will work for a LaunchDaemon.

So at this point we’re looking at setting the package power limit correctly on boot with voltageshift and probably applying better thermal paste to the CPU and GPU, as they’re still not safe from thermal throttling. I dunno if there’s really anything to be done to improve the VRM’s performance: they’re not on the heat pipe path and while I guess you could thermal pad them to the chassis I’m not sure that does any good at all.

There are more MSRs we could go hunting for, but I don’t really want to keep soft bricking my machine to find them. 0x638, 0x640, and 0x618 might be worth trying.
 
Last edited:

winterny

macrumors 6502
Original poster
Jul 5, 2010
433
239
FYI @winterny I can confirm that plist I posted earlier will work for a LaunchDaemon.

So at this point we’re looking at setting the package power limit correctly on boot with voltageshift and probably applying better thermal paste to the CPU and GPU, as they’re still not safe from thermal throttling. I dunno if there’s really anything to be done to improve the VRMs’ performance: they’re not on the heat pipe path and while I guess you could thermal pad them to the chassis I’m not sure that does any good at all.

There are more MSRs we could go hunting for, but I don’t really want to keep soft bricking my machine to find them. 0x638, 0x640, and 0x618 might be worth trying.
638 and 640 is no longer in use.

618 Might be worth tinkering with, too, but IMHO it would be better suited for something which dynamically adjusts MSR's based on load. I think the total power budget is actually around 55W, including power for the DRAM and CPU. 49W is allowing for 6W for the DRAM, but if you had a workload which did not require that much power for the ram, you could get higher clock speeds.

Then again, I'm not sure how much useful work an app would be doing if it were spinning the CPU up to high clock speed and not using the RAM.
 

Macshroomer

macrumors 65816
Dec 6, 2009
1,305
733
This makes me want to keep my top spec 15” 2017 and refuse delivery of the new one tomorrow, what a bunch of BS on Apple’s engineering effort.
 

karanlyons

macrumors member
Jul 20, 2018
41
13
Huh, they dropped setting power for the CPU&iGPU separately? Lower values win regardless, so I guess it’s not going to offer too much unless the iGPU is a real power drain.
 

Nozuka

macrumors 68040
Jul 3, 2012
3,606
6,119
Damn those guys at Apple were really lazy.
Apparently no testing and leaving everything at the default values..
 
  • Like
Reactions: simonmet

GerritB

macrumors regular
Jul 18, 2018
116
82
Really really interesting, great job! I'll still return my machine as I just don't feel I cam rely on Apple to fix this and do so quickly, but it at least shows there's a potential way.

Would be interested to see complete benchmarks with real life applications using this.
 
  • Like
Reactions: simonmet

yashioba

macrumors newbie
Feb 8, 2010
3
1
Wow, thanks for this amazing work!
That gives some hope we can at least use some more potential of our 6-core CPUs than with the mindless default settings .

I will get my Macbook Pro 15" i7 2.6 GHz delivered today or tomorrow and I will surely check the MSR register on it and test with your recommended settings. I will let you know as soon as I have it in my hands.

One more question regarding VoltagShift: this tool apparently offers undervolting feature. Does this work with the 2018 Macbooks?

This would be fantastic as it would reduce heat and power consumption and most likely would allow us to further tap into the full potential of our machines.
 
  • Like
Reactions: simonmet

shaneshort

macrumors newbie
Jul 23, 2018
1
1
This means that PL2 (Power_Limit_2) is set to 125 Watts. Power Limit 2 is the "Turbo Boost" limit.
This means that PL1 (Power_Limit_1) is set to 100 Watts. Power Limit 1 is the "Steady State" limit, ie: how much power the CPU is configured to try and pull for extended periods of time.

This is really interesting. If you read the 7th/8th Gen tech specs, the PL1 for this CPU should be =~ TDP, which is 45W (what you're seeing). PL2 should be configured to roughly P1*1.25, so lets say 55W. These should be the *factory* settings if you cross reference the ARK and Coffee Lake datasheets.

Why is this CPU running so far out of spec? There should be no reason for it to need to use that much current to run those frequencies. Moreover, why is a 45W TDP part regularly hitting over 100W in a portable device? That's insane.
 
  • Like
Reactions: Lennyvalentin

leman

macrumors Core
Oct 14, 2008
19,522
19,679
Why is this CPU running so far out of spec? There should be no reason for it to need to use that much current to run those frequencies. Moreover, why is a 45W TDP part regularly hitting over 100W in a portable device? That's insane.

This is also an interesting question. I guess its because Intel had to sell an impressive CPU, so they took an SKU with configured as a desktop processor and sell that as a 45W part. If I remember correctly, when first leaks about the 8950hk were surfacing, it was rumoured to be a 60W part (or close to it). Which would make much more sense.

BTW, the i9 situation is by no means restricted to Apple. Laptops like Alienware also have difficulties with this CPU: https://www.notebookcheck.net/Some-...nning-any-faster-than-a-Core-i7.317268.0.html

That said, I completely agree with others though that its irresponsible by Apple to leave these settings so high if their power system can't deliver it. Its very very sloppy.
 

nickf1

macrumors member
Jul 23, 2018
47
14
Sydney, AU
I can confirm this greatly improves things (though I may have not fared as well in the silicon lottery). Note that Intel XTU under windows will allow you to alter these settings as well, though with a much nicer GUI. That also confirms that Apple left practically everything at stock parameters.

Can someone please provide the instructions to do this in bootcamp with XTU (or some other tool) (i.e. how to read and write the MSR values or if there are distinct settings for PL_1 and PL_2 etc.) ?

I'd like to see if it improves performance there too (as it should).

Thanks again for the hard work!
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.