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. You can open a support case by clicking the button below.

Arm training courses  Open a support case

Community Forums

Suggested answer Unity apk crashes on start with Vulkan interceptor
  • vulkan
  • Unity
  • Mali-G72
1 votes 247 views 1 replies Latest yesterday by legane Answer this
Answered Why does the CPU perform better than the GPU when blending small areas? 0 votes 2802 views 1 replies Latest 17 days ago by Peter Harris Answer this
Suggested answer E/MaliEGL: FindAppHintInFile open fail errno=0x2 (No such file or directory)
  • Mali OpenGL ES SDK for Android
  • Android Gralloc
  • rendering
0 votes 4683 views 2 replies Latest 28 days ago by crescent72 Answer this
Answered Zero Copy Buffers using cl_arm_import_memory extension in OpenCL 1.2 - arm mali midgard GPUs.
  • Midgard
  • Mali GPU (Midgard Architecture)
  • Mali OpenCL SDK
0 votes 6168 views 7 replies Latest a month ago by Kévin Petit Answer this
Suggested answer Optimised OpenCL SGEMM implementation for ARM Mali Midgard GPUs.
  • High Performance Computing (HPC)
  • OpenCL
  • High-Performance Computing (HPC)
  • Mali GPU (Midgard Architecture)
  • Mali OpenCL SDK
0 votes 7316 views 1 replies Latest 1 months ago by Kévin Petit Answer this
Answered Irregular behaviour of vectors in OpenCL(1.2) kernels
  • OpenCL
  • Mali GPU (Midgard Architecture)
  • Mali OpenCL SDK
  • Linux OpenCL
0 votes 10181 views 1 replies Latest 1 months ago by Kévin Petit Answer this
Suggested answer Unity apk crashes on start with Vulkan interceptor Latest yesterday by legane 1 replies 247 views
Answered Why does the CPU perform better than the GPU when blending small areas? Latest 17 days ago by Peter Harris 1 replies 2802 views
Suggested answer E/MaliEGL: FindAppHintInFile open fail errno=0x2 (No such file or directory) Latest 28 days ago by crescent72 2 replies 4683 views
Answered Zero Copy Buffers using cl_arm_import_memory extension in OpenCL 1.2 - arm mali midgard GPUs. Latest a month ago by Kévin Petit 7 replies 6168 views
Suggested answer Optimised OpenCL SGEMM implementation for ARM Mali Midgard GPUs. Latest 1 months ago by Kévin Petit 1 replies 7316 views
Answered Irregular behaviour of vectors in OpenCL(1.2) kernels Latest 1 months ago by Kévin Petit 1 replies 10181 views