directory-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Emmanuel Lécharny <elecha...@gmail.com>
Subject Server performance improvements
Date Sat, 03 Aug 2013 00:35:33 GMT
Hi,

I applied one of the modifications I suggested in one of my previous
mail : we pre-compte the set of candidates in the count() method, attach
the set to the filter node (thanks god, we have a way to attach anything
to the Node structure !) and use this set instead of constructing it
again in the computeEquality() method. The gain is clear :

CoreSession
===========

Mavibot 10K entries
-------------------
Add : 80s, 125/s
Search : 5091/s ---> 15000/s

Jdbm 10k entries
----------------
Add : 167s, 59/s
Search : 654/s --- 10009/s


NetworkeSession
===============

Mavibot 10K entries
-------------------
Add : 85s, 117/s
Search : 1802/s ---> 3467/s

Jdbm 10k entries
----------------
Add : 176s, 56/s
Search : 506/s --- 3009/s

That more than doubled the server's performance...

We have many more ways to improve the server... But still, this was a
second easy improvement after the previous 45% gain !

Side note 1 : the old JDBM performances were horribly low. It seems
really strange that we are now able to get 6 times better result. I will
re-run the tests without my last change to see what I get.

Side note 2 : for the network tests, the cost of the encoding/decoding
is high, and is paid twice (on the server and on the client). This is
why we have much lower performances compared to the CoreSession tests.

-- 
Regards,
Cordialement,
Emmanuel Lécharny
www.iktek.com 


Mime
View raw message