Understanding the iPhone 3GS
by Anand Lal Shimpi on July 7, 2009 12:00 AM EST- Posted in
- Smartphones
- Mobile
The GPU and its Performance
We’ve gone through, in great depth, the CPU in the new iPhone 3GS. But the GPU is arguably the more interesting upgrade. I’ve already covered the GPU pretty well so I present you with a blatant copy/paste of what I’d already written:
Now that we’re familiar with the 3GS’ CPU, it’s time to talk about the GPU: the PowerVR SGX.
Those familiar with graphics evolution in the PC space may remember Imagination Technologies and its PowerVR brand by their most popular desktop graphics card: STMicro’s Kyro and Kyro II. The Kyro series used the PowerVR3 chips and while STMicro ultimately failed to cement itself as a NVIDIA competitor in the desktop, the PowerVR technology lived on in ultra-mobile devices.
The SGX is on Imagination Technologies’ fifth generation of its PowerVR architecture, and just like the Kyro cards we loved, the SGX uses a tile based renderer. The idea behind a tile or deferred renderer is to render only what the camera sees, not wasting clocks and memory bandwidth on determining the color of pixels hidden by another object in the scene. Tile based renderers get their name from dividing the screen up into smaller blocks, or tiles, and working on each one independently. The smaller the tile, the easier it is to work on the tile on-chip without going to main memory. This approach is particularly important in the mobile space because there simply isn’t much available bandwidth or power. These chips consume milliwatts, efficiency is key.
The MBX-Lite used in the original iPhone was also a tile based architecture, the SGX is just better.
Also built on a 65nm process the PowerVR SGX is a fully programmable core, much like our desktop DX8/DX9 GPUs. While the MBX only supported OpenGL ES 1.0, you get 2.0 support from the SGX. The architecture also looks much more like a modern GPU:
Pixel, vertex and geometry instructions are executed by a programmable shader engine, which Imagination calls its Universal Scalable Shader Engine (USSE). The “coprocessor” hardware at the end of the pipeline is most likely fixed-function or scalar hardware that’s aids the engine.
The SGX ranges from the PowerVR SGX 520 which only has one USSE pipe to the high end SGX 543MP16 which has 64 USSE2 pipes (4 USSE2 pipes per core x 16 cores). The iPhone 3GS, I believe, uses the 520 - the lowest end of the new product offering. Update: Thanks to BlazingDragon and psonice for pointing out that the 3GS may in fact use a PowerVR SGX 535 based on drivers on the iPhone 3GS. It could still use a lower end SGX core and use the 535's driver, but there's at least the possibility that the 535 is under the hood of the 3GS.
A single USSE pipe can execute, in a single clock, a two-component vector operation or a 2 or 4-way SIMD operation for scalars. The USSE2 pipes are upgraded that handle single clock 3 or 4 component vector operations, have wider SIMD and can co-issue vector and scalar ops. The USSE2 pipes are definitely heavier and have some added benefits for OpenCL. For the 3GS, all we have to worry about is the single USSE configuration.
iPhone 3G (PowerVR MBX-Lite) | PowerVR SGX @ 100MHz | PowerVR SGX @ 200MHz | |
Manufacturing Process | 90nm | 65nm | 65nm |
Clock Speed | ~60MHz | 100MHz | 200MHz |
Triangles/sec | 1M | 3.5M | 7M |
Pixels/sec | 100M | 125M | 250M |
In its lowest end configuration with only one USSE pipe running at 200MHz, the SGX can push through 7M triangles per second and render 250M pixels per second. That’s 7x the geometry throughput of the iPhone 3G and 2.5x the fill rate. Even if the SGX ran at half that speed, we’d still be at 3.5x the geometry performance of the iPhone 3G and a 25% increase in fill rate. Given the 65nm manufacturing process, I’d expect higher clock speeds than what was possible on the MBX-Lite. Also note that these fill rates take into account the efficiency of the SGX’s tile based rendering engine.
Obviously all games on the app store were designed for the PowerVR MBX-Lite and the SoC in the iPhone/iPhone 3G/iPod Touch. Some do run faster/smoother on the 3GS thanks to the faster CPU and GPU, but the new hardware should enable an entirely new class of game in the future.
Developers will have to deal with a segmented user base, since there are around 20 million PowerVR MBX-Lite based phones and a bit over 1 million SGX based 3GSes in the market.
The GPU Comparison
There are obvious limitations to the iPhone 3GS being used as a gaming platform. But there are also obvious limitations to the 3GS being used as a camera or a video player. The point isn’t that the 3GS could replace the Nintendo DS or the Sony PSP, it’s that the iPhone could get you maybe 80 - 90% of the way there.
There are serious control and battery life limitations, but the platform has the right combination of hardware, a software delivery system and ubiquity to at least be considered a viable gaming system. It has a much more powerful CPU/GPU combination than a Nintendo DS, now what it needs is the iPhone equivalent of Mario. Perhaps Apple should buy a game developer.
The obvious smartphone GPU comparison here is the Palm Pre. The TI OMAP 3430 used in the Pre (good job Palm on full disclosure there, just add clock speeds and you’ll get an A+) is a very similar SoC to the Samsung chip in the iPhone 3GS. As such, it also has a PowerVR SGX core.
60 Comments
View All Comments
iwodo - Thursday, July 9, 2009 - link
Would really love Anand digg deeper and give us some more info. The info i could find for Atom, has 47 Million transistors. Ars report 40% of it is cache, while others report the core is 13.7 million. The previous iPhone article Jarred Walton commented that x86 decoder no longer matters because 1.5 - 2 million transistors inside a billions transistor CPU is negligible. However in Mobile space, 2M inside a 13.7M is nearly 15%. Not to mention other transistor used that is needed for this decoding.The space required for Atom is 25mm2 on a 45NM ( Including All Cache) . Cortex A8 require 9mm2 ( dont know how many cache ) on 65nm.
What is interesting is how Intel manage to squeeze the north bridge inside the Atom CPU ( more transistors ) while making the Die Smaller. ( i dont know if Intel slides were referring to the total package size or the die size itself ).
snookie - Thursday, July 9, 2009 - link
The Pre hardware, as in case, screen, keyboard is terrible. Cheap, plasticky and breaking left and right on people. If Palm survives long enough to get to Verizon etc Here's hoping they come out with better hardware soon. I've used Blackberries for year but I see no need for a physical keyboard. With the new iPhone widescreen keyboard I type with both thumbs very quickly and I have big hands.snookie - Thursday, July 9, 2009 - link
Jason, Apple has in fact agreed to using mini-usb as a standard. As if that is really a reason to buy a phone or not.To say Apple never changes shows no knowledge of the history of Apple, even their recent history.
Itaintrite - Wednesday, July 8, 2009 - link
Heh, it's funny how you say that you can't just look at clock speed, then followed with "the 528MHz processor in the iPod Touch is no where near as fast as the 600MHz processor in the iPhone 3GS." Heh.Anonymous Freak - Wednesday, July 8, 2009 - link
I want my punch and pie!Or a lollipop.
Good review, I could feel your hunger pangs toward both Palm and Apple toward the end...
monomer - Wednesday, July 8, 2009 - link
Regarding Anand's comments about Android phones needing an upgraded CPU, rumors are that the upcoming Sony Xperia Rachael will be sporting a 1GHz Qualcomm Snapdragon processor (ARM Cortex A8 derivative). Would love to find out the details of this phone when they become available.http://www.engadget.com/2009/07/04/sony-ericsson-r...">http://www.engadget.com/2009/07/04/sony...chael-an...
Affectionate-Bed-980 - Thursday, July 9, 2009 - link
Well I'd like to see Anand's experience with Android phones. What is it, just G1? Look at the new Hero or even G2. What about the Samsung i7500? Sorry I'm afraid that the limited nature of cell phone selection in the US makes it VERY HARD to review cell phones well here. I haven't seen a good cell phone site that's by people in the US and from the US only. Phone Arena, Mobile Burn, Phonescoop, GSM Arena, It seems the international guys get a LOT more exposure, and this is why I feel like Anand's comments about phones in general makes him sound inexperienced which I can certainly bet is the case.If you limit yourself to only carrier offered phones, then I don't think you can make accurate assessments about manufacturers like Nokia or certain OS phones like WinMo or Symbian or even Android unless the US starts offering more of what the world considers top notch popular phones.
Affectionate-Bed-980 - Wednesday, July 8, 2009 - link
N97 specs should be 434 MHz ARM11 not 424...Affectionate-Bed-980 - Wednesday, July 8, 2009 - link
BTW I don't believe you should be commenting about the N97. Gizmodo is heavily biased towards iPhones and unless you yourself Anand uses some Symbian S60 phones with detail, I don't really think you should join in the S60 bashing. I think a lot of us Symbian users AGREE that the platform needs to improve, but considering we were like ZOMG434MHZFAIL, the N97 is not bad in response time if you look at a few videos. The UI exceeded a lot of expectations amongst the Symbian crowd. If anything why don't you throw the Samsung i8910 Omnia HD in there instead? That has a Cortex A8 and uses Symbian S60v5 (not to mention has been out longer than the N97). The other S60v5 phone to come out is the Sony Satio which also uses a Cortex A8.You might as well comment on why Cortex A8 isn't being implemented in all new phones. WinMo phones are still on ARM11, and even HTC's newest announcements are ARMv7 chips. The iPhone doesn't define what high end is. Because if you want to point out that its unacceptable to have a ARMv7 chip in an N97, then it's just as unacceptable for the iPhone not to have a 5MP camera and multitasking.
straubs - Wednesday, July 8, 2009 - link
1. It IS unacceptable for any flagship phone to use ARM11. The iPhone, Pre, and Omnia HD (as you pointed out) all use it, so why wouldn't Nokia put it in it's $700 N-series flagship? It doesn't make sense. I'm surprised he didn't mention the crappy screen on the N97.2. He did comment on how the iPhone needs multi-tasking and how much he missed the Pre's implementation of it.
3. Doesn't everyone at this point agree that the number of megapixels in a phone camera is not a huge deal, considering the size of the sensor and optics? I would guess the N97 pictures are better than those from the the 3GS, but nothing like the jump from an ARM11 or A8.