Faster, Not Slower

The 15-inch and 17-inch MacBook Pros offer your choice of Core i5 or i7 processors. If you follow Intel’s model numbers, you can get either a Core i5 520M, 540M or Core i7 620M. These chips run at 2.40GHz, 2.53GHz or 2.66GHz by default.

Wait! But the old 15-inch MacBook Pro ran at 2.53GHz, 2.66GHz or 2.80GHz by default. These new models are slower! After reading that a few times online yesterday, I knew it was time for a quick refresher on microprocessor architecture and performance.


Intel's Arrandale Lineup

There are three ways we can improve CPU performance these days: increase clock speed, increase IPC or increase thread count. The first improvement is the obvious one. Keep all other variables the same, just make the chips run at a higher frequency. The second one requires that we increase the amount of work our CPU does in each clock cycle (increasing the number of instructions completed per clock, or IPC). And the third one is to simply increase the number of simultaneous threads our CPU can handle, either through multiple cores or multiple threads per core.

With Arrandale, the mobile Core i5 and i7, Intel actually used all three tricks to improve performance.

I’ll start with the middle improvement: increasing IPC. Arrandale brings a dual-channel memory controller on-package (it’s actually on the GPU and not the CPU as you may remember). This improves bandwidth which in turn keeps the CPU cores fed with data and thus increases overall IPC.


The Arrandale die. Graphics on left, CPU on right.

The cache hierarchy has changed quite a bit since the Core 2 days. Instead of a large shared L2 cache, each of the two Arrandale cores have their own private 256KB L2 cache. The cache is the fastest of any desktop CPU today requiring only 10 cycles to access it. As I wrote in the past, the L2 is quickly becoming the new L1 so low latency access matters more than size. The catch-all cache moves down a level and Arrandale has a large 4MB L3 cache. On the Core i7s you get the full 4MB, while the i5s disable 1MB leaving you with 3.

There are some instruction and execution level improvements as well, which I’ve detailed here and here. Specific to Arrandale (and the rest of the Westmere family) are new AES instructions designed to accelerate encryption/decryption operations.

The takeaway here is any slight drop in default clock speed is at least partially negated by the increase in performance per clock. If that’s not enough, Arrandale also brings Turbo Boost to Intel’s mobile chips.

These Core i5 and i7 processors have about a million transistors dedicated to power management. It’s a little section of the CPU called the PMU (Power Management Unit). The PMU monitors CPU temperatures, current draw and power consumption. Based on these inputs as well as the current load on the CPU, the PMU can tell the rest of the CPU to increase its clock frequency. The CPU is allowed to increase its operating frequency in 133MHz steps up to a predefined max speed. The max speed is determined by Intel as well as the number of cores that are actively doing work on the chip.

The whole process works like this. If you have all cores active and the workload they’re running isn’t maxing out the CPU’s specified current or power draw, the cores can run at a higher frequency. If you have only one core active, the other core is power gated (effectively shut off) and the active core is allowed to turbo up several bins as long as it remains within its current, temperature and power limits.

The result is that most of the time your 2.40GHz Core i5 runs at 2.66GHz, and if you’re only running single threaded applications you’ll see it bounce from 2.66GHz to 2.80GHz and 2.93GHz. So even if the IPC improvements brought on by Arrandale weren’t enough, you’ll rarely run at your base clock speed when you need the performance. Intel’s Turbo Boost works beautifully in practice and the transition to OS X seems to have gone well.


The 2.40GHz MacBook Pro running at 2.93GHz thanks to Turbo

The final vector for performance improvement is by increasing the number of threads your CPU can work on at once. Threads are nothing more then collections of instructions, which themselves are the basic work units of any CPU. The more threads you can actively complete in parallel, the higher your overall CPU performance.

All Arrandale based Core i5 and i7 CPUs are dual-core processors, that’s two threads right there. Each core however can work on two threads at the same time thanks to Intel’s Hyper Threading bringing us up to four total threads on the new MacBook Pro. Two of those threads are virtual and are simply designed to occupy any idle resources on a core. Hyper Threading doesn’t give the same performance boost as you’d get from four cores, but what it does give you is better-than-dual core performance without the power requirements of four physical cores. For a notebook designed with portability in mind, the tradeoff is ideal.

The downside to all of this? Only the 15-inch and 17-inch models get Arrandale, the 13-inch MacBook Pro sticks with the old Penryn derived Core 2 Duo architecture. If you were holding out for a 13-inch Arrandale model, you’ll have to keep waiting.

Apple's 2009 Lineup 13-inch MacBook Pro (Early 2010) 13-inch MacBook Pro (Late 2009)
CPU Intel Core 2 Duo 2.40GHz Intel Core 2 Duo 2.26GHz
Memory 4GB DDR3-1066 2GB DDR3-1066
HDD 250GB 5400RPM 160GB 5400RPM
Video NVIDIA GeForce 320M (integrated) NVIDIA GeForce 9400M (integrated)
Optical Drive 8X Slot Load DL DVD +/-R 8X Slot Load DL DVD +/-R
Screen Resolution 1280 x 800 1280 x 800
USB 2 2
SD Card Reader Yes Yes
FireWire 800 1 1
ExpressCard/34 No No
Battery 63.5Whr 60Whr
Dimensions (W x D x H) 12.78" x 8.94" x 0.95" 12.78" x 8.94" x 0.95"
Weight 4.5 lbs 4.5 lbs
Price $1199 $1199
They’re Actually Faster
Comments Locked

114 Comments

View All Comments

  • yodasz - Thursday, April 15, 2010 - link

    I wonder if the SSD performance and compatibility issues have been addressed in this revision? Does anybody have an update on that?
  • Anand Lal Shimpi - Thursday, April 15, 2010 - link

    3Gbps works out of the box (confirmed on Corsair's Force 100GB drive). The system seems to work fine with the SandForce controller, but the same is true for the previous gen. I haven't tried Indilinx yet. Intel also appears to work fine.

    Take care,
    Anand
  • solipsism - Thursday, April 15, 2010 - link

    That is the most important information from this release. Sadly, you are likely the only one to report on it.

    How does the use of SATA II over SATA III affect the performance of SSDs?
  • Anand Lal Shimpi - Friday, April 16, 2010 - link

    The only SSD that can benefit from 6Gbps SATA is the Crucial/Micron RealSSD C300, which I've briefly talked about here:

    http://anandtech.com/show/2944

    The problem today is some 6Gbps SATA controllers are actually slower than Intel's 3Gbps SATA controller:

    http://anandtech.com/show/2973/6gbps-sata-performa...

    Realistically I don't expect 6Gbps SATA to be that important to SSD performance until next year.

    Take care,
    Anand
  • Pat69 - Friday, April 16, 2010 - link

    Do you know which kind of SSD Apple is providing through the 3 options (128, 256, 512)? Are these SSD good ones?
  • Anand Lal Shimpi - Friday, April 16, 2010 - link

    Apple doesn't like confirming this kind of stuff, but I'm guessing they are supplied by Toshiba and/or Samsung. If so, the drives are ok but not particularly great. I'd save the upgrade cost and do it yourself aftermarket.

    Take care,
    Anand
  • kirkrw - Friday, April 16, 2010 - link

    I take it then that your recommendation would be to that same $500 that Apple wants for their 256G SSD and put it toward a 160G x25-M gen 2?
  • bradpowers - Monday, April 19, 2010 - link

    Could we get benchmarks on the MBP with the Corsair F100? I'm very interested in that combination.
  • stimudent - Thursday, April 15, 2010 - link

    Still measuring in inches and feet...
  • Squuiid - Thursday, April 15, 2010 - link

    Aynbody know what model the 256GB SSD is?

Log in

Don't have an account? Sign up now