Bug 131092 - High CPU usage and slow performance with column selection
Summary: High CPU usage and slow performance with column selection
Status: RESOLVED WORKSFORME
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: Calc (show other bugs)
Version:
(earliest affected)
6.2.8.2 release
Hardware: All All
: medium normal
Assignee: Not Assigned
URL:
Whiteboard:
Keywords: perf
Depends on:
Blocks: Cell-Selection
  Show dependency treegraph
 
Reported: 2020-03-03 13:15 UTC by Kevin Suo
Modified: 2021-11-17 14:49 UTC (History)
3 users (show)

See Also:
Crash report or crash signature:


Attachments
perf flamegraph (29.88 KB, application/x-bzip)
2020-04-26 09:27 UTC, Julien Nabet
Details
Flamegraph (gen rendering) (10.52 KB, application/x-bzip)
2020-04-26 09:34 UTC, Julien Nabet
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kevin Suo 2020-03-03 13:15:53 UTC
Description:
When I do column selection in Calc, the CPU usage is very high and the selection is very slow.

Steps to Reproduce:
1. New Calc. Type "a" in cell A1, copy A1 using Ctrl-C, select columns A:D and paste into these columns using Ctrl-V.

2. Click any cell to release column focus, then try to select the columns.
--> So far so good, selection is very fast.

3. Continue to select columns A:D, then apply liberation serif fonts to these columns (previously the font is liberation sans). Click any cell to release column focus.

4. Now try to select all the A:D columns, select any cell ranges, or just select any cell with or without content.
--> Bug - Selection is slow, CPU usage is high. It does not help at this stage even you apply "clear direct formatting" to this columns now.

Actual Results:
See explanation in the STR.

Expected Results:
Selection should always be fast provided that this is a very basic feature. We always do selection and move around in the spreadsheet, even through we do not do copy-paste or other operation related to formatting after most of the selection.


Reproducible: Always


User Profile Reset: Yes



Additional Info:
Reproduced in both Fedora 31 and Ubuntu 19.10, in both Chinese and pure English environment.

版本: 6.3.6.0.0+
Build ID: cb957e35f54d6c4e9b8b13cd014a09bdf74327b0
CPU 线程: 4; 操作系统: Linux 5.5; UI 渲染: 默认; VCL: gtk3; 
区域语言: zh-CN (zh_CN.UTF-8); UI 语言: zh-CN
Calc: threaded
Comment 1 Oliver Brinzing 2020-03-05 18:55:08 UTC
reproducible with:

Version: 6.2.8.2 (x64)
Build-ID: f82ddfca21ebc1e222a662a32b25c0c9d20169ee
CPU-Threads: 4; BS: Windows 10.0; UI-Render: Standard; VCL: win; 
Gebietsschema: de-DE (de_DE); UI-Sprache: de-DE
Calc: 

Version: 6.4.1.2 (x64)
Build-ID: 4d224e95b98b138af42a64d84056446d09082932
CPU-Threads: 4; BS: Windows 10.0 Build 18363; UI-Render: Standard; VCL: win; 
Gebietsschema: de-DE (de_DE); UI-Sprache: de-DE
Calc: 

selecting a column will trigger a "adapt Row high" adjustment
Comment 2 Roman Kuznetsov 2020-04-26 00:07:44 UTC
Julien, can you make a perfgraph here?
Comment 3 Julien Nabet 2020-04-26 09:27:14 UTC
Created attachment 159950 [details]
perf flamegraph

Here's a Flamegraph retrieved on pc Debian x86-64 with master sources updated today.
Remark: I noticed no slowdown here. (already fixed on master?)
Comment 4 Roman Kuznetsov 2020-04-26 09:29:51 UTC
(In reply to Julien Nabet from comment #3)
> Created attachment 159950 [details]
> perf flamegraph
> 
> Here's a Flamegraph retrieved on pc Debian x86-64 with master sources
> updated today.
> Remark: I noticed no slowdown here. (already fixed on master?)

I tested it in master yesterday therefore ask you make a flamegraph...
Comment 5 Julien Nabet 2020-04-26 09:31:35 UTC
(In reply to Roman Kuznetsov from comment #4)
> ...
> I tested it in master yesterday therefore ask you make a flamegraph...

Sorry for this, I'm gonna give a new try with gen rendering.
Comment 6 Julien Nabet 2020-04-26 09:34:33 UTC
Created attachment 159952 [details]
Flamegraph (gen rendering)

No delay too with gen rendering.

I should have read Kevin twice, he used gtk3 rendering.
Comment 7 Telesto 2020-05-23 12:45:38 UTC
No repro on Windows
Version: 7.0.0.0.alpha1+ (x64)
Build ID: 9a7c5d38a7a43c75c0f3d2f0c725196e916d0260
CPU threads: 4; OS: Windows 6.3 Build 9600; UI render: Skia/Raster; VCL: win; 
Locale: nl-NL (nl_NL); UI: en-US
Calc: CL
Comment 8 Kevin Suo 2021-11-17 14:49:07 UTC
Works for me on current master. Close as RESOLVED WORKSFORME.