Who is this for?

This is an introductory topic for Android developers who want to adjust application complexity to match device performance.

What will you learn?

Upon completion of this Learning Path, you will be able to:

  • Build the libGPUInfo library using the Android NDK
  • Run an example application to query the configuration details of an Arm Mali or Arm Immortalis GPU

Prerequisites

Before starting, you will need the following:

  • A development machine running Ubuntu or Debian Linux with x86_64 architecture
  • An Android device with an Arm GPU

Summary

AI-assisted

This summary was drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
You’ll build the libGPUInfo C++ library with the Android NDK and run its example on an Android device. First, you’ll use adb to deploy the sample to hardware with a Mali or Immortalis GPU. Then, you’ll inspect the reported configuration, features, and performance levels to inform graphics or compute paths at runtime.

Frequently asked questions

AI-assisted

These FAQs were drafted with an approved AI-assisted workflow and reviewed by Arm contributors before publication. Human technical review remains part of the process so the final page reflects engineering rigor, accuracy, and Arm editorial standards.

Close
?
How do I confirm the Android device is ready before running the example?
Make sure the device is connected and visible to adb. If the device isn’t discoverable by adb, reconnect it and try again.
What result should I expect when the example runs on the device?
The application queries the Arm GPU and prints configuration information that highlights available features and indicative performance levels. Use this output to confirm the device’s reported GPU capabilities.
Where do the build and run steps happen in this Learning Path?
You’ll build libGPUInfo and the example with the Android NDK on the development machine. Then, you’ll use adb to deploy and run the example on the Android device.
Can I integrate libGPUInfo into my own Android app after trying the example?
Yes. libGPUInfo is a C++ library that you can integrate into applications to gather Arm GPU hardware information on the device.
What should I check if the example fails to retrieve GPU information?
Verify the app is running on an Android device with an Arm GPU and that the device is accessible through adb. Re-deploy the example to the connected device and run it again.
Next