New issue
Advanced search Search tips

Issue 911176 link

Starred by 1 user

Issue metadata

Status: Assigned
Owner:
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 699566
issue 905008

Blocking:
issue 882591
issue 913751



Sign in to add a comment

Stop allocating GpuMemoryBuffer client-side in WebGL's DrawingBuffer

Project Member Reported by samans@chromium.org, Dec 3

Issue description

Quoting piman@ from my CL: 
"In the case where we don't need RGB emulation, we can use the non-GMB CreateSharedImage path (with the gpu::SHARED_IMAGE_USAGE_SCANOUT) which is more efficient, as it allocates the GMB on the service side, without requiring synchronous round-trips to the browser.

For the RGB emulation case, we still need the GMB as that's how we can create 2 textures with different internalformats, but we can tackle that separately."
 
Blockedon: 905008
Thanks for filing this. Could you please link this bug to a parent bug?

Moving this entirely into the service side will likely require quite a lot of RGB-on-RGBA emulation to be moved - see Issue 905008 (restricted view) for one recent apparent bug in this emulation.

Blocking: 882591
I guess at the very least we can do it for cases that RGB emulation is not required, but that would increase the complexity in DrawingBuffer as we will have to maintain two different code paths. However, the improved efficiency could be worth it. What do you think?
We can probably move a subset of the RGB emulation (just the part that handles BlitFramebuffer which is what requires another texture) to the service side and entirely eliminate the need for client-side GMBs, while leaving the preserve-alpha logic client side (for now).
Blockedon: 699566
Linking to one parent bug related to the RGB-on-RGBA emulation.

Blocking: 913751

Sign in to add a comment