Re: ideas on improving the performance of gtk_tree_view



El lun, 26-03-2007 a las 00:18 +0300, markku vire iki fi escribi�> I tried this idea and changed the GtkTreeDataList to be an array instead of
> linked list (see the attached patch, made against svn head). The original
> testcase (5000x50 model) started up faster (but was still slow), but I didn't do
> any actual measurements yet (let's see tomorrow ;)
> 
> I made the following changes:
>  * Added dimension/index parameter to many GtkTreeDataList calls (I understood 
>    that this API was OK to be changed). The GtkTreeDataList is now an array of
>    n elements instead of single list node.
>  * GtkListStore and GtkTreeStore needed similar patches, including:
>    Simpler get_value/set_value implementation, because we know that the
>    datalist will contain n elements and they can be indexed easily.
>  * Drag'n'drop code now uses simpler _gtk_tree_data_list_copy (I renamed 
>    _gtk_tree_data_list_node_copy, since we now have more than one element).

Holy crap, you kick ass!

Nicolas, can you get another profile using Markku's patch?

I was looking at the GtkTreeView code and it looks like there are other
places that could get the array treatment.  One place in particular was
the sorting machinery... GtkListStore also uses a GList of information
for the sort headers, and walks the list in g_list_store_compare_func
(!).

  Federico




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]