Retina Display: Scrolling & UI Performance

With the first Retina MacBook Pro I noticed UI performance in certain applications degraded considerably compared to previous, non-Retina MBPs. Browsing my Facebook news feed in Safari and scrolling down as well as just scrolling through a long email thread in Mail both caused frame rates to drop below 30 fps. Performing the same tests on my 2011 15-inch MBP yielded UI frame rates closer to 60 fps.


13-inch rMBP (left) vs. 15-inch rMBP (right)

The move to Mountain Lion improved UI performance, but it's still an issue. Switching between Retina and non-Retina MacBook Pros results in a very noticeable difference in UI frame rates, especially in problematic applications.

Apple does a lot of CPU and GPU work to make OS X look like OS X. Scaling the workload up from 1.76 million pixels to 4 and 5 million pixels creates additional work for both the CPU and GPU that neither chip vendor had planned on. Apple had to replace some fixed function code with general purpose CPU and GPU code to achieve consistent image quality in enabling Retina, which obviously has performance implications.

Next-generation GPUs should do a better job of driving these ultra high resolution displays, but today it looks like our biggest bottlenecks are software and single threaded CPU performance. In every situation where UI frame rate drops significantly on the rMBP, the offending application usually ends up consuming 100% of a single CPU core. This is true in Safari, Mail and other applications where I notice drops in scrolling frame rate.


The worst case UI perf

The worst case performance I recorded on the 13-inch rMBP was 16 fps when scrolling in Safari with Facebook loaded at the 1440 x 900 scaled resolution setting. Minimum frame rate at the default best for Retina setting ended up being around 18 fps. It's distracting and a clear regression from other, non-Retina Macs. That's the lowest performance you see, but not everything falls into that range. Scrolling down the AnandTech front page for example happens at around 40 - 50 fps at the 1440 x 900 scaled resolution. Other animations will happen as high as 60 fps, although you typically notice when things are slow not when they're performing as expected.


The better case

The 13 I'm testing had demonstrably lower scrolling performance than my 15-inch rMBP, but I believe that has to do with the difference in CPU clocks more than anything else. My 13 uses a 2.5GHz Core i5 that can turbo up to 3.1GHz, while my 15 has a max single threaded turbo of 3.6GHz - an increase of 16%. There's also the fact that the 15-inch model features a quad-core CPU, leaving you with more idle cores in the event that you're actually doing more than just scrolling all day. I suspect the combination of these two things is why a lot of folks perceive the 15-inch rMBP to deliver faster UI performance.

The 15-inch model does have a discrete GPU, however I didn't notice a big performance difference in UI frame rates when I was on integrated vs. discrete graphics. I do believe that a lot of the present issues are related to Apple not GPU accelerating more of the drawing pipeline and as a result, single threaded CPU performance suffering under the load of 4 and 5MP displays. Intel (and AMD) design their CPUs for the types of workloads most of their customers will be running. The vast majority of the market isn't running OS X with 4MP+ panels. A lot of this is related to OS X itself, as you don't have the same scrolling issues under Windows. As we saw in our Surface review, simply making an application (or in this case, an OS) look a certain way can eat up a good amount of CPU time.

There's not much you can do here other than wait for faster hardware or buy the fastest CPU available on whatever system you're considering. Single threaded performance will scale linearly with CPU clock speed, so higher clocked CPUs should deliver smoother scrolling performance. Ultimately just scaling CPU clock is an inefficient way to solve the current UI frame rate issues. Future revisions of OS X will likely shift even more UI workload to the GPU, plus we'll see new microprocessor architectures that will perform better with these types of workloads as well. The only issue is I don't know when either of these things will happen. Haswell should bring a good increase in IPC and maybe even a slight increase in frequency, which will definitely help.

What we'll need however, without any significant changes to OS X is an outright doubling of single threaded CPU performance. In the worst case scenario that could mean that we won't see UI frame rate fixed for years. I doubt it'll be that long, if I had to guess I would say that Haswell will bring a good improvement and around the Broadwell (2014) timeframe is probably we'll see things really get better. I don't have intimate knowledge of Apple's OS X roadmap and I also don't know the instruction mix that's causing this behavior so I can't really say anything for certain, I'm just speculating.

The 13-inch Retina Display in Numbers USB 3.0 Performance
POST A COMMENT

79 Comments

View All Comments

  • KPOM - Tuesday, November 13, 2012 - link

    The 13" MacBook Pro always had a dual core processor and never had discrete graphics. The Retina version is no different in that regard. If it isn't a "Pro" than neither is the non-Retina version.

    As an 11" MacBook Air user, the weight difference and extra thickness are more noticeable to me. Hopefully Apple comes out with an 11" MacBook Pro with Retina Display, since it does look very nice (I saw one in the store and it blew away the screen on my Air).
    Reply
  • Arbee - Tuesday, November 13, 2012 - link

    Agreed. Much as the original Air was basically an engineering placeholder waiting for SNB to make it good, this seems to be a placeholder waiting for at least Haswell, and possibly Broadwell. Reply
  • jeffbui - Tuesday, November 13, 2012 - link

    Anand, your aspect ratio chart is off. The MBPs are still 16:10 Reply
  • jeffbui - Tuesday, November 13, 2012 - link

    Oops, looks like you switched the 16:9 chart with the 16:10 chart. Reply
  • iwod - Tuesday, November 13, 2012 - link

    I wonder why Apple do not all stick to the same 16:10 ratio. The New iMac is 16:9, while all notebook are 16:10. Reply
  • Aenean144 - Wednesday, November 14, 2012 - link

    iMacs have >20 inch screens. When you get that big, there's enough vertical screen space so that wider aspect ratio screens are tolerable.

    For smaller screen laptops, vertical space is at a premium. 16:10 is at best a compromise to me. Going to 16:9 would make it less usable.
    Reply
  • yserr - Tuesday, November 13, 2012 - link

    I have a MBP 15" (no Retina). I'm willing to give up GPU or quad, but not both, for portability.
    Do you think haswell will bring quad core to the 13" MBPr.

    I think with the dismiss of the 17" and the trend to smaller, light devices. The 15" will be the new 17" and the 13" will be the new 15".

    The 15" rMBP has two soldered ram banks the 13" rMBP has one.
    Are there 16GB modules which are reasonable priced for one bank (which apple could offer)?

    I will wait for haswell and than decide between 13" and 15".
    My dream machine will be 13" rMBP with 16GB Ram and quad.... so I hope haswell will deliver my dream :-)
    Reply
  • iwod - Tuesday, November 13, 2012 - link

    Quad Core as standard and 2x Graphics Improvement. That is what i am hoping for as well. But with the 4x increase in Pixel count i doubt even Haswell is even good enough in Graphics Department. I just hope Broadwell will bring at least 3x performance over Haswell. Reply
  • yserr - Tuesday, November 13, 2012 - link

    At least you see here (http://bit.ly/PalAfy - Haswell Preview) on the haswell slides that they will support 4k and High Resolution Displays. Lets see if they can deliver the performance needed for that. No question Broadwell will be better than Haswell. I hope Haswell will be fast enough for my needs. Reply
  • Kevin G - Tuesday, November 13, 2012 - link

    Actually Ivy Bridge does support 4K displays if they are being driving by two DP.

    Haswell will implement DP 1.2 so it will be able to drive a 4K resolution display over a single cable. The GT3 + eDRAM versions of Haswell should be able to handle accelerated GUI without much issue. Gaming on the other hand at such high resolutions is something even high end GPU's (Radeon 7970, GTX 680) are struggling with.
    Reply

Log in

Don't have an account? Sign up now