Appendix B: Troubleshooting

My game runs fine, but PerfHUD doesn’t connect and the performance graphs are all empty.
I can connect to my device and look at performance statistics, but I don’t see the speed bar.

The speed bar is visible only if your application uses the EGL_NV_system_time extension (Appendix A).

I don’t see a button in my mode bar for Frame Profiler.

Not all devices support Frame Profiling. And the Frame Profiler is not available if the target application does not use eglGetSystemTimeNV for its animation.

My status bar says: “ERROR: target uses protocol x.x but host uses protocol x.x”

You have a version mismatch between the driver and the PerfHUD host. Always update your driver and PerfHUD host in tandem.

When using PerfHUD ES enabled driver, invoking GL functions before eglInitialize() will cause application crash.

In PerfHUD ES enabled driver, some other prologue and epilogue functions will also be invoked besides the original GL functions. And these additional functions have to be initialized before any GL functions being invoked. Make sure eglInitialize() is invoked before any GL functions in your applications.

When connected to an application with many draw calls in frame debugger mode, memory footprint of host side got larger and larger and host finally crashed.

This will happen only when there is not enough memory for your system and host will fail when allocating a piece of memory. The memory footprint of host side for frame debugger mode is proportional to target frame size.

Make sure your system has enough memory or chose proper resolution when you need to use PerfHUD ES frame debugger for a frame with a large number of draw calls.




NVIDIA® GameWorks™ Documentation Rev. 1.0.211026 ©2014-2021. NVIDIA Corporation and affiliates. All Rights Reserved.