Incorrect frame rate reported

Reported values for frame rate (FPS) in Performance Advisor and Streamline are incorrect.

Condition

Affects devices running Android 10 or later.

Cause

For devices running Android 9 or earlier, you need to add the Arm interceptor library to your application in order for Arm Mobile Studio tools to collect frame data from it. For devices running Android 10 or later, Arm Mobile Studio tools can use GLES layers or Vulkan validation layers to collect this information from the device. To use this you need to use a command-line option when running the lwi_me.py script, to specify the layer library file.

If you have added an Arm interceptor library into your application, and have also specified a layer library at runtime, then the frame rate data reported in Streamline and Performance Advisor may be incorrect. The problem can be confirmed by capturing an Android logcat log, and checking if the log tags libAGA and aga_interceptor are present. If both tags occur you have loaded both a built-in interceptor and a layer driver, and you may be impacted by this problem.

Solution

On Android 10 you do not need to integrate the built-in interceptor library into the application APK. Instead, you should only use the layer driver framework for both OpenGL ES and Vulkan. Remove the built-in interceptor library from your application and specify the layer library when running the lwi_me.py script, using the --lwi-gles-layer-lib-path or --lwi-vk-layer-lib-path options.

Related information

  • Add the Arm interceptor library to your application
  • Capture a Streamline profile
  • More FAQs
  • Ask a question on the Arm Community forum.