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 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 Forums

Answered SIGSEGV in glCompileShader due to loop
  • Android OpenGL ES
  • Mali-T830
0 votes 410 views 2 replies Latest yesterday by Rutger Janssen Answer this
Answered Unity apk crashes on start with Vulkan interceptor
  • vulkan
  • Unity
  • Mali-G72
1 votes 9318 views 5 replies Latest 11 days ago by Peter Harris Answer this
Answered What is mali-renderer? 0 votes 4749 views 1 replies Latest 13 days ago by Jörg Answer this
Answered How to get the source code for Mali GPU User-Space driver?
  • Mali OpenGL ES SDK for Android
  • Mali DDK for GPU (Utgard Architecture)
0 votes 1682 views 4 replies Latest 15 days ago by Cliff Lin Answer this
Answered Arm Offline Comlier's Performance analysis Not Including "Instructions Emitted" 0 votes 3673 views 2 replies Latest 23 days ago by Peter Harris Answer this
Answered G76 perf drop after Android Q update (bandwidth problem?)
  • Android OpenGL ES
  • performance
  • Mali-G76
0 votes 3807 views 1 replies Latest 23 days ago by Peter Harris Answer this
Answered SIGSEGV in glCompileShader due to loop Latest yesterday by Rutger Janssen 2 replies 410 views
Answered Unity apk crashes on start with Vulkan interceptor Latest 11 days ago by Peter Harris 5 replies 9318 views
Answered What is mali-renderer? Latest 13 days ago by Jörg 1 replies 4749 views
Answered How to get the source code for Mali GPU User-Space driver? Latest 15 days ago by Cliff Lin 4 replies 1682 views
Answered Arm Offline Comlier's Performance analysis Not Including "Instructions Emitted" Latest 23 days ago by Peter Harris 2 replies 3673 views
Answered G76 perf drop after Android Q update (bandwidth problem?) Latest 23 days ago by Peter Harris 1 replies 3807 views