3

I'm running into an issue with WebGL in Google Chrome (61.0) with really long frames that occur around once every 60-90 seconds on my machine. Devtools logs these frames as GPU activity, but what is actually causing these frames to be long is opaque to me. The app is using REGL and updating attribute buffers every frame with subdata. I'm looking for insight into what could be causing these long frames, and how to move forward debugging them, as Chrome's devtools provide no details about GPU frames.

This issue does not occur with Safari 11.0

After further investigation it seems related to use of the ANGLE_instanced_arrays extension. This issue does not occur when disabling instancing and drawing each instance with a separate draw call.

Long GPU frame

Jay
  • 309
  • 3
  • 13
  • Did you tryed to run an empty webgl context, with only a clear() call to see if the problem remain ? –  Oct 20 '17 at 21:10
  • @Sedenion if none of the geometry is drawn, the issue does not occur. – Jay Oct 20 '17 at 21:19
  • do you use requestAnimationFrame for drawing? Does this issue occur in other(older/newer) versions of chrome? – LJᛃ Oct 21 '17 at 03:27
  • 4
    You could try using [about:tracing](https://www.chromium.org/developers/how-tos/trace-event-profiling-tool). – gman Oct 21 '17 at 03:36
  • Can you add a little more description about how you root-caused the issue? – Kayce Basques Oct 24 '17 at 22:34
  • @KayceBasques I have not yet isolated the particular set of circumstances that cause this bug, other than relating to use of the `ANGLE_instanced_arrays` extension. I have not been able to reproduce it with simplified examples, so for now I'm moving forward without instancing and will try to debug further when I have time. – Jay Oct 24 '17 at 23:39

0 Answers0