Performance Issue on Loading Expert Config (a.k.a About Config Utility)

classic Classic list List threaded Threaded
2 messages Options
Efe Gürkan YALAMAN Efe Gürkan YALAMAN
Reply | Threaded
Open this post in threaded view
|

Performance Issue on Loading Expert Config (a.k.a About Config Utility)

Hi all,

Expert Config page is now working(unstable) with an edit button as I mentioned my last GSOC report. So I am currently chasing performance issues on the page.

I have some questions about it.

Note: I am not good at naming things. I will call the "org.openoffice.Office/" part as toplevel below. :)

So-

Current situation on master:
-We are not traversing all of the settings. There are hardcoded randomly chosen 3 toplevels which returns about 100-120(don't know how much exactly) options. [1]
-Giving the root as only toplevel causes about 20 minutes of waiting to page load.

Did some profiling with a few more toplevels given:
-Page load is too slow because of CuiAboutConfigTabPage::FillItems.[2]
-Figured out ListBox is the main cause of the issue.
-Thorsten sent a patch about this issue to me. It was putting toggles for setting update mode.[3]
-I put it outside of the method on local. It improved performance. Reduced the wait time from ~20mins to ~15sec with "/" as an only toplevel.

So-
Traversing the options doesn't takes too much actually. Main problem is listbox. You can make try it with clicking on header bar for changing sort order. It is also causes same waiting time on page load.

What should I do next:
1-Put a checkbox with a warning. Like fontsubs page.
2-Don't list all returned options directly.
3-Something else?



--
Efe Gürkan YALAMAN
http://about.me/efegurkan

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice
Thorsten Behrens Thorsten Behrens
Reply | Threaded
Open this post in threaded view
|

Re: Performance Issue on Loading Expert Config (a.k.a About Config Utility)

Efe Gürkan YALAMAN wrote:
> Did some profiling with a few more toplevels given:
> -Page load is too slow because of CuiAboutConfigTabPage::FillItems.[2]
> -Figured out ListBox is the main cause of the issue.
> -Thorsten sent a patch about this issue to me. It was putting toggles for
> setting update mode.[3]
> -I put it outside of the method on local. It improved performance. Reduced
> the wait time from ~20mins to ~15sec with "/" as an only toplevel.
>
Hi Efe,

hmm, so I think most of the work in FillItems seems redundant, I
wonder if there is another listbox subclass that is better suited for
this kind of usage (Caolan, in Cc, might know).

Failing that, let's look into dynamically updating the content (either
stick 100 items into the listbox, then reschedule, or make use of this
SvListView concept - FWICT, that should allow you to show items from
your own internal container on demand).

HTH,

-- Thorsten

_______________________________________________
LibreOffice mailing list
[hidden email]
http://lists.freedesktop.org/mailman/listinfo/libreoffice

signature.asc (853 bytes) Download Attachment