Menu

wikiToDo-Speed

Adam Tauno Williams

[zOGI] [Development]

ToDo Operation Performance

With the introduction of ORM hinting it is better, could still be improved

2013-08-26

A [zogi.searchForObjects] call to retrieve the task list from a server:

Duration of 0 level fetch is 3.36800003052s
Duration of 1 level fetch is 6.24351406097s
Duration of 2 level fetch is 4.96383500099s
Duration of 4 level fetch is 2.96208095551s
Duration of 8 level fetch is 3.14445519447s
Duration of 16 level fetch is 4.19151902199s
Duration of 32 level fetch is 4.57138895988s
Duration of 64 level fetch is 3.08666706085s
Duration of 128 level fetch is 31.2307970524s
Duration of 256 level fetch is 3.13241386414s
Duration of 512 level fetch is 3.99587011337s
Duration of 1024 level fetch is 3.21163702011s
Duration of 2048 level fetch is 4.39540886879s
Duration of 4096 level fetch is 3.85724878311s
Duration of 16384 level fetch is 3.95492887497s
Duration of 32768 level fetch is 3.79650020599s
Duration of 65535 level fetch is 40.9267089367s

How long does a default PROPFIND take:

time curl -o putput -u adam:***** -X PROPFIND http://coils.example.com/dav/Tasks/ToDo/
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                             Dload  Upload   Total   Spent    Left  Speed
100  382k  100  382k    0     0   156k      0  0:00:02  0:00:02 --:--:--  156k

real 0m2.459s
user 0m0.009s
sys 0m0.013s

The first PROPFIND can take longer, as the ICS representation of the task (a [VTODO]) may not exist, it has to be created. The default PROPFIND needs to know the length of the representation. But once a cached representation has been created it is pretty fast.


Related

Wiki: Development
Wiki: zOGI

Want the latest updates on software, tech news, and AI?
Get latest updates about software, tech news, and AI from SourceForge directly in your inbox once a month.