The Arm Mobile Studio family of performance analysis tools help you evaluate performance on non-rooted Android devices at varying levels of detail throughout your game development workflow:
Streamline captures performance data from an Android device as your game runs. Explore the data in charts to see exactly how the device's CPU and GPU resources were used by your game.
For CPU bottlenecks, use the native code profiling functionality to locate specific problem areas in your application code. Investigate how processes, threads, and functions behave, from high-level views, right down to line-by-line source code analysis.
For GPU bottlenecks, see performance data from the Mali™ GPU driver and hardware performance counters to explore the rendering workload efficiency and quickly identify where to optimize.
Performance Advisor is a lightweight reporting tool that transforms a Streamline capture into an easy-to-read report on how your application performed, along with advice on how to optimize it.
See the average FPS over the duration of the capture, a breakdown of workload, and the average utilization of the CPU and GPU in the device. These quick metrics are useful to monitor over daily runs, to see how changes to your application affect performance during development.
A more detailed FPS analysis chart shows how the application performed over time. Where the application is performing well, the background colour of the chart is green. In poorly performing sections, the background colour indicates what’s happening. In the example below, most of the chart below is blue, indicating that the GPU in the device is struggling to process fragment workloads.
Further charts provide information about the workload, the properties of your content, and how the functional units within the GPU are utilized. Each chart also shows the FPS, so that you can look for areas of correlation that might indicate a problem.
Performance Advisor indicates when it has located a potential problem, and links through to optimization advice on the Arm Developer website, about how to resolve the issue and improve performance.
Graphics Analyzer enables you to evaluate all the OpenGL ES or Vulkan API calls your application makes, as it runs on an Android device. You can explore the scenes in your game frame-by-frame, draw call-by-draw call, to identify rendering defects, or opportunities to optimize performance.
Step through the graphics API calls alongside the object geometry and framebuffer output, to evaluate how each draw call impacts the scene. See where different shaders are used in the scene, how many fragments were drawn by each shader, and how many GPU cycles were spent by each shader.
Mali Offline Compiler is a command-line tool that enables you to compile shader programs, and analyze how they would perform on a Mali GPU. See an approximate cycle cost breakdown for the major functional units on your target device, to identify ways to optimize your shader programs.
Learn how to accelerate your shaders with Mali Offline Compiler.
For more information about Arm Mobile Studio, visit the Arm Developer Website where you can download it for free. If you are interested in professional edition, which enables Arm Mobile Studio to be used for automatic analysis as part of a continuous integration workflow, please contact Arm.