Where the Low Headroom really is on the iPad.

There has been a lot of talk in the last 24 hours about how much RAM the iPad really has, and also about how fast the CPU is.

None of this is what developers in my line of work should be worried about though…

CPU? (2x last gen.)
The CPU performance on the iPad seems to be great. As Craig Hockenberry reported, the native performance of the iPad’s CPU averages out to be about twice that of the 3G(S) iPod or iPhone. Even the original iPhone is still a pretty zippy device. Especially if you are prepared to get your hands dirty with it’s ARM CPU’s Vector Floating Point Co-Processor unit (VFP), and some assembly coding. On the newer devices, including the iPad, we have Neon, as well as the ability to “emulate” VFP. Although the latter option of the two can be a tad slow in certain situations.

In any case I am constantly amazed at what clever coders can achieve with the great little bits of silicon in all “i” devices. And with Neon on newer iPod’s, iPhone’s and the iPad there is the possibility of using Compiler Intrinsics in GCC / Xcode. So you can reap Neon’s vector maths benefits without having to even touch assembly.

RAM? (1x last gen.)
Some people are disappointed that the iPad only has 256MB of RAM. Some expected a bump to 512MB over the current iPod and iPhone’s 256MB. It didn’t happen. About 200MB of the iPad’s RAM seems to be available to developers, and consequently users. But even this is not particularly restrictive.

The iPad is plenty fast at pulling stuff from it’s built in Flash storage. I actively cache data at run time in all of my projects and barely notice the overhead even in apps with high performance graphics. On fairly ambitious projects on the 3G iPod Touch (which has the same 256MB as the iPad) I have not found this amount of RAM to be particularly restrictive. But then I do come from an era of assembly language programming, and a culture of thinking that 32K of RAM was quite roomy!

GPU? (1x last gen.)
What developers should perhaps be a little concerned about is the GPU performance on the iPad. Certainly the GUI is really snappy in the iPad apps we’ve seen so far. No problem there. But in real terms the GPU on the iPad is pushing 5 times as many pixels as the current iPhone or iPod 3GS models because of it’s extra screen real estate.

When we transitioned to the newer OpenGLES 2.0 capable GPUs in the new iPhone 3GS and the 3G 16GB and 32GB iPod Touches we gained a performance increase of around 5 times in horsepower / fill-rate.

So in the iPad it’s already effectively maxed out. Losing it’s impressive 5x speed advantage over previous iDevice models because of the extra pixels it potentially needs to draw.

In summary :  The performance increase in the iPad’s GPU (the same GPU we have in the current crop of iPods and iPhones) is potentially canceled out by the increased size of the screen.

Game Developers will need to be careful of that moving forward. Although not as pronounced, obviously, one could draw parallels between the performance of the iPhone Simulator and the iPad Simulator on Desktop machines – where developers have found that the emulated graphics run a lot slower in the iPad’s larger Simulator window than they do on the iPhone Simulator.

Posted: April 4th, 2010
Categories: Programming, ipad
Tags: , , , , , , , ,
Comments: View Comments.
blog comments powered by Disqus
Get Adobe Flash playerPlugin by wpburn.com wordpress themes