Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <913f171ad6366dcb98fb4698d0bcd6f7@smtp.hushmail.com>
Date: Fri, 19 Apr 2013 02:15:49 +0200
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: Got all dyna formats (except $1$ and $apr1$) working with OMP

On 18 Apr, 2013, at 1:51 , jfoug <jfoug@....net> wrote:
> I have posted a 6000+ line patch to magnum.  I was able to get gains better than what I hoped for dyna.  I have almost all issues worked out.

Latest code in relbench (dynamic only). This is non-OMP build vs. 4xOMP, real i7 cores:

Number of benchmarks:		94
Minimum:			1.19668 real, 0.39181 virtual
Maximum:			3.53449 real, 0.95216 virtual
Median:				2.34484 real, 0.78869 virtual
Median absolute deviation:	0.68166 real, 0.10068 virtual
Geometric mean:			2.23513 real, 0.76111 virtual
Geometric standard deviation:	1.38299 real, 1.25477 virtual

The worst are poorly scaling (as expected, raw formats), but they do not get slower. The best are good.


Comparing a non-OMP build against just 2xOMP, we do have some formats that show regression. The best is even better than 2x though:

Number of benchmarks:		94
Minimum:			0.77119 real, 0.40928 virtual
Maximum:			2.01253 real, 0.99648 virtual
Median:				1.51728 real, 0.86476 virtual
Median absolute deviation:	0.30893 real, 0.09253 virtual
Geometric mean:			1.47369 real, 0.81562 virtual
Geometric standard deviation:	1.28922 real, 1.25584 virtual


non-OMP build vs. OMP build running one 1 core:

Number of benchmarks:		94
Minimum:			0.44944 real, 0.44944 virtual
Maximum:			1.04394 real, 1.02326 virtual
Median:				0.93713 real, 0.93713 virtual
Median absolute deviation:	0.06278 real, 0.06210 virtual
Geometric mean:			0.86919 real, 0.86863 virtual
Geometric standard deviation:	1.23741 real, 1.23690 virtual

This is bad and maybe we can make it better. Ideally, an OMP build running one core should be in par with a non-OMP build.


Just for completeness, 4xOMP build vs. Hype-Threading 8xOMP (not a typo):

Number of benchmarks:		94
Minimum:			0.61701 real, 0.55040 virtual
Maximum:			1.39994 real, 0.80519 virtual
Median:				0.89115 real, 0.63104 virtual
Median absolute deviation:	0.11529 real, 0.03402 virtual
Geometric mean:			0.89424 real, 0.64820 virtual
Geometric standard deviation:	1.20113 real, 1.11029 virtual

I did not care to try to tweak spincounts and sh!te, I don't care much for HT anyway. The ones that are fairly worth it are obviously slow formats like sha512 and GOST.


I really didn't think dynamic could be this good with OMP and we're not likely done yet!

Just a reality check: Why do we even have crypt-md5 and Apache-MD5 in dynamic? Is it worth maintaining? Is it faster on ANY build?

magnum

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.