Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [day] [month] [year] [list]
Date: Wed, 17 Apr 2013 14:52:41 -0500
From: "jfoug" <jfoug@....net>
To: <john-dev@...ts.openwall.com>
Subject: x86-any.h

$ OMP_NUM_THREADS=4 ../run/john -test=5 -form=md5
Benchmarking: FreeBSD MD5 [32/32 X2]... (4xOMP) DONE
Raw:    37647 c/s real, 9922 c/s virtual

$ OMP_NUM_THREADS=4 ../run/john -test=5 -form=md5
Benchmarking: FreeBSD MD5 [32/32]... (4xOMP) DONE
Raw:    29357 c/s real, 7807 c/s virtual

I see an improvement in speed with OMP using MD5_X2==1 on 32 bit non sse
builds.   NOTE, this is a Intel Core i7 system I am testing on, and not a
simple Pentium (pre mmx).  But it does appear that MD5_X2==1 is (or may be)
significantly faster.

From: magnum Sent: Wednesday, April 17, 2013 14:38
>Does it affect any other format, like crypt-md5? Maybe that too benefits w/
OMP.
>
>magnum
>
>On 17 Apr, 2013, at 21:32 , "jfoug" <jfoug@....net> wrote:
>> I am looking at making this change to this header (copies to arch.h)
>>  
>>  #ifdef _OPENMP
>>  #define MD5_ASM                        0
>> + #define MD5_X2                         1
>>  #else
>>  #define MD5_ASM                        1
>> + #define MD5_X2                         0
>>  #endif
>> - #define MD5_X2                         0
>>  #define MD5_IMM                        1
>>  
>> I am getting a speedup in dyna for OMP builds, if calling the 2x
functions.
>>  
>> Here is some early data, but the change 'is' significant.  I will do more
testing, along with test speeds of $1$ for both MD5_X2=1 and MD5_X2=0
>>  
>>  
>> $ OMP_NUM_THREADS=4 ../run/john -test=5 -form=dynamic
>> Benchmarking: dynamic_0: md5($p) (raw-md5) [32/32 6144x1 (MD5_body)]...
(4xOMP) DONE
>> Raw:    14480K c/s real, 5849K c/s virtual
>>  
>> Benchmarking: dynamic_1: md5($p.$s) (joomla) [32/32 6144x1 (MD5_body)]...
(4xOMP) DONE
>> Many salts:     9613K c/s real, 2477K c/s virtual
>> Only one salt:  7319K c/s real, 2377K c/s virtual
>>  
>>  
>> $ OMP_NUM_THREADS=4 ../run/john -test=5 -form=dynamic
>> Benchmarking: dynamic_0: md5($p) (raw-md5) [32/32 3072x2 (MD5_body)]...
(4xOMP) DONE
>> Raw:    16048K c/s real, 7090K c/s virtual
>>  
>> Benchmarking: dynamic_1: md5($p.$s) (joomla) [32/32 3072x2 (MD5_body)]...
(4xOMP) DONE
>> Many salts:     13659K c/s real, 3701K c/s virtual
>> Only one salt:  9426K c/s real, 3072K c/s virtual

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.