
Overview
PerfHUD ES provides in-depth analysis of OpenGL ES applications on Tegra based devices. In order to target optimizations where they are most needed, developers are given access to GPU performance and bottleneck information. The debugging capabilities provide insight into the state of the OpenGL ES pipeline, related textures and shaders, and all rendering states to help find the causes for improper setup and rendering anomalies.
Where can I find it?
The latest version of PerfHUD ES for Android is available in the Tegra Android Toolkit on the Tegra Resources page. Simply download and install the latest Tegra Android Toolkit.
ENABLING PERFHUD ES
- This property MUST be set before the application to be debugged is launched.
- The property MUST be set each time the device is rebooted.
PerfHUD ES 1.9.6 Release Notes
- Numerous bug fixes, performance and stability improvements.
PerfHUD ES 1.9.5 Release Notes
- PerfHUD ES functions perfectly on the ASUS Transformer Prime (after the ICS update).
- Added the ability to easily advance to the next frame simplifying debugging workflow.
- Significant increase in performance.
PerfHUD ES 1.9 Release Notes
- Root access no longer required for Android.
- New counters added that quantify the time spent waiting each from by the OpenGL ES driver (2D HW, 3D HW and CPU).
- Added the “Disable Texture Upload” experiment, which indicates if an application is texture-data bound.
- Added the “Disable Buffer Data” experiment, which indicates if an application has issues with data loads.
- Added the “Disable Uniform Upload” experiment, which helps determine if data uploads are a bottleneck.
- New GPU Idle counter added to the Performance Dashboard.
- Line and draw call numbers now associated with OpenGL ES call trace.
- After compiling a shader, double-clicking an error message will take you to the source code of that error.
PerfHUD ES 1.8 Release Notes
- Added the “Disable Filtering” experiment, which indicates if an application is limited by filtering.
- New counter added that measures vertex cache hits.
- Dynamic Shader Editing now applies to all applications that use that shader.
- The Frame Debugger now displays all active attributes.
- The CU load information on the Performance Dashboard has been moved to a separate view.
- The host to target connection process has been greatly simplified.
PerfHUD ES 1.7 Release Notes
- Modify a GLSL shader at runtime and immediately see the results on the target
- Multi-core processor support
- New directed test for differentiating between the cost of clear and draw calls
- User defined frame delimiters allow the user to specify which call ends a frame
Support
To provide feedback, request additional features or report support issues, please use the Tegra Developer Forums.
System Requirements
Supported Operating Systems for PerfHUD ES client:
- Windows 7
- Mac OS X
- Linux (32 bit and 64 bit Ubuntu)
Features
Performance Dashboard
View performance statistics in real time while the target application continues to run
Frame Debugger
Drill down into one frame and examine OpenGL state, textures, and shaders
-
Shader Viewer

-
GL Callstack

-
Geometry Viewer

-
GL State Viewer

-
Texture Viewer

Frame Profiler
Perform automated in-depth analysis on a particular frame to determine performance bottlenecks
-
Unit Utilization

-
Draw Call Bottlenecks






Registered Developers Website
NVDeveloper (old site)