26 May 2008 federico   » (Master)

Tue 2008/May/20

  • This year I am mentoring two students for the Summer of Code:

    Andrei Soare is working on measuring memory fragmentation in the GNOME libraries. The idea is to find the main culprits for fragmentation, and see what we need to do to fix them (use more stack allocations? provide substring APIs that can take a buffer and a length, instead of g_strdup()ing temporary crap everywhere? use flat buffers with pointers into them for static structs rather than structs full of pointers to individually-allocated sub-buffers?). Andrei's code is available as a Git repository. So far, he has a modified version of of Stefan Kost's bprof, suitable for use with Stuart Parmenter's memview. Andrei has found a few bugs where we do things like using g_free() on a malloc()ed buffer, or vice-versa. I hope he starts blogging his first fragmentation plots soon.

    Stanislav Slušný is working on profiling the calendar in evolution-data-server, in particular the engine for live queries. The query engine is very simple; it just iterates through all the items in a calendar and returns the items that match the query. We think that most queries are of the form, "give me all the items in $date_range", so the query engine could use a smart data structure like an interval tree to avoid scanning all the items. So far, Stanislav has added a logging mechanism to evolution-data-server so that we can see which queries get performed (by Evolution itself, the panel's clock applet, and various things across the desktop), and how long the queries remain active. This is available in a Git repository. Stanislav showed me a couple of pretty sexy plots of query lifetimes; let's hope he blogs about them soon.

Syndicated 2008-05-20 21:02:00 from Federico Mena-Quintero - Activity Log

Latest blog entries     Older blog entries

New Advogato Features

FOAF updates: Trust rankings are now exported, making the data available to other users and websites. An external FOAF URI has been added, allowing users to link to an additional FOAF file.

Keep up with the latest Advogato features by reading the Advogato status blog.

If you're a C programmer with some spare time, take a look at the mod_virgule project page and help us with one of the tasks on the ToDo list!