Performance analysis with Arm Mobile Studio
In part 3 of Arm’s Mali GPU training series, learn how to analyze the performance of a mobile game with Arm Mobile Studio, our free-to-use performance analysis tool suite.
By Julie Gaskin

In this blog series, we have been covering Arm's free Mali GPU training series for mobile graphics developers. Today, we present module 3, which introduces Arm Mobile Studio, our free-to-use performance analysis tool suite for identifying performance problems on off-the-shelf Android devices. We demonstrate how to capture and analyze a performance profile of a mobile game, to see how the device’s CPU and GPU resources were used. You will also learn how to debug graphics API calls and shader programs to find more ways to optimize content for mobile.
- Introducing Arm Mobile Studio
- Capture a performance profile and generate a Performance Advisor report
- Interpreting game performance in Streamline
- How to trace API calls and identify graphics issues with Graphics Analyzer
- Shader analysis and problem detection with Mali Offline Compiler
- Developer resources to help you
If you missed the first two blogs in this series, you can catch up here:
- Module 1 - Mobile graphics fundamentals
- Module 2 - Best practice principles for mobile game development
Introducing Arm Mobile Studio
In the first video, we introduce some of the benefits you can gain from having a strong optimization process, and how Arm Mobile Studio could enhance your existing development workflow.
Cannot see this video? Try this link instead.
Capture a performance profile and generate a Performance Advisor report
Now, let us learn how to capture performance data from a game running on a connected Android device, and how to generate and analyze a Performance Advisor report.
Cannot see this video? Try this link instead.
Interpreting game performance in Streamline
Next, we explore the Streamline capture to see how the CPU and GPU workloads from the game were handled by the mobile device.
Cannot see this video? Try this link instead.
How to trace API calls and identify graphics issues with Graphics Analyzer
In the previous video, we learned that the game could contain objects that are too complex for their on-screen size, and distance from the camera. Next, we take a capture with Graphics Analyzer, to explore the scene in more detail. We can look at all the graphics API calls that the application made, and step through them one by one to see how the scene is built.
Cannot see this video? Try this link instead.
Shader analysis and problem detection with Mali Offline Compiler
Lastly, we demonstrate how to run Mali Offline Compiler on a fragment or vertex shader program. This generates a report showing the expected performance of that shader on a Mali GPU.
Cannot see this video? Try this link instead.
Developer resources to help you
Download Arm Mobile Studio for free from the Arm Developer website. You need to create an Arm account to access the download.
Work through the starter guides for Performance Advisor, Streamline, Graphics Analyzer, and Mali Offline Compiler to help you take captures and run reports.
There is also a tutorial to help you analyze Streamline captures, and comprehensive user guides with all the detail on each tool:
- Streamline user guide
- Streamline target setup guide for Android
- Performance Advisor user guide
- Graphics Analyzer user guide
- Mali Offline Compiler user guide
Our comprehensive performance counter reference guides, describe all of the performance counter data that Streamline can collect for each Mali GPU. There is also a handy data sheet to help you compare the capabilities of each Mali GPU.
Studios that use a continuous integration system can take advantage of automated performance testing, running Arm Mobile Studio across multiple devices in a device farm. The reported data can be fed into any JSON-compatible database, so that you can build visual dashboards and alerts to monitor how performance changes over time. If you are interested in implementing this at your studio, here is a tutorial that walks you through the basic setup.
Get in touch
This concludes Module 3 of the Mali GPU training. We hope you enjoyed the course, and that you are now well prepared to tackle optimization problems for mobile games. Thanks for watching.
For further support while working with Mali devices or Arm Mobile Studio, go to Arm’s Graphics and Gaming Forum, where you can ask questions, and Arm will be happy to help. If you prefer to contact us privately, feel free to email us at mobilestudio@arm.com.
By Julie Gaskin
Re-use is only permitted for informational and non-commercial or personal use only.
