Hi all,
Following Mario's original idea, I'm currently working on a script for
keeping track of the time spent on particular actions of the
framework, in particular situations. The script will be added in the
tests/, and the results will be publicly announced for each new
version. As Mario wrote:
> It would be interesting to keep an eye on these values, for a particular
> setup, thus when changes to the system are made, unexpected performance
> side effects may still be observed.
(for the curious, I'm using python2.3's new module timeit)
I have already added these:
- addObjectToBothSidesOfRelationshipWithKey (toMany)
- addObjectToBothSidesOfRelationshipWithKey (toOne)
- fetching Persons (5000 simple objects)
- fetching a raw row
- fetching 5000 simple raw rows
- fetching 5000 raw rows when all objects are modified
Given what was already tried and reported here, I'll also add:
- refetching Persons (5000 simple objects) after they all have been
loaded,
- fetching 5000 raw rows when all objects are already fetched
- building qualifiers from strings (qualifierWithQualifierFormat)
- clearing the toMany faults on 5000 objects,
- batch-fetching toMany faults for 5000 objects (when this is added
in the core)
I will also add the same tests for fetches, with more complex objects
(say, with 10 attributes+PK+FK)
Do you have in my mind additional situations you'd like to be tracked?
-- S=E9bastien.
|