Summary: 6.3.0.4 appears to take 224% longer than 6.1.5.2 when loading/saving ODT from bug 84635 Quite the reverse of the 6.3.0.4 release documentation. Detail: There seems to be a big drop in performance on Windows 10 for the files attached to bug (84635). I've raised this as a separate bug since it appears to be limited to Windows and it tests performance using LOAD and SAVE operations which may mean it has a slightly different cause. Tests on linux show no significant improvement or degradation in performance using this test between 6.1, 6.2 and 6.3 (which is also unexpected but not a regression). Release 6.3.0.4 touts big improvements in ODT load times (order of magnitude) and related to large tables. It also specifically states it resolves bug 84635. The test uses the LibreOffice command line to get the time taken to convert an ODT to PDF. The file used is https://bugs.documentfoundation.org/attachment.cgi?id=107265 which is the second test document attached to bug (84635) and the file is called: table_1034r_13p.odt On Windows, the following command is put into a batch script file conv6.1.5.2.bat: "\Program Files\LibreOffice6.1.5.2\program\soffice.exe" --convert-to pdf table_2178r_26p.odt --headless and using Windows Power Shell, the execution time of the convert can be collected: Measure-Command {.\conv6.1.5.2.bat} The above process was used with 6.1.5.2, 6.2.6.1 and 6.3.0.4 generating the following averaged results: 6.1.5.2 - 31.5 seconds 6.2.6.1 - 43.5 seconds (+38% longer) 6.3.0.4 - 70.7 seconds (+224% longer) Notes: 1) After looking at related bugs, the tests were executed with and without GPL enabled which did not make a significant difference. 2) The tests were also executed after clearing the user settings (%APPDATA%\Roaming\LibreOffice) so that the version being tested would create the user profile during the test. 3) Converting to docx (instead of PDF) has similar results
in Version: 6.4.0.0.alpha0+ Build ID: 63889d3d465e9b4292dd5bb630bd3394494c8a6d CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US Calc: threaded it takes real 0m30,408s user 0m27,950s sys 0m0,920s while in Version: 6.3.1.0.0+ Build ID: 8b81a453b22611f25674f5e44ae411d78c2fcada CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US Calc: threaded it takes real 0m12,317s user 0m11,042s sys 0m0,401s and in Version: 6.2.7.0.0+ Build ID: 28c6af3ddc283ca9c5712359a9abcb385c1575b4 CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US Calc: threaded it takes real 0m26,985s user 0m24,227s sys 0m0,640s so for me, LibreOffice 6.3.1 is faster. I'll wait for others to comment....
with: Version: 6.3.0.4 (x64) Build ID: 057fc023c990d676a43019934386b85b21a9ee99 CPU threads: 4; OS: Windows 10.0; UI render: default; VCL: win; Locale: de-DE (de_DE); UI-Language: en-US Calc: a simple File/Open takes ~15 sec and converting to pdf ~32 sec (~42 sec if LO is not running): PS C:\Program Files\LibreOffice 6.3\program> Measure-Command {.\soffice --convert-to pdf --outdir D:\downloads D:\downloads\table_1034r_13p.odt} [...] Seconds : 32 btw: if i do same with LO 6.2.5.2, soffice.exe will return immediatelly, converting takes ~21 sec: PS C:\Program Files\LibreOffice 6.2\program> Measure-Command {.\soffice --convert-to pdf --outdir D:\downloads D:\downloads\table_1034r_13p.odt} Days : 0 Hours : 0 Minutes : 0 Seconds : 0 Milliseconds : 7
(In reply to Oliver Brinzing from comment #2) > with: > > Version: 6.3.0.4 (x64) > Build ID: 057fc023c990d676a43019934386b85b21a9ee99 > CPU threads: 4; OS: Windows 10.0; UI render: default; VCL: win; > Locale: de-DE (de_DE); UI-Language: en-US > Calc: > > a simple File/Open takes ~15 sec > > and converting to pdf ~32 sec (~42 sec if LO is not running): > > PS C:\Program Files\LibreOffice 6.3\program> Measure-Command {.\soffice > --convert-to pdf --outdir D:\downloads D:\downloads\table_1034r_13p.odt} > > > [...] > Seconds : 32 > > > btw: if i do same with LO 6.2.5.2, soffice.exe will return immediatelly, > converting takes ~21 sec: > > PS C:\Program Files\LibreOffice 6.2\program> Measure-Command {.\soffice > --convert-to pdf --outdir D:\downloads D:\downloads\table_1034r_13p.odt} > > > Days : 0 > Hours : 0 > Minutes : 0 > Seconds : 0 > Milliseconds : 7 Measure-Command can give complete timing if you put the command in a script file, then run the script. eg Measure-Command {.\test.bat}
Created attachment 153290 [details] perf flamegraph On pc Debian x86-64 with master sources updated yesterday, I tested this: ./soffice --convert-to pdf table_2178r_26p.odt --headless and retrieved a Flamegraph
With LO 6.3.2.0+ under Ubuntu 18.04 x86-64 using the following script: #!/bin/sh libreoffice6.3 --convert-to pdf table_1034r_13p.odt --headless real 0m5.778s user 0m5.687s sys 0m0.189s With LibreOffice 6.2 : real 0m6,798s user 0m6,492s sys 0m0,259s With LibreOffice 6.1 : real 0m7,138s user 0m6,230s sys 0m0,321s Note: tests performed while the machine is compiling the master. Best regards. JBF
Now it takes real 0m11,578s user 0m11,481s sys 0m0,292s in Version: 6.4.0.0.alpha0+ Build ID: 186d36a7036462ae641b35004b4ffba3eeeca46f CPU threads: 4; OS: Linux 4.15; UI render: default; VCL: gtk3; Locale: ca-ES (ca_ES.UTF-8); UI-Language: en-US Calc: threaded which is 1/3 of my previous measurement in comment 1. @Paul, Could you please try to reproduce it with a master build from http://dev-builds.libreoffice.org/daily/master/ ? You can install it alongside the standard version. I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' if the bug is still present in the master build
real 0m11,231s user 0m11,090s sys 0m0,219s in Versió: 6.3.1.2 ID de la construcció: 1:6.3.1~rc2-0ubuntu0.18.04.1~lo1 Fils de CPU: 4; SO: Linux 4.15; Renderitzador de la IU: per defecte; VCL: gtk3; Configuració local: es-ES (ca_ES.UTF-8); Llengua de la IU: ca-ES Calc: threaded
Dear Paul, This bug has been in NEEDINFO status with no change for at least 6 months. Please provide the requested information as soon as possible and mark the bug as UNCONFIRMED. Due to regular bug tracker maintenance, if the bug is still in NEEDINFO status with no change in 30 days the QA team will close the bug as INSUFFICIENTDATA due to lack of needed information. For more information about our NEEDINFO policy please read the wiki located here: https://wiki.documentfoundation.org/QA/Bugzilla/Fields/Status/NEEDINFO If you have already provided the requested information, please mark the bug as UNCONFIRMED so that the QA team knows that the bug is ready to be confirmed. Thank you for helping us make LibreOffice even better for everyone! Warm Regards, QA Team MassPing-NeedInfo-Ping
Hello All. Apologies, in re-testing this I see some errors in my initial description about setting up the test case. I can't seem to edit the original description, so this is the corrected version (the url was to the wrong test file): Test file is : table_2178r_26p.odt and comes from (bug 84635) : https://bugs.documentfoundation.org/attachment.cgi?id=107266 Test results now (same machine as original - Windows 10, i7): 6.1.5.2 - 30.5 seconds (38.2 seconds if %APPDATA%\Roaming\LibreOffice is cleared first) 6.2.6.1 - 38.9 seconds (58.2 seconds if %APPDATA%\Roaming\LibreOffice is cleared first) 6.3.0.4 - 65.5 seconds (86.2 seconds if %APPDATA%\Roaming\LibreOffice is cleared first) 6.4.0.0-alpha - 59.8 seconds (66.2 seconds if %APPDATA%\Roaming\LibreOfficeDev is cleared first) 6.4.5.2 - 64.9 seconds (83.5 seconds if %APPDATA%\Roaming\LibreOffice is cleared first) 6.5.0.0-alpha - 64.5 seconds (85.0 seconds if %APPDATA%\Roaming\LibreOfficeDev is cleared first) 6.4.6.2 - 65.0 seconds (85.2 seconds if %APPDATA%\Roaming\LibreOffice is cleared first) 7.0.0.3 - 64.7 seconds (79.6 seconds if %APPDATA%\Roaming\LibreOffice is cleared first) So, overall since version 6.1.5.2, most versions run this test with performance a little worse than twice as long. The same commands were used as per the original description: Windows Powershell> Measure-Command {.\conv.bat} where conv.bat converts using a specific install of Libre Office: "\Program Files\LibreOffice6.1.5.2\program\soffice.exe" --convert-to pdf table_2178r_26p.odt --headless
This was noticeably improved by my recent font caching changes.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/42a7b48065977d11bc99ab32dadbfde5f1209438 tdf#126788 speed up export to pdf of complex table document It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/d1b7d7a8d16d222536534ccf92576ed1eb05e1a8 tdf#126788 speed up export to pdf of complex table document It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/ebe2a3e948df1622f3532afeeaeb31d1066d40c2 tdf#126788 check if we need to fire an event It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/32b0b79c3f71e4aca995aa92ee519d93a3ca2b3b tdf#126788 replace dynamic_cast with static_cast It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/f2ec354bf4f535132d34b206382cceb22ec7f43c tdf#126788 dynamic_cast -> virtual call It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/2c4aabb220ad1e8f1cbc75f2361fe17893d7cc29 tdf#126788 speed up GetDocFromXMLImport It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/29de154fdfd5ce69ec906e04823c7d1cbbbbcdf9 tdf#126788 reduce cost of OInterfaceContainerHelper4::disposeAndClear It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/9cd0f4c2d25462feba0ffcbd906c199273821243 tdf#126788 no need to allocate an SwContentIndex when calling RstTextAttr It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/b3329c10cca25eb393430d9d9f10ebd9e3c1240b tdf#126788 check for listeners first It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/24a2c65e7ea15166061d96352164b51c5ffd9fa8 tdf#126788 use singleton to avoid initial allocation It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/f7bb0a1fd6896df5b13b91f63f05296174764394 tdf#126788 no need to dynamic_cast twice here It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/e97e3ea3a2545a1b1d962eca95045b6da232f204 tdf#126788 fetch node index once here It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/cd14cd07b9252cab0f23949043ae93b9fe85b5c0 tdf#126788 avoid temporary vector It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/c11acfa916302e2af9ecc4c1657ac7461148bfcf tdf#126788 avoid temporary Sequence It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/814cc6e8a30bde58adfb9f114c435dcb11c1e013 tdf#126788 reduce number of comparisons to query XUnoTunnel It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/92cd851c924486829aa7592ee41a62d2d97b755d tdf#126788 only call TotalCount() if we need the result It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/d3caee0a7af6d184e950414d880be29cbab60498 Revert "tdf#126788 replace dynamic_cast with static_cast" It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/0f57a02c5aabbc09cfd6c912d211d21a748abc88 tdf#126788 return concrete type from CreateXTextRange It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/1f8d457073f371592e57945ced6922ceab6036ce tdf#126788 inline CreateXTextRange into this call site It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/9c1ed3d4396400e2be30c74a6c9af89cf4cc80b7 tdf#126788 inline CreateParentXText into this call site It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/ae323dfc4c031289d341a4152fc756c1433ea2e1 tdf#126788 inline createTextCursorByRange into this call site It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/746f710d693a10daf48b5cb5a4f6082d2dafa49a tdf#126788 elide OUString construction SwTextNode::InsertText It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/ae86dfdc05545ca4ec67f0434737baa92892b79f tdf#126788 inline the SwXTextRange into this call site It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/2ae53eb5dcbe0a3c5b4dc5323639a11878a38101 tdf#126788 remove weak m_wThis reference It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Noel Grandin committed a patch related to this issue. It has been pushed to "master": https://git.libreoffice.org/core/commit/1e5e65715cf053deb7d52e62dd598ac51cea5ee6 Revert "tdf#126788 remove weak m_wThis reference" It will be available in 7.5.0. The patch should be included in the daily builds available at https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: https://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.