Closed Bug 1612941 (sw-wr-feb) Opened 5 years ago Closed 5 years ago

Software WebRender February Milestone

Categories

(Core :: Graphics: WebRender, task, P1)

task

Tracking

()

RESOLVED FIXED
mozilla76
Tracking Status
firefox76 --- fixed

People

(Reporter: jrmuizel, Assigned: lsalzman)

References

(Blocks 1 open bug)

Details

Attachments

(12 files, 2 obsolete files)

47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
47 bytes, text/x-phabricator-request
Details | Review
No description provided.
Blocks: sw-wr
Priority: -- → P1
Summary: Software WebRender February Milestone → [meta] Software WebRender February Milestone

The main blocker to getting sw-wr into the tree right now is that glsl-to-cxx fails in mach vendor rust. It seems that both glsl and lexical-core hit the large file limits. glsl might be workable if we submit an upstream PR to split some tests out into a separate file and get below the large file limit. lexical-core we would just have to pull in with permission from a build peer as-is I think. One other downstream library is missing a license which we might need to get fixed... glsl is also BSD-3-clause which will require being added to the whitelist in mach vendor rust... So, overall, the current state of things in that regard is a mess.

Ideally it would also be nice if we could find some way of automagically determining which shader/feature permutations WR is using so that we don't have to generate this by hand, as it's the last barrier to having a build system for swgl that avoids almost all manual intervention for adding or changing shaders in WR.

Otherwise, the secondary blocker for getting swgl integrated into the tree is needing a saner integration with the compositor API, which will both be better for performance as well as require cleaning up instantiation of swgl contexts...

(In reply to Lee Salzman [:lsalzman] from comment #1)

The main blocker to getting sw-wr into the tree right now is that glsl-to-cxx fails in mach vendor rust. It seems that both glsl and lexical-core hit the large file limits. glsl might be workable if we submit an upstream PR to split some tests out into a separate file and get below the large file limit. lexical-core we would just have to pull in with permission from a build peer as-is I think. One other downstream library is missing a license which we might need to get fixed... glsl is also BSD-3-clause which will require being added to the whitelist in mach vendor rust... So, overall, the current state of things in that regard is a mess.

I just checked and glsl is buildable without lexical-core. I'll submit a PR upstream.

Co-opting this bug to handle the actual landing of sw-wr into Gecko and de-meta-ifying it for now.

Keywords: meta
Summary: [meta] Software WebRender February Milestone → Software WebRender February Milestone
Assignee: nobody → lsalzman
Status: NEW → ASSIGNED

Depends on D65592

Attachment #9131241 - Attachment is obsolete: true

Try looks pretty green:
https://treeherder.mozilla.org/#/jobs?repo=try&revision=a4aa643ffb850bcc61f3091d8758be0b4779d9ee

Everything is gated by the gfx.webrender.software pref (disabled by default), which enables SWGL if WebRender is also enabled. At least for now, this should prevent SWGL from breaking anything by default.

See Also: → 1621044
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/87ddcdfc5fcf add deinit hook to WR Compositor trait. r=gw https://hg.mozilla.org/integration/autoland/rev/c198dedeaa1b add SWGL glue to webrender_bindings. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/419105739e53 add SWGL glue to wrench. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/54ec5a6e8e45 make WR report shader name and features in output for interop with SWGL. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/bd8ba66dc2ac properly detect GL_ARB_texture_swizzle extension in WR. r=gw,kvark https://hg.mozilla.org/integration/autoland/rev/375896f494ae only upload partial GPU cache rows in WR when possible to minimize memory churn. r=gw https://hg.mozilla.org/integration/autoland/rev/76f80dce8875 support variable depth buffer size in WR. r=gw https://hg.mozilla.org/integration/autoland/rev/30b28118362a force immediate upload method for SWGL since PBOs are slower there. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/ad7f43d72b08 WR shader changes to support SWGL instance attribs. r=jrmuizel,gw https://hg.mozilla.org/integration/autoland/rev/9b1360daa75a update gleam version to allow implementation of Gl trait. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/d92e03315f8d import glsl-to-cxx and swgl into Gecko tree. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/29f9f745ff65 vendor SWGL's rust dependencies. r=froydnj
Backout by shindli@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/1b8df9d39a0f Backed out 12 changesets for causing bustages CLOSED TREE
Attachment #9132549 - Attachment is obsolete: true
Flags: needinfo?(lsalzman)
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/60151122db4d add deinit hook to WR Compositor trait. r=gw https://hg.mozilla.org/integration/autoland/rev/67bba000daba add SWGL glue to webrender_bindings. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/f94d5c7cee41 add SWGL glue to wrench. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/edfca5676513 make WR report shader name and features in output for interop with SWGL. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/3cae17a5ec80 properly detect GL_ARB_texture_swizzle extension in WR. r=gw,kvark https://hg.mozilla.org/integration/autoland/rev/dd1a92041bb4 only upload partial GPU cache rows in WR when possible to minimize memory churn. r=gw https://hg.mozilla.org/integration/autoland/rev/2d6f65fe6ec0 support variable depth buffer size in WR. r=gw https://hg.mozilla.org/integration/autoland/rev/ec0fffd12dec force immediate upload method for SWGL since PBOs are slower there. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/2e0c9b9bd507 WR shader changes to support SWGL instance attribs. r=jrmuizel,gw https://hg.mozilla.org/integration/autoland/rev/c02c4c5bf7f7 update gleam version to allow implementation of Gl trait. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/cd798d2a0433 import glsl-to-cxx and swgl into Gecko tree. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/bbb8ec38f354 vendor SWGL's rust dependencies. r=froydnj
Backout by shindli@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/005382a5a58f Backed out 12 changesets for webrender linting bustage CLOSED TREE
Flags: needinfo?(lsalzman)
Pushed by lsalzman@mozilla.com: https://hg.mozilla.org/integration/autoland/rev/bdf468af2e58 add deinit hook to WR Compositor trait. r=gw https://hg.mozilla.org/integration/autoland/rev/4bcb997ff4e8 add SWGL glue to webrender_bindings. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/3c5eddbc74b6 add SWGL glue to wrench. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/558806ca7691 make WR report shader name and features in output for interop with SWGL. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/5097c1d4e3d7 properly detect GL_ARB_texture_swizzle extension in WR. r=gw,kvark https://hg.mozilla.org/integration/autoland/rev/a85061249e46 only upload partial GPU cache rows in WR when possible to minimize memory churn. r=gw https://hg.mozilla.org/integration/autoland/rev/b6ea5a6b0a72 support variable depth buffer size in WR. r=gw https://hg.mozilla.org/integration/autoland/rev/39adb08e0aca force immediate upload method for SWGL since PBOs are slower there. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/cf730c4e6539 WR shader changes to support SWGL instance attribs. r=jrmuizel,gw https://hg.mozilla.org/integration/autoland/rev/46024d1d85b3 update gleam version to allow implementation of Gl trait. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/f5ed9e999341 import glsl-to-cxx and swgl into Gecko tree. r=jrmuizel https://hg.mozilla.org/integration/autoland/rev/08e87bebb606 vendor SWGL's rust dependencies. r=froydnj
Depends on: 1622520
Regressions: 1622668
Regressions: 1629835
Regressions: 1659369
Regressions: 1705349
Regressions: 1746530
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: