Intel® Graphics Performance Analyzers (Intel® GPA)
Improve your game's performance by quickly specifying problem areas

Frame analyzer: Different result on device, and when analyzing, how?

Olof_H_
Beginner
331 Views

I'm trying to find a problem in our android integration using the Frame Analyzer.

The problem is a specific mesh not showing on screen when it is supposed to.

The weird thing is though, if I capture the frame with Frame Analyzer, and play it back, the mesh is visible and everything looks like it should!

I'm a bit stumped on how running the analyzer, and running the application as normal, can have different results.... isn't the graphics commands supposed to be routed to the device and back? Or is it emulated somehow? (I've got my device selected, and not "emulated OpenGL ES" at the top)

Anyone who can shed some light on this issue? 

The device is an Acer Iconia Tab 8 - I got it send to me from our Intel contact.

0 Kudos
2 Replies
Seth_S_Intel
Employee
331 Views

Hi Olaf, 

This one is head scratcher.  Playback does not use an emulator, it uses the device connected via ADB.  So it should be playing back on the same device you captured on. 

We may have a bug capturing a specific state which could be the root of the issue. Would it be possible to share you frame capture?  Feel free to private message me with a link to the frame file.  The frame file will help us repo and fix the issue faster.  

Best,

Seth

0 Kudos
Seth_S_Intel
Employee
331 Views

Hi Olaf, 

Just finishing up this old thread. Our engineers found that: 

The application uses depth buffer from default framebuffer (created by window system, egl in this case). In Open GLES there is no way to save default depth buffer without the tracking its use. But it will produce the CPU and GPU overhead and can corrupt the rendering during real-time profiling in SA.

From our PMs you have already found a workaround though. :)  Just thought I would post the solution on the public forum for others to see.

Best,

Seth 

 

0 Kudos
Reply