Optimization on Arm Mali GPUs

Optimization is a key component of development on GPUs so that developers can efficiently run applications and games on devices. For graphical applications, optimization usually means modifying an application to make it more performant. A low frame rate means that the application appears jumpy and can make games applications unsatisfactory for the end user. Various optimization practices can improve applications, which in turn makes using the application a better, smoother experience. The following examples are of various types of optimizations:

  • Increase the frame rate
  • Make content more detailed
  • Reduce power consumption
  • Use less memory bandwidth
  • Use fewer clock cycles per frame
  • Reduce memory footprint
  • Reduce download size

The following resources can help you optimize an Arm Mali GPU:

Arm Mobile Studio

Download the free-to-use tool suite for optimizing high-end content for Arm-based Android devices, including on 64-bit and multiprocessor. It brings easy set-up and clear performance analysis across both CPU and GPU, eliminating bottlenecks relating to your system and graphics.

Learn more

Graphics Development Tools

A range of development tools to help with the deployment of graphics applications and content on Mali GPU-based systems. The tools generally work on Windows, Linux, and Mac OS X, and will work with any Arm Mali GPU-based system running Linux or Android.

Learn more

Developer guides and learning resources

  • Orange Speech Bubble Icon
  • Arm Mali developer guides

    View the complete selection of developer guides including the introductory guides to the Arm Mali GPU, guides for artists, and more advanced guides. These include the Arm Guide for Unity developers, OpenGL ES 3.0 and 3.1, OpenCL and Renderscript best practices.

    Learn more
  • Ideas icon
  • Arm Mali best practices guide

    The Mali GPU Best Practices is a guide that is designed as a quick reference for development on Mali GPUs. It assumes that the reader is familiar with using the underlying APIs. This guide is also the main reference for the Vulkan best practices for mobile developers on GitHub.

    Learn more
  • Lightbulb icon in green colour
  • Artist best practices

    A collection of guides specifically for mobile game artists looking to optimize a game during production. Along with best practice, there are suggestions when working with both Unity and Unreal Engine.

    Learn more
  • Light blue coloured book icon
  • Vulkan best practices repository

    A collection of resources that are donated by Khronos members specifically for mobile game developers looking to build on their Vulkan knowledge. Including downloads and tutorials to get your started.

    Learn more
  • compiler icon in orange colour
  • Virtual reality best practices

    Arm Mali GPUs enable untethered, high-quality mobile VR. Learn the best way to develop for VR-specific applications on Mali, with tips on both Unity and Unreal Engine.

    Learn more
  • Yellow Virtual Reality icon
  • Working on Unity?

    Arm and unity have a partnership dating back to the beginning of mobile gaming. Check out all the resources for developing a game on unity based on an Arm platform.

    Learn more

Other resources

  • Green compute icon
  • Arm Mali SDKs

    Arm Mali software Development Kits are a collection of resources to help you build OpenGL ES, Vulkan, and Compute applications for Mali-based platforms.

    Learn more
  • Blue system validation icon
  • Development platforms

    Recommended development platforms that you can use when building, optimizing or testing your development on Mali-based platforms.

    Learn more

Get support

Arm training courses and on-site system-design advisory services enable licensees to realize maximum system performance with lowest risk and fastest time-to-market. You can open a support case by clicking the button below.

Arm training courses  Open a support case

Community Blogs

Community Forums

Answered MSAA 2x on Mali - GLES
  • Mali GPU (Valhall Architecture)
  • Mali DDK for GPU (Midgard Architecture)
  • Mali GPU (Bifrost Architecture)
  • OpenGL ES
0 votes 653 views 1 replies Latest 3 days ago by Peter Harris Answer this
Answered Cache data invalidation between kernel calls in OpenCL
  • Mali GPU (Valhall Architecture)
  • OpenCL
  • Mali GPU (Bifrost Architecture)
  • Cache
0 votes 818 views 1 replies Latest 6 days ago by Kévin Petit Answer this
Answered How to access(zero copy) AHardWareBuffer and ANativeWindow_Buffer, with Mali OpenCL? 0 votes 29166 views 14 replies Latest 9 days ago by Hxxfff Answer this
Answered Can I create a opencl buffer from a GraphicBuffer or a raw ion buffer
  • OpenCL
  • Mali-T760
  • Mali-GPU
0 votes 10867 views 9 replies Latest 10 days ago by Kévin Petit Answer this
Answered Setting up OpenGL for left-handed coordinates 0 votes 857 views 1 replies Latest 11 days ago by Ben Clark Answer this
Answered Shadow maps and framebuffer compression 0 votes 1589 views 1 replies Latest 18 days ago by Peter Harris Answer this
Answered MSAA 2x on Mali - GLES Latest 3 days ago by Peter Harris 1 replies 653 views
Answered Cache data invalidation between kernel calls in OpenCL Latest 6 days ago by Kévin Petit 1 replies 818 views
Answered How to access(zero copy) AHardWareBuffer and ANativeWindow_Buffer, with Mali OpenCL? Latest 9 days ago by Hxxfff 14 replies 29166 views
Answered Can I create a opencl buffer from a GraphicBuffer or a raw ion buffer Latest 10 days ago by Kévin Petit 9 replies 10867 views
Answered Setting up OpenGL for left-handed coordinates Latest 11 days ago by Ben Clark 1 replies 857 views
Answered Shadow maps and framebuffer compression Latest 18 days ago by Peter Harris 1 replies 1589 views