Imagination designed its PowerVR Tile-Based Deferred Rendering (TBDR) graphics architecture more than 20 years ago with a focus on efficiency across performance, power consumption and system level integration. This approach has equally been applied to our integration of compute functionality in our GPU architecture; PowerVR Rogue is the most recent version of our GPU architecture and it fully supports mobile compute for a variety of use cases.

This focus on optimising the most common use case is critical for success, and avoids making niche (but costly) features such as FP64 and increased rounding precision mandatory. Such niche features not only impact power consumption for compute usage cases, but also impact all other usage scenarios, including traditional graphics scenarios, where there is zero requirement for FP64 and increased rounding accuracy. This means that an excessive investment in this niche compute functionality will lead to increased overall power consumption, including critical power consumption scenarios such as UI composition and blending rates.

PowerVR Series7XT GPUOur latest PowerVR Rogue GPUs support OpenCL and other compute APIs

Hence, even if mandatory FP64 support would help to reduce power consumption for a specific use case, likely to be valid in only an infinitesimally tiny percentage of usage cases, it would come with a significant power cost for the more than 99% of other remaining usage scenarios across graphics and compute. Clearly this is not an acceptable trade-off.

Investments on the PowerVR Rogue hardware side have been focussed on efficiency as well, implementing power-sensible optional features such as image support, local memory and atomics, all combined with a scalar ALU architecture which makes algorithm development and optimisation far easier by avoiding excess complications linked to vectorisation (a significant development effort overhead).

PowerVR Series7 - Series7XT_USCSeries7XT ALUs include optional support for FP64

Balance is not only essential on the architecture side, but also on the API side. For graphics we have all recognised and accepted the importance of not blindly implementing everything desktop graphics cores offer (e.g. desktop OpenGL), but instead recognising the need for a very careful balance between power consumption and feature set; this is what OpenGL ES offers. This approach signals the need for a focus on what is truly required, and the need for a market-driven effort to ensure that industry-standard APIs match this critical vision to ensure stellar performance on mobile battery-driven devices.

On the Khronos compute API side, this means a focus on OpenCL Embedded Profile with many key optional features supported in hardware to ensure application compatibility (e.g. FP64). Similarly, on the Google Android side, we need a focus on what really makes practical sense: supporting Renderscript with a balanced feature set, avoiding power hungry niche extremes like FP64 and ensuring the usage of power-saving pragmas is essential. Finally, PowerVR Rogue GPUs are fully programmable hardware engines that area ideal for vision processing; OpenVX is a valuable starting point for accelerating creation and adoption of vision applications, and we’re pleased to report that we’ve achieved conformance on production silicon.

2015-openvx-release-graphic-3OpenVX is an emerging API for heterogeneous compute

As mobile compute is currently focusing on computer vision applications, with APIs only recently being exposed on devices, our ecosystem is currently ramping up its efforts through lead partner programs. This effort has culminated in highly educational performance guidelines, necessary tools and practical examples to ensure practical, power-efficient mobile compute.

Developers interested in engaging with us on mobile GPU compute use cases should not hesitate to visit our dedicated website and download our programmer’s reference manuals and examples.

Further reading

Here is a menu to help you navigate through every article published in this heterogeneous compute series:

Please let us know if you have any feedback on the materials published on the blog and leave a comment on what you’d like to see next. Make sure you also follow us on Twitter (@ImaginationPR, @GPUCompute and @PowerVRInsider) for more news and announcements from Imagination.

About the author: Kristof Beets

Profile photo of Kristof

Kristof Beets is Senior Business Development Manager for PowerVR Graphics at Imagination Technologies where he leads the in-house demo development team and works on product messaging. He has a background in electrical engineering and received a master's degree in artificial intelligence. Prior to joining the Business Development Group he worked on SDKs and tools for both PC and mobile products as a member of the PowerVR Developer Relations Team. Previous work has been published in ShaderX2, X5 & X6, ARM IQ Magazine, and online by the Khronos Group, Beyond3D and 3Dfx Interactive. Kristof has spoken at GDC, SIGGRAPH, Embedded Technology, MWC and too many other conferences to remember.

View all posts by Kristof Beets