WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
REOPENED
221738
[GTK][WPE] Async Scrolling: Slow scrolling and CSS animations on a static page
https://bugs.webkit.org/show_bug.cgi?id=221738
Summary
[GTK][WPE] Async Scrolling: Slow scrolling and CSS animations on a static page
Jeff Fortin
Reported
2021-02-10 20:18:32 PST
The website I'm using for this is a static one with pretty simple CSS: fortintam.com Here's how it looks like comparing Epiphany's Technology Preview (also affects the stable version) with Firefox:
https://youtube.com/watch?v=FUk-1t5AxV0
I'm running Fedora 33 with open source AMD Radeon (radeonsi) Pitcairn graphics in the GNOME 3.38 xorg session.
Attachments
Reduced test case
(355.70 KB, application/x-bzip)
2022-09-09 02:20 PDT
,
Carlos Garcia Campos
no flags
Details
sysprof capture of epiphany nightly from 2023-01-24 while scrolling that page
(1.79 MB, application/x-xz)
2023-01-25 10:35 PST
,
Jeff Fortin
no flags
Details
sysprof capture of Epiphany 44.2 with triple-buffered Wayland
(8.78 MB, application/x-xz)
2023-05-02 20:00 PDT
,
Jeff Fortin
no flags
Details
Screenshot of the Sysprof output
(186.78 KB, image/png)
2023-05-02 20:01 PDT
,
Jeff Fortin
no flags
Details
sysprof 45 capture on the logos page
(15.82 MB, application/x-xz)
2023-11-16 11:26 PST
,
Jeff Fortin
no flags
Details
Screenshot from sysprof 45 - flame graph
(205.04 KB, image/png)
2023-11-16 11:27 PST
,
Jeff Fortin
no flags
Details
Screenshot from sysprof 45 - call graph, part 1
(159.88 KB, image/png)
2023-11-16 11:27 PST
,
Jeff Fortin
no flags
Details
Screenshot from sysprof 45 - call graph, part 2
(164.21 KB, image/png)
2023-11-16 11:28 PST
,
Jeff Fortin
no flags
Details
Screenshot from sysprof 45 - call graph, part 3
(176.81 KB, image/png)
2023-11-16 11:28 PST
,
Jeff Fortin
no flags
Details
Screenshot from sysprof 45 - graphics stack marks
(238.51 KB, image/png)
2023-11-16 11:28 PST
,
Jeff Fortin
no flags
Details
Sysprof 47 capture on the logos page (Epiphany 47)
(3.13 MB, application/x-xz)
2024-09-25 20:01 PDT
,
Jeff Fortin
no flags
Details
Screenshot from Sysprof 47 and Epiphany 47 - flame graph
(950.75 KB, image/png)
2024-09-25 20:02 PDT
,
Jeff Fortin
no flags
Details
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Jeff Fortin
Comment 1
2022-09-04 07:32:48 PDT
Just for the record if anyone is seeing this: I've tested this again with Epiphany 42 in a Fedora 36 machine running with AMD Radeon APU graphics. Since Epiphany 42 reportedly force-turns-on accelerated compositing etc., I was hoping it might make a difference; it does not. The sluggishness remains even for scrolling this simple website, even on a GNOME Wayland session.
Bug #215045
also remains affected in the same way (but worse, since it's dealing with much heavier websites).
Carlos Garcia Campos
Comment 2
2022-09-09 02:19:59 PDT
This only happens with async scrolling, when using ondemand policy in GTK port or disabling AC mode makes it work fine. The problem seems to be the background image that is too big and for some reason with async scrolling looks like it's painted all the time or something like that. I'll attach a reduced test case.
Carlos Garcia Campos
Comment 3
2022-09-09 02:20:36 PDT
Created
attachment 462223
[details]
Reduced test case
Carlos Garcia Campos
Comment 4
2022-09-09 04:36:51 PDT
I thought the problem was the big image causing a performance degradation, but I'm nto sure anymore. The big image jut makes the problem easily noticeable, but I think it's always there in any case. It looks like we do start scrolling the background, that then it's positioned in the fixed position again, causing the weird effect at the top.
Carlos Garcia Campos
Comment 5
2022-09-29 00:36:51 PDT
I've identified the problem and we are now working on a solution.
Carlos Garcia Campos
Comment 6
2022-10-25 02:04:21 PDT
Pull request:
https://github.com/WebKit/WebKit/pull/5748
EWS
Comment 7
2022-10-25 07:51:41 PDT
Committed
255959@main
(1bf61e6bec18): <
https://commits.webkit.org/255959@main
> Reviewed commits have been landed. Closing PR #5748 and removing active labels.
Jeff Fortin
Comment 8
2023-01-22 11:58:05 PST
I tested with the current org.gnome.Epiphany.Devel "technology preview" flatpak from gnome-nightly, and unfortunately the issue still occurs there. I am told that the fix should have been present in that version by now, so something must be missing or maybe the fix didn't work...
Jeff Fortin
Comment 9
2023-01-25 10:35:26 PST
Created
attachment 464649
[details]
sysprof capture of epiphany nightly from 2023-01-24 while scrolling that page In case this can be insigthful, here's a profile done on Fedora 37 with the overpowered i7 Kaby Lake machine, on Wayland, in 4K HiDPI. Same hardware/software specs as in
bug #250998
.
Jeff Fortin
Comment 10
2023-03-15 09:58:31 PDT
In case this updated info is relevant: * Today, I tried with the current TP and Epiphany 44.rc from Fedora 38, and the slow scroll persists on that page, whether on my 4K+Wayland+Intel graphics test machine, or my HD+Xorg+AMD main desktop. * Out of curiosity, I grabbed Epiphany's web inspector and tried turning off various CSS properties of that page, such as: the fixed background on the body element, box shadow around #contenu, text shadows in the nav element... and it's still not smooth. That's surprising to me because I thought shadows might have been the problem.
Kdwk
Comment 11
2023-04-09 03:45:15 PDT
I can no longer reproduce with Gnome Web 44.1/ WebKitGTK 2.40
Jeff Fortin
Comment 12
2023-04-28 11:29:05 PDT
I can still reproduce this with GNOME Web 44.2 / WebKitGTK 2.40.1, even on Wayland, with my desktop's open source AMD graphics.
Jeff Fortin
Comment 13
2023-05-02 20:00:39 PDT
Created
attachment 466185
[details]
sysprof capture of Epiphany 44.2 with triple-buffered Wayland Here's a new sysprof capture, this time with a fully up-to-date Fedora 38 + the patched version of Mutter than has triple-buffering for the best possible Wayland performance. Even under those optimal conditions, the view still lags when scrolling on that page. It seems to have something to do with pixman_image_composite32 in cairo, as a result of webkitgtk doing a lot of cairo_paint_with_alpha requests? Just guessing, as I don't really know what I'm looking at, but hopefully this updated sysprof gives you new insights.
Jeff Fortin
Comment 14
2023-05-02 20:01:50 PDT
Created
attachment 466186
[details]
Screenshot of the Sysprof output In this screenshot you can see the approximate area I selected on the measurements timeline, as the peak before it is certainly the app's startup and page loading.
Jeff Fortin
Comment 15
2023-07-28 16:53:15 PDT
I discovered today that one of the pages of my website in particular makes the problem 10x worse, thus much easier to reproduce on probably any machine (it happens even with my overpowered laptop with Intel Kabylake graphics on Wayland): try scrolling
https://fortintam.com/en/clients/
and watch your frames drop!
Jeff Fortin
Comment 16
2023-11-16 11:26:13 PST
Created
attachment 468628
[details]
sysprof 45 capture on the logos page This new sysprof capture is probably going to be much more useful, as it bundles a ton more information. This was recorded with my Intel Kabylake laptop on the GNOME 45 Wayland session on Fedora 39. I scrolled using a traditional (discrete) mouse wheel, and then using the laptop's touchpad (with two fingers).
Jeff Fortin
Comment 17
2023-11-16 11:27:09 PST
Created
attachment 468629
[details]
Screenshot from sysprof 45 - flame graph
Jeff Fortin
Comment 18
2023-11-16 11:27:52 PST
Created
attachment 468630
[details]
Screenshot from sysprof 45 - call graph, part 1
Jeff Fortin
Comment 19
2023-11-16 11:28:02 PST
Created
attachment 468631
[details]
Screenshot from sysprof 45 - call graph, part 2
Jeff Fortin
Comment 20
2023-11-16 11:28:11 PST
Created
attachment 468632
[details]
Screenshot from sysprof 45 - call graph, part 3
Jeff Fortin
Comment 21
2023-11-16 11:28:43 PST
Created
attachment 468633
[details]
Screenshot from sysprof 45 - graphics stack marks
Kdwk
Comment 22
2024-05-14 21:28:14 PDT
fortintam.com seems to be fixed. fortintam.com/clients seems not be fixed even with Skia.
Jeff Fortin
Comment 23
2024-05-15 09:11:35 PDT
For me, both the front page and the clients page remain "not smooth" with Epiphany Devel/TP (i.e. with Skia). It's just that the clients page exhibits the problem much more visibly.
Jeff Fortin
Comment 24
2024-09-25 20:01:22 PDT
Created
attachment 472687
[details]
Sysprof 47 capture on the logos page (Epiphany 47) Here is a sysprof capture on Fedora 41 with Epipany 47.0 and: WebKitGTK 2.45.91 GStreamer 1.24.8 GTK 4.16.1
Jeff Fortin
Comment 25
2024-09-25 20:02:38 PDT
Created
attachment 472688
[details]
Screenshot from Sysprof 47 and Epiphany 47 - flame graph
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug