Apache OpenOffice (AOO) Bugzilla – Issue 85798
Aqua: Load/Save of documents much slower on Aqua than other ports on same hardware
Last modified: 2008-03-18 02:52:45 UTC
A good test document is http://www.oasis-open.org/committees/download.php/26216/OpenDocument-formula-20071115.odt Loading and saving of this document is very slow. Tests revealed that this is due to expensive progress bar updates. Once it is loaded, you cannot type immediately but have to wait for another 10 sec or so before the app is responding again. This is due to the timer handling which has to be fixed as well.
set target and keyword
.
The progress bar painting is not too expensive, but the full AquaSalFrame::Sync() called after each painting is... The responsiveness issue has a different cause than the timer handling I originally suspected: AquaSalInstance::AnyInput()'s current implementation doesn't convince SwDoc's idle-layouter that the system is not idling.
AquaSalInstance::AnyInput() implemented in CWS aquavcl05 => when performance is needed for interactivity idle-tasks doesn't occupy the CPU anymore
When the idle-handling wasn't fixed yet profiling showed that Writer's layouter could be made noticeably faster by short-circuiting some simple text measurement queries => implemented in CWS aquavcl05
AquaFrame::Flush() being too expensive got fixed in CWS aquavcl05 by getting rid of the synchronous indirect call to AquaSalGraphics::UpdateWindow() These cumulative changes improve the performance of loading the test document mentioned above from 32sec to 13sec on my test system :-)
Adjusted headline to summarize the more detailed root causes which are outlined in my analysis results above.
With the changes from issue 86095 the test documents now loads in 11 seconds instead of 13 secs previously or the original 32 seconds.
please verify in CWS aquavcl05
Verified in CWS aquavcl05.
closing