Optimization

Arm Mali GPU Optimization

As devices get more powerful, most of the tasks that involve heavy computations take time and it becomes further time consuming as the datasets get bigger and bigger. Graphics is about making things look good. Optimization is about making things look good with the least computational effort. Arm Mali GPUs, like all GPUs routinely need optimization for developers to run applications and games on their devices smoothly.

Optimization is the process of taking an application and making it more efficient. For graphical applications this typically means modifying the application to make it faster. A low frame rate means the application appears jumpy. This gives a bad impression and can make applications such as games difficult to play. You can use optimization to improve the frame rate of an application. This makes using the application a better, smoother experience.

A consistent frame rate is typically more important than a high frame rate. A frame rate that varies gives a worse impression than a relatively low but consistent frame rate.

Optimization can have different objectives, such as:

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

Below is a collection of resources for optimising for an Arm Mali GPU, including tools and best practice guides.

Arm Mobile Studio

Designed with app and game developers in mind

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

Learn more

Other Graphics Development Tools

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

Learn more

Arm Mali Best Practices

The best practices guide for developers optimizing for Mali GPUs and recommendations for efficient API usage.




Learn more

All Arm Mali Guides

View the complete selection of developer guides including the Arm Guide for Unity Developers, OpenGL ES 3.0 and 3.1, OpenCL and the Mali GPU application optimization guide. Each guide contains a number of chapters walking you through an introduction before moving you on to advanced concepts.

Learn more

Additional resources

 

Get support

Arm 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.

Arm training courses  Open a support case

Community Forums

Answered How to compile mali driver?
  • Mali Kernel Device Drivers for GPU
  • Mali GPU (Bifrost Architecture)
0 votes 226 views 3 replies Latest 6 hours ago by Peter Harris Answer this
Suggested answer A13 Gstream GPU Usage 0 votes 99 views 2 replies Latest 2 days ago by xfrieyt Answer this
Suggested answer Mali Debugger with unity3d nothing show up
  • Android
  • Unity
  • Mali Graphics Debugger
0 votes 85 views 1 replies Latest 3 days ago by Liam Hamill Answer this
Answered How to understand warp size and execution engine for shader cores?
  • Bifrost
  • Mali-G76
  • Compute Shaders
1 votes 207 views 3 replies Latest 3 days ago by Peter Harris Answer this
Answered Can I manually flush the GPU cache in OpenCL kernel code?
  • Mali GPU (Midgard Architecture)
  • Cache Management
  • Mali OpenCL SDK
0 votes 694 views 12 replies Latest 9 days ago by Zhenyu Ning Answer this
Answered Can I use Mali to access I/O registers?
  • Juno Arm Development Platform
  • Mali GPU (Midgard Architecture)
  • Mali OpenCL SDK
0 votes 545 views 3 replies Latest 22 days ago by Peter Harris Answer this
Answered How to compile mali driver? Latest 6 hours ago by Peter Harris 3 replies 226 views
Suggested answer A13 Gstream GPU Usage Latest 2 days ago by xfrieyt 2 replies 99 views
Suggested answer Mali Debugger with unity3d nothing show up Latest 3 days ago by Liam Hamill 1 replies 85 views
Answered How to understand warp size and execution engine for shader cores? Latest 3 days ago by Peter Harris 3 replies 207 views
Answered Can I manually flush the GPU cache in OpenCL kernel code? Latest 9 days ago by Zhenyu Ning 12 replies 694 views
Answered Can I use Mali to access I/O registers? Latest 22 days ago by Peter Harris 3 replies 545 views