Hi,

I patched the OpenSSL.pm file again to improve the performance of the
getCertAttribute() method. 
The bad part is that I had to change the API of this method. This method is
called from X509.pm constructor - I also fixed this to my needs.

Here is the benchmark :

OLD:
14 wallclock secs ( 0.38 usr  0.63 sys +  7.10 cusr  3.92 csys = 12.03 CPU) @ 39.60/s 
(n=40)
13 wallclock secs ( 0.45 usr  0.58 sys +  6.88 cusr  4.03 csys = 11.94 CPU) @ 38.83/s 
(n=40)
13 wallclock secs ( 0.55 usr  0.92 sys +  6.71 cusr  3.75 csys = 11.93 CPU) @ 27.21/s 
(n=40)

here is the patched one:
NEW:
 3 wallclock secs ( 0.27 usr  0.22 sys +  1.69 cusr  0.72 csys =  2.90 CPU) @ 81.63/s 
(n=40)
 3 wallclock secs ( 0.25 usr  0.21 sys +  1.61 cusr  0.84 csys =  2.91 CPU) @ 86.96/s 
(n=40)
 3 wallclock secs ( 0.27 usr  0.18 sys +  1.60 cusr  0.86 csys =  2.91 CPU) @ 88.89/s 
(n=40)


as you can see, the performance is a lot better now (I created 40 OpenCA::X509
Objects in that benchmark)
I think the performance is quite better but, like I said before, the method call
from getCertAttribute has changed. I browse through the code and the only place
where I found a call of that method was in X509.pm (I patched that too).

What do you guys think about changing the method call ? This might lead into
incompatibility with old implementations (even if I did not found a place where
this method is called).

It's your choice.

-- 
ciao, Uwe

Uwe Gansert, Product development
SuSE GmbH, Schanzaeckerstr.10, D-90443 Nuernberg, Germany
e-mail: [EMAIL PROTECTED], Tel: +49-(0)911-74053-0,
Fax: +49-(0)911-74053-476, Web: http://www.suse.de      

PGP signature

Reply via email to