Skip to main content

Tech Focus: IMG on PowerVR mobile graphics

IMG talk graphics tech featured in iPad 2 and Sony NGP

Digital FoundryGoing forward, is SGX going to become more DirectX based, seeking optimal DX performance, or will you look for innovations you can use that would otherwise be missed in the PC space?
IMG

We essentially have two strands to our IP - one is focused on OpenGL ES, the other adds some additional silicon area for DX. We plan to continue with that differentiation. That said DX is obviously further ahead in terms of feature set, as is desktop OpenGL, and both are used as references to design the optimised embedded Khronos APIs - so some similarity is to be expected.

Over time DX might become more significant if Windows does manage to get a foothold in mobile devices. We've been shipping WHQL compliant DX9 capable mobile parts for several years and have seen an increased interest in licensing of DX10 and DX11 capable parts over the last few months.

Digital FoundryWhat are your thoughts on Windows looking to support ARM architecture? What are the opportunities here for IMG?

Historically CPU vendors have tried to push close links between CPUs and GPUs as beneficial but the reality is that for best performance CPU and GPU should be as autonomous as possible.

IMG

The combination of an ARM processor and our PowerVR graphics is a bit of a classic in the mobile and embedded space, so if Windows on ARM does take off we'd expect to do well out of it and we're certainly offering a roadmap that will support it very capably.

Digital FoundryIMG licenses its tech, but as far as we can gather, it doesn't actually fabricate the final hardware. In what ways does IMG work with its licensees in implementing PowerVR into the final designs to ensure best performance?
IMG

It varies. We often host engineers from our partners who come to work with us here and we send engineers to work with partners too. We often help with bring-up of new SoC and even with OEMs using those SoCs in end products. On occasion we design entire SoCs, but that's relatively rare. What generally happens is we work very closely with new partners while they get up to speed, but given the kind of partners we have, they are more than capable of picking things up quickly and then doing future designs more autonomously.

Digital FoundryWith the OMAP line and A4/A5 amongst others, we're seeing integration of PowerVR tech into complete SoC solutions. Over and above the advantages in terms of battery life, does a closely integrated CPU/GPU design like this offer any performance advantages?
IMG

Almost all use of PowerVR is in an SoC for those very reasons: bandwidth and power efficiency. Historically CPU vendors have tried to push close links between CPUs and GPUs as beneficial but the reality is that for best performance CPU and GPU should be as autonomous as possible. PowerVR SGX is designed to offload the CPU as much as possible with the SGX GPU handling events locally to ensure optimal parallel processing with no direct CPU control impact.

Digital FoundryDiscussing iOS Unreal Engine 3 at GDC 2010, Epic Games mentioned that one of the issues they faced was the lack of support of occlusion queries in OpenGL ES 2.0, limiting their ability to cull unseen polygons. Are you aware of any progress in this area?
IMG

It's difficult to comment on upcoming API (and hardware) specifications which have not yet been announced but occlusion queries offer interesting usage cases and are obviously being considered.

However it's also important to stress the difference between mobile and PC space, in the PC space it's easy to push a lot of work to the GPU (massive bandwidth, memory and power usage) and let it handle occlusion processing however in the mobile space efficiency is king so trying to remove processing as early as possible (e.g. no submission at all) is even more important so pushing all the workload to the GPU might be less efficient than advanced high-level culling on the CPU side. Still, over time such balance points will shift and even in the mobile space occlusion processing on the GPU will become more efficient over time.

Digital FoundryNow seems to be the time where key IMG partners are transitioning across from the SGX535 onto the SGX543 multi-core products - aside from the multi-core angle, what are the key enhancements you've made to the basic architecture itself?
IMG

Our Series5XT architecture (SGX543/544/554) is a significant mid-life update to the Series5 architecture (SGX520/530/531/535/540) which was driven based on market and customer feedback. Key in this feedback was increased interest in compute performance both for GP-GPU via OpenCL but also for higher-quality pixels via more complex shaders as a result we doubled the floating point performance per pipeline in the newer cores while maintaining efficiency via co-issue (dual instruction) capabilities.

Additionally there was an increased interest in compositing User Interfaces and as a result we added dedicated hardware for YUV formats to enable optimal integration with video and camera image streaming. Most of the other changes are much lower level and focused on improving the efficiency of the design including both improved performance and further reduced bandwidth usage - a specific area of focus has been anti-aliasing and polygon throughput.

Digital FoundryWhat is your approach to scalability in SGX543? Are we literally looking at 2x the performance as you move from single to dual cores and upwards?
IMG

Yes, graphics cores are inherently parallel processors which means that they work on data independently (one pixel does not impact the processing of another pixel) which means that performance can be scaled near linear compared to CPUs where adding more cores often gives a very low return (data does depend on the processing of other data elements).

It's important to note that SGX543 offers true and complete load-balance based scaling of performance across both geometry processing and pixel processing workloads - many other designs only scale pixel processing leading to unbalanced designs. Basically the hardware splits all processing tasks (geometry, pixels, GP-GPU) up into small batches which are assigned to GPU cores on demand - this results in high efficiency and avoids impact by hotspots since even if one core is very busy with a complex area of the screen the other cores will continue to process the rest of the screen. Obviously this is also designed to avoid increases in bandwidth usage per frame between multi-core and single-core processing.

Digital FoundrySGX543 scales up to 16 cores - what kinds of real-life applications did you have in mind for this top-end iteration of the technology?
IMG

Anything demanding performance: console, computing etc.

Digital FoundryIs the architecture flexible enough to allow for the GPU cores to carry out non-graphics based tasks? What sort of applications can you see here?
IMG

Absolutely. SGX already has OpenCL conformance and all SGX parts are OpenCL capable. There's all kinds of things that you can use that for from game-world physics to image processing and enhancement.

Richard Leadbetter avatar
Richard Leadbetter: Rich has been a games journalist since the days of 16-bit and specialises in technical analysis. He's commonly known around Eurogamer as the Blacksmith of the Future.
Related topics