Bug 134263 - Scrolling down in multipage view (8 pages a row) stutters/choppy (part 2)
Summary: Scrolling down in multipage view (8 pages a row) stutters/choppy (part 2)
Status: NEW
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Writer (show other bugs)
Version:
(earliest affected)
4.3.7.2 release
Hardware: All Windows (All)
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: bibisected, bisected, perf, regression
Depends on:
Blocks: Scrolling-PageUpDown
  Show dependency treegraph
 
Reported: 2020-06-23 12:23 UTC by Telesto
Modified: 2020-08-03 20:28 UTC (History)
1 user (show)

See Also:
Crash report or crash signature:
Regression By:


Attachments
Bibisect log (3.15 KB, text/plain)
2020-06-23 12:47 UTC, Telesto
Details
Screencast 71 GDI (9.83 MB, video/mp4)
2020-06-24 21:37 UTC, Telesto
Details
Screencast 4204 GDI (13.41 MB, video/mp4)
2020-06-24 21:38 UTC, Telesto
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Telesto 2020-06-23 12:23:34 UTC
Description:
Scrolling down in multipage view (8 pages a row) slow (part 2)

Steps to Reproduce:
1. Open Writer prior 5.3 or 5.3 with old layout engine
2. Set memory settings (Tools -> Options to 190 MB in total / 12 MB for every object
3. Restart
4. Open attachment 162348 [details]
5. Go to multi page view -> 8 pages a row (change zoom/ or increase the size of sidebar)
6. Scroll down

Actual Results:
Choppy/stutters

Expected Results:
Smooth


Reproducible: Always


User Profile Reset: No



Additional Info:
Found in 
5.3 old

and in
5.2.5

and in
4.4.7.2

but not in
4.2.0.4
Comment 1 Telesto 2020-06-23 12:26:24 UTC
And in
Version: 4.3.7.2
Build ID: 8a35821d8636a03b8bf4e15b48f59794652c68ba
Comment 2 Telesto 2020-06-23 12:47:35 UTC
Created attachment 162350 [details]
Bibisect log

# only skipped commits left to test
# possible first bad commit: [9e174b12fd9c3ee7593de6ccbbfd41b476400fc8] source sha:66f8b54931f193bdc844c6bca388d9bde98779cd
# possible first bad commit: [2b65112bc65c957fc1956ba04303a8395e39f295] source sha:6ef04640ab92ce69000dcff3071eaef4419a9af6
# possible first bad commit: [2faf3370937281e5f67195536d600b8ae304ebb0] source sha:2d9d20edc999ef2c2ad2ee628a6a5f27efb801d8
Comment 3 Telesto 2020-06-23 12:55:00 UTC
@Buovjaga
FYI: Image caching..
Comment 4 Buovjaga 2020-06-24 19:00:44 UTC
A bit choppy, but nothing super alarming

Arch Linux 64-bit
Version: 7.1.0.0.alpha0+
Build ID: 090477feb304dd293c8dbf9bf729a3b3a41ae4df
CPU threads: 8; OS: Linux 5.7; UI render: default; VCL: kf5
Locale: fi-FI (fi_FI.UTF-8); UI: en-US
Calc: threaded
Built on 24 June 2020
Comment 5 Telesto 2020-06-24 21:37:00 UTC
Created attachment 162383 [details]
Screencast 71 GDI
Comment 6 Telesto 2020-06-24 21:38:03 UTC
Created attachment 162384 [details]
Screencast 4204 GDI
Comment 7 Telesto 2020-06-24 22:23:23 UTC
(In reply to Buovjaga from comment #4)
> A bit choppy, but nothing super alarming

I checked it against Linux
- GTK3 -> No complains 
- GEN -> scrollbar clicking really responsive.. scrolling not slow
- QT5 -> Doesn't go well on my Lubuntu -> doesn't move at all (and complaining about RGB64 blend not being supported)

Windows
Scrolling (scroll wheel) -> Slow (more or to compare with GEN)
Scrollbar clicking -> Not responsive
 
So could you please recheck with Windows.. it's quite bad ;-). This should be noticeable with your powerful machine... However benchmarking it against Xisco machine is of course preferred.. 

And somehow the thumbnail size matters too (5 pages 45% being really slow) while 5 pages at 40% pretty OK. (Note: 23 inch screen; not high DPI). Not sure what the effect of a high DPI screen would be.

50% of the CPU time is spend in ExtTextOutW GDI32
5% in GdiplusNotificationUnhook	
5% in GdipCloneBitmapAreaI	gdiplus
Comment 8 Buovjaga 2020-06-25 06:48:30 UTC
(In reply to Telesto from comment #7)
> - QT5 -> Doesn't go well on my Lubuntu -> doesn't move at all (and
> complaining about RGB64 blend not being supported)

Qt5 is not used anywhere to my knowledge - or does Lubuntu really use it?? It is experimental and should not be used. Rather test with kf5.
Comment 9 Telesto 2020-06-25 07:25:32 UTC
(In reply to Buovjaga from comment #8)
> (In reply to Telesto from comment #7)
> > - QT5 -> Doesn't go well on my Lubuntu -> doesn't move at all (and
> > complaining about RGB64 blend not being supported)
> 
> Qt5 is not used anywhere to my knowledge - or does Lubuntu really use it??
> It is experimental and should not be used. Rather test with kf5.

Not by default; however it's accepted. Kf5 switched to gtk3. So probably some compatibility issue.. and 18.04 not recent either. But a large part of the bibisect repro didn't run on 20.04. Some harfbuzz to old complain
Comment 10 Buovjaga 2020-06-25 07:48:50 UTC
(In reply to Telesto from comment #9)
> (In reply to Buovjaga from comment #8)
> > (In reply to Telesto from comment #7)
> > > - QT5 -> Doesn't go well on my Lubuntu -> doesn't move at all (and
> > > complaining about RGB64 blend not being supported)
> > 
> > Qt5 is not used anywhere to my knowledge - or does Lubuntu really use it??
> > It is experimental and should not be used. Rather test with kf5.
> 
> Not by default; however it's accepted. Kf5 switched to gtk3. So probably
> some compatibility issue.. and 18.04 not recent either. But a large part of
> the bibisect repro didn't run on 20.04. Some harfbuzz to old complain

Try installing the package plasma-framework and hopefully it will work.
Comment 11 Buovjaga 2020-06-25 10:19:27 UTC
Yeah, it's more laggy on Win

Version: 7.1.0.0.alpha0+ (x64)
Build ID: aadcd6f90916bd2b9734ae793141d0c77cc5b46c
CPU threads: 4; OS: Windows 10.0 Build 18362; UI render: Skia/Raster; VCL: win
Locale: fi-FI (fi_FI); UI: en-US
Calc: threaded
Comment 12 Telesto 2020-06-25 10:20:17 UTC
(In reply to Buovjaga from comment #10)
> Try installing the package plasma-framework and hopefully it will work.

Already installed (by default). So KF5 no go for me; 
Anyhow this seems to depend on the environment. working fine with GTK3. Its slow on unusable slow on Windows (and Linux gen)

Most of it probably related to bug 134262 (the bibisect here might be outdated.. a lot of stuff changed.. reordered.. different code paths.. )

BTW not many area's with ExtTextOutW is used.. 
https://opengrok.libreoffice.org/xref/core/vcl/win/gdi/winlayout.cxx?r=16ab4c5c#278