[Vobject] Pickle and vObject

Jonathan LaCour jonathan-lists at cleverdevil.org
Mon Jun 9 17:48:22 CDT 2008


Jeffrey Harris wrote:

> I'd love to have this stuff recorded on the mailing list for
> posterity, but I won't hassle you about subscribing any more. :)

Oops!  I just keep forgetting to do so, but I have joined now,
and this message is CC'd to the list, so at least *some* of the
conversation will be recorded :)

>> I was surprised too, but here is some sample data from one
>> particular calendar feed I am dealing with. All times are
>> average times over 100 iterations:
>>
>> * Full Parse (readComponents with transform=True):
>> - total = 0.877 seconds
>> * Partial Parse (readComponents with transform=False):
>> - total = 0.719 seconds
>> * Unpickle (loads(component).transformChildrenToNative()):
>> - total = 0.275 seconds
>> - loads = 0.127 seconds
>> - transformChildrenToNative = 0.148 seconds
>
> Wow.  How big is the calendar in question?  Chandler's import
> time is dominated by repository stuff, so I haven't had a
> lot of incentive to shave half a second off parse time, but
> that's an embarrassingly long time unless we're talking about a
> multi-megabyte calendar.

Its a 104K ICS file from Google Calendar.

> I suspect there may be Python-only optimizations we could do, but
> I don't really have time to profile it right now.  If you do, your
> observations would be much appreciated.

I'll see what I can do later on in the week regarding profiling.

>> Thats fine for now. What's the timeframe for seeing this in a
>> release?
>
> I like to spread out releases a bit, but there's no particular
> reason not to do one now.  I thought I'd let various bugs and
> performance issues like this settle out before doing another one,
> maybe a month?

A month would fit my timeline nicely.

--
Jonathan LaCour
http://cleverdevil.org


More information about the VObject mailing list