On 16/06/15 22:12, Andy Polyakov wrote:
>>>> With some experimentation, it turns out that if I *stop* using the
>>>> crypto/bn/asm/bn/armv4-mont.pl generated asm "optimised" version, the time 
>>>> for
>>>> a simplish test to establish and close a simple SSL connection went from 28
>>>> seconds to 18. (It's quite a slow target at any time).
>>>>
>>>> In other words, this "optimised" version has slowed things down 
>>>> dramatically.
>>>> Has anyone queried the value of the asm of armv4-mont.pl any time in the 
>>>> last
>>>> few years?
[snip]

Hi Andy,

I found the cause - although OPENSSL_BN_ASM_MONT was defined, I hadn't noticed
that a colleague had put a #define OPENSSL_NO_ASM somewhere else (this isn't
linux but a port to our own OS). It turns out that (surprisingly) this
combination changes behaviour rather than barfing - it's even explicitly
catered for in bn_asm.c.

Regardless, the effect is that a different bn_mul_mont implementation gets
used, and the armv4-mont.pl implementation gets ignored entirely.

With that fixed, I now have greatly improved performance as expected. An
unfortunate waste of time for us both, but thanks for the assistance.

Jifl
-- 
------["Si fractum non sit, noli id reficere"]------       Opinions==mine
_______________________________________________
openssl-dev mailing list
To unsubscribe: https://mta.openssl.org/mailman/listinfo/openssl-dev

Reply via email to