Two months ago we were excited to reveal that the Samsung Exynos 5410 processor utilizes our PowerVR SGX544 GPU. One recent example is the latest Android device from Meizu, the MX3, which was launched at the Beijing National Aquatics Center a few days ago. During the event, Meizu focused on the processing capabilities of its high-end smartphone, highlighting the many useful features and pre-installed apps the device comes packed with. After the official launch was over, press and analysts had a chance to experience hands-on what the Exynos 5410-based device was capable of in terms of advanced functionality and top of the range performance.

meizu-mx3-exynos-5410-powervr sgx544mp3

The Samsung Exynos 5410 is a very powerful processor that allows devices which use it to perform unique, innovative functions that become possible with the help of our PowerVR SGX544MP3 GPU. Among these features, there’s an eye tracking and facial recognition system, which allows a user to pause a video by just by looking away from the display or scroll through text by moving his or her head up and down.

Samsung Exynos 5 Octa 5410 - PowerVR SGX544MP3

For example, we’ve recently had some ODROID-XU boards from Hardkernel shipped to our office and are can highlight some of the useful features developers can take advantage of straight away, with no rooting or custom ROMs flashing required whatsoever.

OpenCL works out of the box on Exynos 5410-based devices

One of the main features of the PowerVR Series5XT family is the efficient, mobile-focused support for OpenCL.

PowerVR SGX cores were the first to get OpenCL conformance and now developers have access to this powerful compute API, thanks to our close partnership with Samsung. We’ve already installed a few of our OpenCL demos on the device and were happy to see the performance improvements our advanced GPU technology brings to this platform.

Graphics video processing - Exynos 5410 PowerVR SGX544MP3 (1)Graphics video processing - Exynos 5410 PowerVR SGX544MP3 (2)
Graphics video processing - Exynos 5410 PowerVR SGX544MP3 (3)Graphics video processing - Exynos 5410 PowerVR SGX544MP3 (4)
Graphics video processing - Exynos 5410 PowerVR SGX544MP3 (6)Graphics video processing - Exynos 5410 PowerVR SGX544MP3 (5)

A performance comparison of different filters running on the PowerVR SGX544MP3 GPU (left) vs. the high-end quad-core CPU (right)

The results are remarkable. When applying common filters such as saturation, sepia, Gaussian blur, Sobel edge detect, we are seeing, on average, a frame rate of 30-60 fps when running the OpenCL kernels on the PowerVR SGX544MP3 GPU, compared to 4-5 fps when switching to the high-end quad-core CPU. These gains in performance efficiency derive from our initial approach to GPU compute. We’ve avoided the common trap of recklessly implementing every possible feature in what we call the “checklist approach” to hardware design. Instead, we’ve taken into account the most important factor for mobile: power consumption. We can therefore provide the full OpenCL EP (Embedded Profile) API across all our PowerVR GPUs through a carefully balanced feature set which avoids thermal issues seen in other devices.

Screenshot_2013-08-15-15-22-16

Screenshot_2013-08-15-15-21-55

 The video processing demo running on the Hardkernel ODROID-XU development board: total system power consumption drops from 2.38W (single-core CPU) to 1.17W (PowerVR SGX544MP3 GPU)

We’ve kept the same attitude regarding performance, by improving our PowerVR Series5XT GPUs to match essential market requirements when it comes to graphics and compute API standards and choosing to support multiple optional features in OpenCL (e.g. OpenCL – OpenGL ES interoperability extensions) which actually bring additional functionality for all relevant mobile use cases.

We’ve put a lot of effort into optimizing the driver, making sure that the PowerVR SGX544MP3 GPU inside the Exynos 5410 processor efficiently balances graphics and compute tasks for relevant mobile use cases such as image and video processing, camera vision, augmented reality, voice recognition and many more.

Introducing our new OpenGL ES 2.0 extensions on a mainstream device

A quick OpenGL ES 2.0 call to glGetString(GL_EXTENSIONS) on Exynos 5410-based smartphones reveals the large number of graphics API extensions available to developers on this smartphone.

Firstly, there are several additional OpenGL ES 2.0 optional elements allowing the use of high precision floating point values in fragment shaders, support for ETC texture compression, depth textures, etc.:

  • GL_OES_rgb8_rgba8
  • GL_OES_depth24
  • GL_OES_fragment_precision_high
  • GL_OES_element_index_uint
  • GL_OES_mapbuffer
  • GL_OES_compressed_ETC1_RGB8_texture
  • GL_OES_depth_texture
  • GL_OES_required_internalformat
  • GL_OES_get_program_binary
  • GL_OES_packed_depth_stencil
  • GL_OES_standard_derivatives
  • GL_OES_vertex_array_object
  • GL_OES_egl_sync
  • GL_EXT_discard_framebuffer
  • GL_EXT_multi_draw_arrays

To complement this, we’ve delivered key extensions to OpenGL ES 2.0 which provide PVRTC/PVRTC2 texture support, enable the use of EGLSync objects, or allows the user to creat multisampled render buffers:

  • GL_OES_vertex_half_float
  • GL_OES_EGL_image
  • GL_OES_EGL_image_external
  • GL_OES_texture_npot
  • GL_IMG_texture_compression_pvrtc
  • GL_IMG_texture_compression_pvrtc2
  • GL_EXT_shader_texture_lod
  • GL_EXT_texture_format_BGRA8888
  • GL_IMG_texture_format_BGRA8888
  • GL_IMG_read_format
  • GL_IMG_program_binary
  • GL_IMG_uniform_buffer_object

On top of that, you have a selection of the core OpenGL ES 3.0 functionality that we’ve announced back in January at CES 2013:

  • GL_OES_texture_float
  • GL_OES_texture_half_float
  • GL_EXT_multisampled_render_to_texture
  • GL_EXT_blend_minmax
  • GL_EXT_texture_rg

This is all possible thanks to the advanced capabilities of our PowerVR SGX544 GPU, which puts Imagination in the unique position to now offer some of these features across current and future Series5XT-based chipsets.

If you want to stay up to date with the latest news on our PowerVR GPUs, follow us on Twitter (@ImaginationPR, @PowerVRInsider, @GPUCompute). Remember to come back to our blog, as we continue to publish a series of blog articles that explain the PowerVR ‘Rogue’ architecture in great details, describe our GPU compute support and tackle many other hot topics in mobile right now.

About the author: Alex Voica

Profile photo of Alex Voica

Before deciding to pursue his dream of working in technology marketing, Alexandru held various engineering roles at leading semiconductor companies in Europe. His background also includes research in computer graphics and VR at the School of Advanced Studies Sant'Anna in Pisa. You can follow him on Twitter @alexvoica.

View all posts by Alex Voica