Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 5 Jan 2012 22:13:49 +0400
From: Solar Designer <>
Subject: Re: gcc versions

magnum -

On Thu, Jan 05, 2012 at 10:01:59PM +0400, Solar Designer wrote:
> gcc version: gcc (gcc version 3.4.6)
> Best paras:
>   raw-MD4: 1  (13852K c/s)
> crypt-MD5: 3  (9808 c/s)
>  raw-SHA1: 1  (6500K c/s)

BTW, right now your tree picks PARA 1 for this version of gcc, so we get:

Benchmarking: FreeBSD MD5 [SSE2i 4x]... DONE
Raw:    4400 c/s real, 4400 c/s virtual

which is twice slower than 1.7.9's original code (with the same gcc).

...and I was wrong about 10000+ c/s - not with this old gcc.  Here's
what I actually get with 3.4.6:

Benchmarking: FreeBSD MD5 [32/64 X2]... DONE
Raw:    8998 c/s real, 8998 c/s virtual

So PARA 3 is in fact a bit faster for this old gcc here, but I am not
comfortable relying on that - it might be a lot slower e.g. on AMD CPUs.
The code is clearly so far from optimal that its performance is likely
unstable across different CPUs.  X2 is a safer bet for gcc < 4.0.

As to MD4 and SHA-1, here's what -jumbo-5 picks with gcc 3.4.6:

Benchmarking: Raw MD4 [SSE2i 12x]... DONE
Raw:    13100K c/s real, 13100K c/s virtual

Benchmarking: Raw SHA-1 [SSE2i 4x]... DONE
Raw:    4930K c/s real, 4930K c/s virtual

I don't know why the 6500K vs. 4930K discrepancy.

I think we need to benchmark a build with Bartavelle's assembly code,
then decide.


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.