https://bugs.documentfoundation.org/show_bug.cgi?id=172990
Bug ID: 172990
Summary: EDITING: add a profiler to help debug performance
Product: LibreOffice
Version: 26.2.3.2 release
Hardware: All
OS: All
Status: UNCONFIRMED
Severity: enhancement
Priority: medium
Component: Calc
Assignee: [email protected]
Reporter: [email protected]
Description:
As far as I know, when we've got some performance issue with Calc, there is no
good way to know where it comes from.
It would be nice to have a profiling mode which, for some sequence of editing
operations, records the run time of all the updated formulas and named
expressions, and then allow the user to query this information.
I'll let you figure out the details, but here's the kind of query I'd like to
be able to make:
- For a given cell and all its transitive dependencies, how long did it take to
compute each of them? Where is the critical path?
- Same but for a given range of cells containing similar formula, I'd want to
see the aggregated (by range) run time of its dependencies. (Might require
being able to detect ranges of similar formula in the dependencies.)
To simplify the UI side of things, outputting a file in the Chrome Trace Event
format could already be very useful.
Steps to Reproduce:
1. Create a spreadsheet with so many formulas and named expressions that their
recalculations becomes slow.
2. Edit the source of data used in those formulas.
3. Wonder which formulas are slow and could be rewritten / disabled.
Actual Results:
Perform some trial and error to remove random formulas until the editing
operations feel subjectively ok.
Expected Results:
Some kind of profiling information to:
1. Not make it based on feeling
2. Have some insight of the timing of things
Reproducible: Always
User Profile Reset: Yes
Additional Info:
Version: 26.2.4.2 (X86_64)
Build ID: 620(Build:2)
CPU threads: 8; OS: Linux 6.19; UI render: default; VCL: x11
Locale: fr-FR (fr_FR.UTF-8); UI: en-US
Debian package version: 4:26.2.3.2-2
Calc: threaded
--
You are receiving this mail because:
You are the assignee for the bug.