Platform/GFX/GFXQ2Goals: Difference between revisions

< Platform‎ | GFX
(→‎Desktop Zooming: Updating DTZ status)
 
(34 intermediate revisions by 3 users not shown)
Line 7: Line 7:


Our detailed plans for WebRender can be found [https://wiki.mozilla.org/Platform/GFX/WebRender2020_Q2 here]
Our detailed plans for WebRender can be found [https://wiki.mozilla.org/Platform/GFX/WebRender2020_Q2 here]
Our high-level goals are:
*Ship WebRender to specific targets per release in Q2
*Determine critical path for shipping WebRender on older Intel
*Software WebRender: measure perf as compared to old layers code, identify blockers to shipping and burn down associated tasks
===Desktop===
===Desktop===


Check out [http://www.arewewebrenderyet.com www.arewewebrenderyet.com] to see where we have enabled WebRender
Check out [http://www.arewewebrenderyet.com www.arewewebrenderyet.com] to see where we have enabled WebRender
<b>Current Status</b>


{| class="wikitable"
{| class="wikitable"
Line 21: Line 17:
! Goal !! Progress !! Blockers/risks
! Goal !! Progress !! Blockers/risks
|-
|-
| Ship WebRender to specific targets per release in Q2 || Targets have been selected, can be viewed here || <ul><li /> Potential bugs in release could slow us down/cause us to alter plan</ul>
| Ship WebRender to specific targets per release in Q2 || Targets have been selected, can be viewed [https://wiki.mozilla.org/Platform/GFX/WebRender2020_Q2 here] || <ul><li /> Potential bugs in release could slow us down/cause us to alter plan</ul>
|-
|-
| Determine critical path for shipping WebRender on older Intel || Focused on wr-perf-p1 tasks to help with this || <ul><li />  Might be additional tasks yet to prioritize </li>
| Determine critical path for shipping WebRender on older Intel || Focused on wr-perf-p1 tasks to help with this || <ul><li />  Might be additional tasks yet to prioritize </li>
|-
|-
| Software WebRender || SWGL is in tree, April milestones detailed here || <ul><li /> Patch has landed that should fix common test failures <li />Next up: look at issue where we are crashing when running tests</ul>
| Software WebRender || SWGL is in tree, April milestones detailed [https://wiki.mozilla.org/Platform/GFX/WebRender2020_Q2#Software_WebRender here] || <ul><li /> Patch has landed that should fix common test failures <li />Next up: look at issue where we are crashing when running tests</ul>
|}
|}


Line 32: Line 28:
===Webrender on Android===
===Webrender on Android===


Webrender is currently enabled for Adreno 5xx/6xx series on Fenix Nightly. We have not enable Webrender on the Fenix 'release' line.
Webrender is currently enabled for:
* Adreno 5xx/6xx series on Fenix Nightly.  
* Pixel 2/3 series enabled in the Fenix release line.


=====Upcoming milestones=====
<b>Current Status</b>
======[In Progress] Enable Webrender on release for a limited set of devices======


We currently have no ETA for when we can enable webrender on release due to Fenix release changes. We are working on getting a concrete plan for enabling Webrender on a limited set of devices, most likely Pixel 2 and 2 XL phones.
{| class="wikitable"
|-
! Goal !! Progress !! Blockers/risks
|-
| Enable WebRender in Fenix Release || In Progress || <ul><li />Working on getting Adreno 5xx/6xx enabled in release.</ul>
|-
| Get tests running || In Progress || <ul><li />Most important mochitests are now running either on device or emulator.</ul>
|-
| Enable webrender for Mali G7 in nightly || Not Started || <ul><li />We have been focused on the work listed above</li>
|}


Dependencies:
=Objective: Complete Graphics work important to overall Platform and Firefox goals=
* Improve cold start (no profile/cache) page load by pre-optimizing shaders in build pipeline (In Progress, ~80% complete)
* Implement position:sticky for Dynamic Toolbar with Webrender (In Progress, ~50% complete)
* Performance report from the performance team (In Progress, ~80% complete)
* Blocking bugs: https://github.com/orgs/FirefoxGraphics/projects/8


======[Not Started] Enable webrender for Mail G7 in nightly======
==Desktop Zooming==


A substantial amount of bugs are blocking this milestone. Due to efforts on improving load times, this has not been started.
* Burn down bugs blocking [https://bugzilla.mozilla.org/show_bug.cgi?id=desktop-zooming-xp Desktop Zooming] from riding the trains and select potential target shipping dates


=Non-WebRender=
{| class="wikitable"
|-
! Goal !! Progress !! Blockers/Risks
|-
| Enable in Nightly: Windows/Linux Touchscreen || In progress || <ul><li />Increased users dogfooding the feature in nightly, working on fixing test failures and some outstanding nightly blocking features.</ul>
|-
| Enable in Nightly: Mac touchpad || Paused || <ul><li />Google maps issues fixed, prioritizing touchscreens so pausing this for now</ul>
|-
| Enable in Nightly: Windows touchpad || In Progress || <ul><li />Direct Manipulation - Compositor issues resolved.</ul>
|}
 
== Fission ==
* Fix any important bugs identified during the Fission dogfooding milestone
* Fix any important bugs identified during the Fission dogfooding milestone
* Investigate OffscreenCanvas scope & potential milestones
* WebGPU


===Desktop Zooming===
<b>Current Status</b>
* Awaiting dogfooding to begin so we can determine key bugs blocking this


With Kats back working on APZ, we are making good progress and are hoping to enable touchscreen only zooming in next couple of weeks on nightly builds. We are currently evaluating if we can release a touchscreen only MVP before releasing the touchpad implementation.
== OffScreenCanvas ==
* Investigate OffscreenCanvas scope & potential milestones


=====Upcoming milestones=====
<b>Current Status</b>
======[In Progress] First nightly release: Windows/Linux Touchscreen Only======
* Not Started


Dependency: Hit Testing rework (90% complete)
== WebGPU ==
======[In Progress] Mac touchpad======


Dependency: Google maps issue (10% complete)
* Standup the CTS and run at least one (if not a few) tests
=====[In Progress] Windows touchpad======


Dependency: Direct Manipulation implementation (50% complete, running into API issues)
{| class="wikitable"
|-
! Goals !! Progress !! Risks/blockers
|-
| Land the presentation code (at least software) || In Progress || <ul><li />Should land after current softfreeze</ul>
|-
| Work on the shaders: ability to make sense of new language and translate to SPIR-V || In Progress ||  <ul><li />Discussions underway with working group</ul>
|-
| Implement error handling || Not started ||
|}

Latest revision as of 18:42, 4 June 2020

The purpose of this document is to highlight the key projects that the Graphics Team will focus on in Q2 2020.

Objective: Continue WebRender roll out (throughout 2020)

A major goal for the team throughout 2020 is to ship WebRender to as many users as we can.

Ship WebRender throughout Q2 to specific targets for both Desktop and Android

Our detailed plans for WebRender can be found here

Desktop

Check out www.arewewebrenderyet.com to see where we have enabled WebRender

Current Status

Goal Progress Blockers/risks
Ship WebRender to specific targets per release in Q2 Targets have been selected, can be viewed here
  • Potential bugs in release could slow us down/cause us to alter plan
Determine critical path for shipping WebRender on older Intel Focused on wr-perf-p1 tasks to help with this
  • Might be additional tasks yet to prioritize
Software WebRender SWGL is in tree, April milestones detailed here
  • Patch has landed that should fix common test failures
  • Next up: look at issue where we are crashing when running tests

A more detailed breakdown of our plans can be found on the WebRender Q2 planning page.

Webrender on Android

Webrender is currently enabled for:

  • Adreno 5xx/6xx series on Fenix Nightly.
  • Pixel 2/3 series enabled in the Fenix release line.

Current Status

Goal Progress Blockers/risks
Enable WebRender in Fenix Release In Progress
  • Working on getting Adreno 5xx/6xx enabled in release.
Get tests running In Progress
  • Most important mochitests are now running either on device or emulator.
Enable webrender for Mali G7 in nightly Not Started
  • We have been focused on the work listed above

Objective: Complete Graphics work important to overall Platform and Firefox goals

Desktop Zooming

  • Burn down bugs blocking Desktop Zooming from riding the trains and select potential target shipping dates
Goal Progress Blockers/Risks
Enable in Nightly: Windows/Linux Touchscreen In progress
  • Increased users dogfooding the feature in nightly, working on fixing test failures and some outstanding nightly blocking features.
Enable in Nightly: Mac touchpad Paused
  • Google maps issues fixed, prioritizing touchscreens so pausing this for now
Enable in Nightly: Windows touchpad In Progress
  • Direct Manipulation - Compositor issues resolved.

Fission

  • Fix any important bugs identified during the Fission dogfooding milestone

Current Status

  • Awaiting dogfooding to begin so we can determine key bugs blocking this

OffScreenCanvas

  • Investigate OffscreenCanvas scope & potential milestones

Current Status

  • Not Started

WebGPU

  • Standup the CTS and run at least one (if not a few) tests
Goals Progress Risks/blockers
Land the presentation code (at least software) In Progress
  • Should land after current softfreeze
Work on the shaders: ability to make sense of new language and translate to SPIR-V In Progress
  • Discussions underway with working group
Implement error handling Not started