Since Android 4.3 (Jelly Bean) you can monitor this from a tool in Dev Options.

Seetings > More > Developer Options > Profile GPU Rendering.

You may need to enable Developer Options on Android 4.2 as it is hidden by default. Enable this by tapping 7 times on Settings > About phone > Build number.

Profile GPU Rendering has a few options, 'show on screen as bars' is quite a good way to get a fast visual look at what's going on.

Answer from GnomeDePlume on Stack Overflow
🌐
Arm Community
community.arm.com › developer › tools-software › graphics › f › discussions › 3642 › how-do-we-check-the-gpu-usage-load-for-android
Challenge Validation
May 23, 2014 - Have a question about working on Arm technology? Browse our support forums for solutions to your questions, answer questions from fellow community members and get help from Arm experts.
Discussions

Is there a way to programmatically discover specifics about an Android device's GPU? - Stack Overflow
I have searched the internet including developer.android.com. I have read this Stack Overflow post: how to query android device hardware info. I am aware of System.getProperties(). My question is: is there a way to programmatically discover specific information about the GPU on a particular ... More on stackoverflow.com
🌐 stackoverflow.com
android - Is there any way to get GPU information? - Stack Overflow
I know how to get CPU info inside /proc/, but is there any way to get GPU info? Something like the CPU one? More on stackoverflow.com
🌐 stackoverflow.com
How to get information about GPU using Xamarin Android?
Is any posibility to get information about GPU vendor, model or renderer in Xamarin Android ? More on learn.microsoft.com
🌐 learn.microsoft.com
1
0
February 24, 2021
How do I know GPU usage on Android devices? - Stack Overflow
But I could never find where the GPU usage was. I spent more than 300 hours on this, but I couldn't find a cool answer anywhere but I heard only meaningless answers. My question is, I want to know where GPU utilization is, just like CPU data is stacked on a particular file. Or is there an ADB command? Somebody help me, please. What I'm looking for is not "Tool" but how to get data programmatically... More on stackoverflow.com
🌐 stackoverflow.com
🌐
Androidbugfix
androidbugfix.com › 2022 › 03 › how-do-i-know-gpu-usage-on-android.html
How do I know GPU usage on Android devices? ~ AndroidBugFix
March 17, 2022 - What I'm looking for is not "Tool" but how to get data programmatically. As far as I know it's device dependant. E.g. for Mali GPU it's in dir: /sys/class/misc/mali0/device/utilization Qualcomm devices dir: /sys/class/kgsl/kgsl-3d0/ /sys/class/kgsl/kgsl-3d0/max_gpuclk /sys/class/kgsl/kgsl-3d0/gpuclk Answered By - Pantsoffski ... This Answer collected from stackoverflow and tested by AndroidBugFix ...
🌐
Microsoft Learn
learn.microsoft.com › en-us › answers › questions › 287705 › how-to-get-information-about-gpu-using-xamarin-and
How to get information about GPU using Xamarin Android? - Microsoft Q&A
February 24, 2021 - class MySurface : Java.Lang.Object, GLSurfaceView.IRenderer { private TextView tvVendor; RelativeLayout rlRoot; GLSurfaceView mGlSurfaceView; public MySurface(TextView tvVendor, RelativeLayout rlRoot, GLSurfaceView mGlSurfaceView) { this.tvVendor = tvVendor; this.rlRoot = rlRoot; this.mGlSurfaceView = mGlSurfaceView; } public void OnDrawFrame(IGL10 gl) { gl.GlClear(GL10.GlColorBufferBit); } public void OnSurfaceChanged(IGL10 gl, int width, int height) { } public void OnSurfaceCreated(IGL10 gl, Javax.Microedition.Khronos.Egl.EGLConfig config) { string extensions = GLES20.GlGetString(GLES20.GlExtensions); var red = gl.GlGetString(GL10.GlRenderer); string GPUInfo = "gl renderer: " + gl.GlGetString(GL10.GlRenderer) + "\n gl vendor: " + gl.GlGetString(GL10.GlVendor); MainThread.BeginInvokeOnMainThread(() => { tvVendor.Text = GPUInfo; rlRoot.RemoveView(mGlSurfaceView); }); } }
Find elsewhere
🌐
Google Groups
groups.google.com › g › android-platform › c › U9VN1KP8ZKE
Is there a way to detect programmatically GPU?
:) Use glGetString() with GL_VENDOR to determinate GPU vendor name and GL_RENDERER to determinate GPU name. Just do it as soon as gl context is made as current. Also there is a hidden method, you may see it in GLSurfaceView source ( https://github.com/android/platform_frameworks_base/blob/...
🌐
DroidViews
droidviews.com › home › how to monitor cpu and gpu usage on android
Monitor CPU and GPU Usage and RAM on Android | DroidViews
March 24, 2019 - Profiler is a light-weight Android app that lets you monitor your device’s CPU and GPU usage in real time. Not only that, but you can also monitor your device’s RAM, battery voltage, temperature, current, and network traffic. The advantage it gives you is that it provides an overlay above any apps on your screen.
🌐
Quora
quora.com › How-can-I-check-the-GPU-information-of-my-phone
How to check the GPU information of my phone - Quora
Answer (1 of 3): Most phones will have a heading called System in the Settings area of phone. Under that heading it will vary depending on your phone. My phone has it under Settings> System>About Device. You have not stated your phone here so hard to answer accurately. You can also alternetively ...
🌐
GitHub
github.com › AntonioRedondo › AnotherMonitor
GitHub - AntonioRedondo/AnotherMonitor: Monitors and records the CPU and memory usage of Android devices
AnotherMonitor monitors and records the CPU and memory usage of Android devices.
Starred by 1.1K users
Forked by 333 users
Languages   Java 100.0% | Java 100.0%
🌐
Android Developers
developer.android.com › app quality › inspect gpu rendering speed and overdraw
Inspect GPU rendering speed and overdraw | App quality | Android Developers
May 19, 2026 - Note: While this tool is named Profile GPU Rendering, all monitored processes actually occur in the CPU. Rendering happens by submitting commands to the GPU, and the GPU renders the screen asynchronously. In certain situations, the GPU can have too much work to do, and your CPU will have to wait before it can submit new commands.
🌐
Android Developers
developer.android.com › games dev center › android gpu inspector
Android GPU Inspector | Android game development | Android Developers
April 30, 2026 - Capture a trace from an individual application frame and then perform an in-depth analysis of your game’s GPU usage.
🌐
Gpuinspector
gpuinspector.dev
Android GPU Inspector
A single tool that will help you profile graphics on Android across several GPUs: Qualcomm® Adreno™, Arm® Mali™, and Imagination® PowerVR™. Vulkan and OpenGL ES APIs are both supported.
🌐
Intel Community
community.intel.com › t5 › Intel-Graphics-Performance › Can-I-get-GPU-load-via-an-API-call-in-my-application › td-p › 806231
Can I get GPU load via an API call in my application? - Intel Community
January 19, 2018 - Is there such and API/SDK/Functionality in MediaSDK maybe? so the GPA tool is not usable for programmatic access. ... Intel® Platform Analysis Library - https://software.intel.com/en-us/intel-platform-analysis-library ... 1 - do i have to have the GM_Server component running on the system to be able to read the counters? 2 - I have found the "com.intel.gpu.gpu_busy" property that gives the GPU usage, however i must run in Admin context before the numbers are correct.
🌐
Programmersought
programmersought.com › article › 28075690821
Android view CPU and GPU usage - Programmer Sought
# cat /sys/devices/system/cpu/cpu*/cpufreq/cpuinfo_cur_freq //Get the current frequency of cpu # cat /sys/class/thermal/thermal_zone*/temp //Get cpu and sensor temperature ... Transfer from: 1. View CUP usage, memory (1)top (2)htop 2. View GPU Use nvidia-smi command But this command ...
🌐
Developreference
android.developreference.com › article › 22910322 › Get+GPU+memory+usage+programmatically
Get GPU memory usage programmatically - c++
With Linux and GCC, you can use the sysconf function included using the <unistd.h> header. There are various arguments you can pass to get hardware information. For example, to get the amount of physical RAM in your machine you would need to do: sysconf(_SC_PHYS_PAGES) * sysconf(_SC_PAGESIZE); See the man page for all possible usages.