Submit Hint Search The Forums LinksStatsPollsHeadlinesRSS
14,000 hints and counting!

Enable SpeedStep support on any capable Intel CPU System
As described on Wikipedia, SpeedStep "is a trademark for a series of dynamic frequency scaling technologies (including SpeedStep, SpeedStep II, and SpeedStep III) built into some Intel microprocessors that allow the clock speed of the processor to be dynamically changed by software. This allows the processor to meet the instantaneous performance needs of the operation being performed, while minimizing power draw and heat dissipation."

Apple implements SpeedStep on certain Macs, but not all of them (and if you've built your own Mac, you may not have any SpeedStep support). Here's how to enable SpeedStep on any Mac: Use the xnu speedstep kernel extension. Just download IntelEnhancedSpeedStep.kext.1.4.5.zip, then copy IntelEnhancedSpeedStep.kext into /System/Library/Extensions. Don`t forget to repair permission (in Disk Utility) when done, then reboot your Mac.

Now we can see dynamic frequency and power changes. Also see sysctl -a | grep kern.cputhrottle from Terminal, and read the AutoThrottle wiki for more information. There you'll find the command sysctl -w kern.cputhrottle_targetload=XY. However, you can also edit the TargetCPULoad parameter in /System » Library » Extensions » IntelEnhancedSpeedStep.kext » Contents » Info.plist file.

[robg adds: I haven't tested this one, and would categorize this hint as experimental -- use at your own risk!]
    •    
  • Currently 1.73 / 5
  You rated: 3 / 5 (11 votes cast)
 
[38,870 views]  

Enable SpeedStep support on any capable Intel CPU | 15 comments | Create New Account
Click here to return to the 'Enable SpeedStep support on any capable Intel CPU' hint
The following comments are owned by whoever posted them. This site is not responsible for what they say.
Enable SpeedStep support on any capable Intel CPU
Authored by: drudus on Mar 11, '09 08:14:47AM

Will repairing the permissions fix the newly added kext file? The posts seems to suggest a 'drag install' that won't create a receipt entry for repair permissions to use.

I don't have the kext, but I think this core2duo mini automatically tweaks the clock speed based on load.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: robogobo on Mar 11, '09 08:32:11AM

sounds scary. you go first.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: herothedog on Mar 11, '09 08:38:52AM

Does not work on Core Duo Mac Pro, just panics the box when loading.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: slswift on Mar 11, '09 08:50:06AM

Do we know which machines SpeedStep is and is not enabled on?

Is the lack of that extension in our /System directory indicative of no SpeedStep? Or does Apple use a different kext when they enable it?

Very interested, but slightly scared of this hint.

Thanks,
Spencer



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: crazyates on Mar 11, '09 09:13:23AM

That same wikipedia articles also claims this:

"Mac OS also has SpeedStep built into the kernel, since the release of the Intel version of Mac OS X 10.4, and is already enabled."

A little digging and you can find other places that confirm this. I see no need for this hint, and I fear a lot of people are going to screw up their Macs.

If you are looking to control speedstep a little more, CoolBook is a good program. It lets you lock your CPU at a specified step, and apply custom voltages for further power savings. I tried it a while back, and the only side effect was ffmpegx would crash at the very end of a conversion, even with the factory settings. Thus, I havn't used it in months. That was with 10.4, I might give it a look with 10.5.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: outZider on Mar 11, '09 10:29:25AM

Unfortunately, when you pay for CoolBook, you're only paying for one machine. If you ever replace your MacBook, with, say, a newer MacBook, the author tells you to take a long walk off a short pier and pay up again.

I had a Mac that lasted about three months before I sold it off and replaced it, as it wasn't what you'd call "reliable". When I fired up CoolBook on the new machine, it told me I had too many machines active. When emailing the author, he let me know that I would have to pay up again. One could argue that it's so you can't run it on more than one machine at the same time, but the software phones home, he could deactivate one machine and activate another.

It's not an expensive piece of software, but man, did that turn me off. That being said, it's pretty clearly stated on the web site.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: mercurysquad on Mar 20, '09 07:28:05AM

The Wikipedia article (as expected) is wrong.

SpeedStep has not been built into the xnu kernel, ever. Clock recalibration code was present in older xnu versions, but this has also been removed. SpeedStep is controlled via an Apple-supplied kernel extension (driver) instead.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: posix on Mar 11, '09 11:29:45AM

Work on my mac mini with Intel(R) Core(TM)2 CPU T7200 @ 2.00GHz:
sysctl -a | grep kern.cputhrottle
kern.cputhrottle_curfreq: 1000
kern.cputhrottle_curvolt: 1004
kern.cputhrottle_freqs: 1000 1333 1500 1667 1833 2000
kern.cputhrottle_factoryvolts: 1004 1132 1196 1260 1324 1372
kern.cputhrottle_ctl: 1555
kern.cputhrottle_auto: 1
kern.cputhrottle_targetload: 70
Also work on new macbook pro.

"CoolBook is a good program" but also install one kext into your system and the price for the license is $10 =(

thanks to hint!



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: DEMON on Mar 11, '09 02:44:09PM

I installed it on my iMac C2D

kern.cputhrottle_curfreq: 800
kern.cputhrottle_curvolt: 876
kern.cputhrottle_freqs: 800 1200 1400 1600 1800 2000 2200 2400
kern.cputhrottle_factoryvolts: 876 988 1052 1116 1180 1244 1308 1356
kern.cputhrottle_ctl: 34827
kern.cputhrottle_auto: 1
kern.cputhrottle_targetload: 30

Works like a charm, without any problems



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: tangles on Mar 11, '09 06:33:31PM
Be careful people.

it works.
proof: http://files.me.com/tangles/r8vwo3.mov

This is my MacPro at home.

Just so people know, speed stepping occurs automatically, out-of-the-box by Apple.

I use the kext to stop it from automatically stepping down to a lower cpu frequency. (thank you to the authors!)
Why?
It's related to high resolution audio files and latency issues associated with playback and recording.

Those of you who wish to use this kext, I strongly recommend that you use smc fan control or equivalent.
CPU temperatures can get very warm very quickly under 100% load!

Be warned.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: transeau on Mar 13, '09 09:27:09AM

Which Mac Pro?

This Panics my MacPro1,1 (3Ghz)



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: marclipovsky on Mar 12, '09 09:35:47AM
From version 1.4.0 and up. the kext uses auto throttle (http://code.google.com/p/xnu-speedstep/wiki/AutoThrottle). It does say to either remove Speedstep or put it in manual:
(from autothrottle page)

If you are using any speedstep gui like DCPUManager or tuxx SpeedStep.app, please deactivate them, or put them in Manual mode. Otherwise it will interfere with the kext's auto-throttling. If you put these apps in Manual mode, you can still see the frequencies that the kext is choosing.

[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: pmcarrion on Mar 12, '09 09:37:27AM

I installed the kext and set the TargetCPULoad to 95 but don't notice any difference....
What is this supposed to do? Longer battery life and better performance?
I tried the terminal commands and got this:
kern.cputhrottle_freqs: 800 1200 1400 1600 1800 2000 2200 2400 2600
I'm using this on a 2.6GHz Core2Duo MBP.



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: posix on Mar 12, '09 11:24:50AM

Longer battery life and low noise fan(with fan control) =)



[ Reply to This | # ]
Enable SpeedStep support on any capable Intel CPU
Authored by: mercurysquad on Mar 20, '09 07:25:21AM

I'm the author of the kernel extension this post links to.

I'd like to point out a couple of important things, to minimize any damage:

  1. Do NOT use v1.4.5 — that is beta software intended to test a few features. There have been reports of kernel panics. Use v1.4.0 which is the latest STABLE version.
  2. You must disable or remove AppleIntelCPUPowerManagement.kext before you can use this kext. The recommended way is to install PMdisabler.kext (find it via Google) which will disable the Apple kext without having to remove it.
  3. Before you install the kext into your Extensions folder, you should set its permissions and test-load it to make sure it works -

    
    sudo chown -R root:wheel ~/Downloads/IntelEnhancedSpeedStep.kext
    sudo chmod -R 755 ~/Downloads/IntelEnhancedSpeedStep.kext
    sudo kextload ~/Downloads/IntelEnhancedSpeedStep.kext
    

    If your computer panics at this moment, do NOT install the kext.

  4. If you installed the kext anyway, and cannot boot your mac anymore, simply boot up with [b]-s[/b] option (single-user mode). The kext does not load in single-user mode. You should then delete the kext from the command line by mounting your harddrive (commands are given when you boot) and then rm -rf /System/Library/Extensions/IntelEnhancedSpeedStep.kext
  5. Hope that helps.



    [ Reply to This | # ]