Understanding PowerVR Series5XT: PowerVR’s hardware is nothing without software optimization

Ultimately, no matter how good your hardware design is in terms of spot-on feature set, flexibility and scalability, it can all be let down by poor and inefficient driver software or a lack of compatible content. But again this is an area where Imagination can fall back on many years of solid experience and an impeccable track record of delivering support across the leading operating systems and APIs, and being the driving force behind the largest mobile graphics ecosystem in the industry.

The best software optimization and development team in mobile graphics

Imagination Technologies’ driver software teams are dedicated to delivering the best possible experience for end users, and this ranges from delivering the best possible software compatibility, to the best performance to the best possible battery life.

Efforts from our teams cover a wide range of different optimisation requirements including numerous CPU architectures, such as MIPS, ARM, x86, PowerPC and even several custom processor architectures over the years.

But equally, optimisation efforts are required across a wide range of PowerVR GPU architectures (Series5, Series5XT and Series6) and – on top of that – an enormously wide range of performance points (from single pipelines to multi-core multi-pipelined designs).

While much of the GPU software stack is unified, we recognize that one size does not fit all usage cases, and we use both compile time options as well as dynamic heuristics to ensure that within specific (sometimes variable) system conditions, the GPU always manages to deliver the best possible results.

And last, but definitely not least, there are the actual optimisation of the various graphics APIs and the OS integration, which covers both Khronos APIs in Linux (actually a very wide range of Linux variants), Android and even Real Time Operating Systems (for example Nucleus from Mentor Graphics), but also the Microsoft DirectX 11 API and driver interface for mobile, embedded as well as desktop Windows operating systems.

PowerVR Windows DirectX API software optimization

Optimisation of the API implementation may come as a surprise, but real world API usage is variable and occasionally unexpected, especially for new APIs (such as OpenGL ES 2.0 years ago and OpenGL ES 3.0 today). This is because it’s never possible to perfectly predict how developers will practically use the API interfaces. It’s important to recognise that performance optimisations should always be generic and not application-focussed, after all benchmark recognition and hand-optimised shader replacements will not help real world usage scenarios.

The integration optimisation of operating systems is a constant race of ensuring the best possible results on always-evolving requirements from extensions to different memory management schemes to compositor enhancements, as OEMs always want to ship with the very latest version of, for example, the Android OS.

PowerVR Android OpenGL ES API GPUFinally, as I have already mentioned in previous posts, there is also the effort of supporting new APIs, be it OpenVG support many years ago (hardly relevant anymore, as all user experiences today expect 3D functionality) or today’s requirement for GPU compute through Khronos OpenCL or Android’s Renderscript/Filterscript.

Without the daily efforts of our driver teams, the PowerVR hardware would not be where it is today and this is a fact which is all too often forgotten. We all obsess over hardware performance and feature sets, but in doing so ignore the essential impact that software has on the final consumer experience.

Of course even at the software level, efficiency comes into play from two angles: first in driving the PowerVR hardware as efficiently as possible, but likely even more importantly, doing it with minimal CPU workload.

Imagination’s teams strive to achieve efficiency across all aspects of hardware and software development, leading to the recognised highest performance as well as power efficiency of our designs.

In my final blog post of this series, I will discuss how the PowerVR Insider ecosystem has grown to be the largest mobile graphics development program in existence today.

If you have any questions or feedback about Imagination’s graphics IP, please use the comments box below. To keep up to date with the latest developments on PowerVR, follow us on Twitter (@GPUCompute, @PowerVRInsider and @ImaginationPR) and subscribe to our blog feed.

‘Understanding PowerVR’ is an on-going, multi-part series of blog posts from Kristof Beets, Imagination’s Senior Business Development Manager for PowerVR. These articles not only focus on the features that make PowerVR GPUs great, but also provide a detailed look at graphics hardware architectures and software ecosystems in mobile markets.

If you’ve missed any of the posts, here are some backlinks:

, , , , , , , , ,

  • Alasdair Green

    I couldn’t agree more with the point made in this post, that however good the hardware is, it is nothing without good drivers. We using the GMA3600 (SGX545) know this only too well, and despite the apparent suggestion that end users are provided with the highest quality experience, I can assure you that my experience of your products ranks as the lowest I have ever experienced. And yes I know Intel should provide help also, but there is something called a supply chain, and the weakless link causes the most problems, problem is I don’t know which link that is?

    “Ultimately,
    no matter how good your hardware design is in terms of spot-on feature
    set, flexibility and scalability, it can all be let down by poor and
    inefficient driver software or a lack of compatible content.”

  • Alasdair Green

    So I left feedback as asked, and it was deleted because it was inconvenient. It wasn’t offensive, or untrue, and in fact agreed with the overall point of this post.

  • Kory Hansen

    I find it ironic that DirectX 10.1 is listed under Windows 7 when lack of software optimization, the very reason this post exists, is what’s keeping DX10.1 out of the hands of GMA 3600 users.

  • braveheartleo

    This post really hits the spot on the PowerVR situation in the x86 world. I wish Imagination Technologies could provide direct support in this regard, and maybe, just maybe, they could become major graphics players in the desktop computing industry, especially when power efficiency at acceptable performance is a consideration.

  • braveheartleo

    specifically, PowerVR SGX540 (GMA3600) and PowerVR SGX545 (GMA3650)

  • Kory Hansen

    Actually, the SGX545 is used in both GMA 36×0 versions, the 3650 is just clocked higher.

  • http://withimagination.imgtec.com/index.php/author/alexvoica Alexandru Voica

    Thanks for your comments. Unfortunately, our ability to offer driver-related support is very limited because we do not release, maintain or develop public, platform-specific drivers.

    If you are interested in developing applications on SGX hardware, our PowerVR SDK (www.powervrinsider.com) has tools and utilities that can help you debug and fine tune code for performance gains.

    Best regards,
    Alex.

  • braveheartleo

    Thank you Alexandru for taking the time to read our comments.

    My (our?) opinions may not mean much to, even less so have an impact on, Imagination’s business decisions and operations, but I will give it voice nonetheless.

    You say that your company does not do public releases of, nor do you develop or maintain, platform-specific drivers and I can understand that much.

    I have much respect for PowerVR, hereafter referred to as the Brand, especially when the mobile space comes to mind. It offers great performance more than the competition usually can. It is the Brand one can trust and rely upon to have on smartphones or tablets.

    You see, Imagination Technologies, being in the graphics IP licensing business, must not only ensure that their IP is protected and respected, but should also ensure that their licensees do not tarnish the Brand because of non-delivery of the licensor-published hardware specifications and licensor-guaranteed driver performance and software support that came with the Brand.

    I do not believe that the Brand is an underperformer, or a mess as some have come to consider, in the desktop/laptop computing regardless of platform, when the mobile space tells otherwise and the very existence of this post suggests that the Brand is nothing _without_ software optimization, which is what the licesees of the Brand ought to deliver — not for unfortunate users like myself to find fault in Imagination Technologies.

    I wish Imagination Technologies could put pressure on its licensees to deliver rated-to-specs driver performance and support, if the same cannot be expected from the former. I look forward to the continued sucess of the Brand and wish Imagination Technologies good business in the forthcoming years.

  • http://withimagination.imgtec.com/index.php/author/alexvoica Alexandru Voica

    Hi,

    Thank you for your kind words regarding PowerVR. You make a valid point in linking our IP to user experience and I assure you we are doing our best to help our partners deliver the most up-to-date drivers and software stacks to their customers, including end users like you.

    However, this is a complex process that involves not just IP and chipset manufacturers, but OEMs/ODMs and operating system vendors. This ecosystem effort is improving (and will continue to so over time) and, as more advanced and capable platforms will start shipping, these mismatches between user expectations and experience should be eliminated.

    Best regards,
    Alex.

  • Giannis Papapostolou

    hi,whats the difference in the gpu clock of a31 vs a31s eg onda v812 vs onda v819 mini