Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 17 Jun 2012 21:04:26 +0200
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: [patch] optional new raw sha1 implemetation

On 2012-06-17 20:14, Solar Designer wrote:
> On Sun, Jun 17, 2012 at 06:54:44PM +0200, magnum wrote:
>> On 2012-06-17 17:51, Solar Designer wrote:
>>> On Sun, Jun 17, 2012 at 05:38:01PM +0200, magnum wrote:
>>>> I built with the -native target so I should have got the same speed as
>>>> you for Simon's format. But 22600K is the best I get from the
>>>> fluctuations. Any idea why?
>>>
>>> No.
>>>
>>>> Is an -xop build different in some way?
>>>
>>> It should be the same, but you could want to check the binary.
>>
>> I checked the code and the behavior of gcc and from what I can see there
>> should be absolutely no difference with the #ifdefs so this must be
>> something with the gcc optimizer. But we do get a different
>> taviso_fmt.o. Maybe I'll dissect them some rainy day.
>
> Oh, I totally forgot that -march=native enables not only the instruction
> set, but also tuning for the specific CPU.  Of course, the resulting
> code should be different.  Apparently, gcc's tuning for Bulldozer
> actually hurts in this case.

I just came to the same conclusion after realising what bdver1 is 
(Bulldozer version 1). So there's nothing really wrong with the target 
(or ifdefs), it's just not always the best one - just like -O3 often 
hurts. Good to know.

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.