Cache GLContext::fBindFramebuffer
Categories
(Core :: Graphics: CanvasWebGL, enhancement, P1)
Tracking
()
Tracking | Status | |
---|---|---|
firefox93 | --- | fixed |
People
(Reporter: jgilbert, Assigned: jgilbert)
Details
Attachments
(1 file)
WebGL will often make duplicate calls to glBindFramebuffer, but it's not easy to figure out which are unnecessary at the WebGL layer. Instead, consider caching framebuffer bindings and eliding duplicate BindFramebuffer calls in GLContext.
We've seen these duplicate BindFramebuffer calls show up in profiling, at least on ANGLE.
Assignee | ||
Comment 1•3 years ago
|
||
Pushed by jgilbert@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/ef1d6ccf8d61 Cache/elide GLContext::BindFramebuffer calls. r=lsalzman
Comment 3•3 years ago
|
||
Backed out for assertion failures on CompositorBridgeParent.cpp
-
backout: https://hg.mozilla.org/integration/autoland/rev/3db432e2820882f8a29b52e4a3a0baee9e8d19eb
-
failure logs:
Pushed by jgilbert@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/fd92f897de07 Cache/elide GLContext::BindFramebuffer calls. r=lsalzman
Comment 6•3 years ago
|
||
Backed out for causing assertion failures on ContentCompositorBridgeParent.cpp
-
backout: https://hg.mozilla.org/integration/autoland/rev/140724d7106bad582a8a64f302222fdf7bbf9148
-
failure log: https://treeherder.mozilla.org/logviewer?job_id=349313521&repo=autoland&lineNumber=1158
[task 2021-08-23T22:25:53.171Z] 22:25:53 INFO - DEBUG: Adding blocker CrashService waiting for content crash ping to be sent for phase profile-before-change
[task 2021-08-23T22:25:53.177Z] 22:25:53 INFO - [2021-08-23T22:25:53Z WARN webrender::device::gl] Missing optimized shader source for gpu_cache_update
[task 2021-08-23T22:25:53.185Z] 22:25:53 INFO - Assertion failure: sIndirectLayerTrees.find(layersId) != sIndirectLayerTrees.end(), at /builds/worker/checkouts/gecko/gfx/layers/ipc/ContentCompositorBridgeParent.cpp:214
[task 2021-08-23T22:25:53.190Z] 22:25:53 INFO - DEBUG: Adding blocker Waiting for ping task for phase TelemetryController: Waiting for pending ping activity
[task 2021-08-23T22:25:53.190Z] 22:25:53 INFO - DEBUG: Completed blocker CrashService waiting for content crash ping to be sent for phase profile-before-change
[task 2021-08-23T22:25:53.216Z] 22:25:53 INFO - DEBUG: Completed blocker Waiting for ping task for phase TelemetryController: Waiting for pending ping activity
[task 2021-08-23T22:25:53.281Z] 22:25:53 INFO - #01: DumpCompleteHeap[C:\Users\task_1629753697\build\application\firefox\xul.dll +0x17b8f04]
[task 2021-08-23T22:25:53.281Z] 22:25:53 INFO - #02: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xbd48e3]
[task 2021-08-23T22:25:53.281Z] 22:25:53 INFO - #03: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xbddc1a]
[task 2021-08-23T22:25:53.282Z] 22:25:53 INFO - #04: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xae279b]
[task 2021-08-23T22:25:53.282Z] 22:25:53 INFO - #05: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xae05bf]
[task 2021-08-23T22:25:53.282Z] 22:25:53 INFO - #06: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xae1424]
[task 2021-08-23T22:25:53.283Z] 22:25:53 INFO - #07: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xae17f8]
[task 2021-08-23T22:25:53.283Z] 22:25:53 INFO - #08: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0x1e7bd5]
[task 2021-08-23T22:25:53.283Z] 22:25:53 INFO - #09: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0x1ef012]
[task 2021-08-23T22:25:53.284Z] 22:25:53 INFO - #10: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xae73a3]
[task 2021-08-23T22:25:53.284Z] 22:25:53 INFO - #11: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xa6ac80]
[task 2021-08-23T22:25:53.284Z] 22:25:53 INFO - #12: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0xa6ab3d]
[task 2021-08-23T22:25:53.285Z] 22:25:53 INFO - #13: Ordinal0[C:\Users\task_1629753697\build\application\firefox\xul.dll +0x1e3f67]
[task 2021-08-23T22:25:53.285Z] 22:25:53 INFO - #14: PRP_TryLock[C:\Users\task_1629753697\build\application\firefox\nss3.dll +0x159462]
[task 2021-08-23T22:25:53.286Z] 22:25:53 INFO - #15: PR_MD_UNLOCK[C:\Users\task_1629753697\build\application\firefox\nss3.dll +0x149e41]
[task 2021-08-23T22:25:53.286Z] 22:25:53 INFO - #16: o_ceil[C:\windows\System32\ucrtbase.dll +0x1c4be]
[task 2021-08-23T22:25:53.286Z] 22:25:53 INFO - #17: BaseThreadInitThunk[C:\windows\System32\KERNEL32.DLL +0x13034]
[task 2021-08-23T22:25:53.287Z] 22:25:53 INFO - #18: DllBlocklist_Initialize[C:\Users\task_1629753697\build\application\firefox\mozglue.dll +0x8f984]
[task 2021-08-23T22:25:53.287Z] 22:25:53 INFO - #19: RtlUserThreadStart[C:\windows\SYSTEM32\ntdll.dll +0x71461]
[task 2021-08-23T22:25:53.819Z] 22:25:53 INFO - [Parent 8176, IPC I/O Parent] WARNING:
[task 2021-08-23T22:25:53.819Z] 22:25:53 INFO - ###!!! [Child][MessageChannel::SendAndWait] Error: Channel error: cannot send/recv
[task 2021-08-23T22:25:53.820Z] 22:25:53 INFO - [1.1]: Ignoring message[G F'XE1V-E]N:T _F
[task 2021-08-23T22:25:53.820Z] 22:25:53 INFO - ###!!! [Child][MessageChannel::SendAndWait] Error: Channel error: cannot send/recv
[task 2021-08-23T22:25:53.821Z] 22:25:53 INFO - aMiEleSdS AaGs El'o stt[ GoFX1Web- Runen]k:ndeowrBn rF apeeirid g7elCed0h i5EB5Da6Es9 El4o9sFCt2l .WdC.e
[task 2021-08-23T22:25:53.821Z] 22:25:53 INFO - Cb043R5Ee9nd0e7r8B3r6i0d[EgC8ehCil:hdi lf8i5d6l8,e .M
[task 2021-08-23T22:25:53.822Z] 22:25:53 INFO - /abiuni lTdhsr/ewado][r kCWheilr/dc h3ARe6N3c6k, oMaIiuNnt sTGh/:rgeade]ck o /WfiAapRicNl/IegNdlG ue:/Ntode Cofon atirlorelelde ctreaort e.r eclcparpye:ae2r8t9
[task 2021-08-23T22:25:53.822Z] 22:25:53 INFO - em lanager: file /build[sP/arwaeoynert r8k1m7a6,ne raIge/PrcChe cI/k:Oo ufPtialser/en gt/]b ueiWclkAdRoN/sI/dNwGoo:m [r/i1pk.1erc/]ch/e:Bcrowsk eoIuts/rggCneckoor/ing dmoems/ihpsacg/Ber 'EVENT_MESSAGE' toow suneikldr.Cchnpopw:ni pe3er2l 2d57.
[task 2021-08-23T22:25:53.823Z] 22:25:53 INFO - 0c5EB5D6E9E49FC2.CC0435E9078360E8: file /buippl:ds/3w2o2r5ke
[task 2021-08-23T22:25:53.823Z] 22:25:53 INFO - r/checkouts/gecko/ipc/glue/NodeController.cpp:289
[task 2021-08-23T22:25:53.823Z] 22:25:53 INFO - [GFX1-]: [RPearecneitve 8 1I7P6C, cIlPC I/O Parent] WARNING: [1.1]: Ignoring mesossaeg ew it'hE VreEaNsTo_n=MAEbSnSoArGmEa'l Sthou tudonwknonw
[task 2021-08-23T22:25:53.824Z] 22:25:53 INFO - n peer 705EB5D6E9E49FC2.CC0435E9078360E8: file /builds/worker/checkouts/gecko/ipc/glue/NodeController.cpp:289
[task 2021-08-23T22:25:53.824Z] 22:25:53 INFO - [Parent 8176, IPC I/O Parent] WARNING: [1.1]: Ignoring message 'EVENT_MESSAGE' to unknown peer 705EB5D6E9E49FC2.CC0435E9078360E8: file /builds/worker/checkouts/gecko/ipc/glue/NodeController.cpp:289
Comment 7•3 years ago
|
||
Assignee | ||
Comment 9•3 years ago
|
||
Oh, I didn't branch on GetInteger
Comment 10•3 years ago
|
||
bugherder |
Comment 11•3 years ago
|
||
== Change summary for alert #31046 (as of Thu, 26 Aug 2021 10:01:49 GMT) ==
Improvements:
Ratio | Test | Platform | Options | Absolute values (old vs new) |
---|---|---|---|---|
13% | motionmark_webgl 3DGraphics-WebGL | macosx1015-64-shippable-qr | e10s stylo webgl-ipc webrender | 15.61 -> 17.61 |
10% | motionmark_webgl 3DGraphics-WebGL | macosx1015-64-shippable-qr | e10s stylo webgl-ipc webrender | 16.36 -> 17.98 |
For up to date results, see: https://treeherder.mozilla.org/perfherder/alerts?id=31046
Description
•