sw-wr: Scrolling the Matrix room list is laggy with SW-WR
Categories
(Core :: Graphics: WebRender, defect, P3)
Tracking
()
People
(Reporter: cpeterson, Unassigned)
References
(Blocks 1 open bug, )
Details
STR:
- Set
gfx.webrender.software
= true. - Log into https://chat.mozilla.org/
- Scroll the room list. I'm scrolling using a touch pad scroll gesture on my Windows 10 laptop.
Result:
The room list scrolling is slow and laggy. Resetting gfx.webrender.software
= false (and restarting Firefox) returns room list scrolling to be smooth and more responsive.
Here is a Gecko profile with SW-WR:
Comment 1•4 years ago
|
||
If you could enable all threads in the profiler, that would be helpful. The provide does not actually show what SW-WR is doing since the rendering threads have been excluded in the GPU process.
Reporter | ||
Comment 2•4 years ago
|
||
(In reply to Lee Salzman [:lsalzman] from comment #1)
If you could enable all threads in the profiler, that would be helpful. The provide does not actually show what SW-WR is doing since the rendering threads have been excluded in the GPU process.
Here's a new profile with all the threads (GeckoMain,Compositor,RenderBackend,PaintWorker,StyleThread,Socket Thread,Renderer,DOM Worker,DNS Resolver,ImgDecoder,StreamTrans):
Comment 3•4 years ago
|
||
Looks like a lot of time is spent in cs_clip_image_frag::run. The cs_clip_image shader is most likely pretty slow because it uses discard, and thus bypasses a lot of the SWGL fast-paths.
Updated•4 years ago
|
Comment 4•4 years ago
|
||
Can you grab a new profile? Things should be somewhat better now.
Reporter | ||
Comment 5•4 years ago
|
||
(In reply to Jeff Muizelaar [:jrmuizel] from comment #4)
Can you grab a new profile? Things should be somewhat better now.
Scrolling with sw-wr is smoother now than it was when I filed this bug four months ago, but is still a little laggy.
- Profile with sw-wr: https://share.firefox.dev/2UBLVM2
- For comparison, a profile without sw-wr: https://share.firefox.dev/38VUwBq
Updated•4 years ago
|
Comment 6•4 years ago
|
||
Here's my latest profile:
https://share.firefox.dev/2O5SztL
biggest bottlenecks are:
- commit_solid_span
- cs_clip_image_TEXTURE_2D_frag::run
Comment 7•4 years ago
|
||
I think we could probably be doing better invalidation wise.
Updated•4 years ago
|
Comment 8•4 years ago
|
||
Going to close this for now since cs_clip_image has been extensively optimized in bug 1682195, and should no longer be the bottleneck for this.
Description
•