Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Mon, 3 Aug 2015 17:34:34 +0800
From: Lei Zhang <zhanglei.april@...il.com>
To: john-dev@...ts.openwall.com
Subject: Re: JtR on ARM (NEON)


> On Aug 3, 2015, at 10:58 AM, Solar Designer <solar@...nwall.com> wrote:
> 
> On Mon, Aug 03, 2015 at 04:39:38AM +0200, magnum wrote:
>> On 2015-07-31 10:35, Solar Designer wrote:
>>>> From the figures above, MD4 and MD5 get 2x speedup; SHA1 and SHA256
>>>> have no speedup; SHA512 gets a lot slower.
>>> 
>>> Yes.  That's weird(...) Maybe unaligned accesses.
>> 
>> How slow is NEON with unaligned scalar 32-bit? The raw formats' 
>> set_key() read the key (which may be unaligned) using 32-bit loads and 
>> places directly in the SIMD buffer. It might be a coincidence that 
>> MD4/MD5 happens to get aligned test vector keys and the others doesn't. 
>> Other than that I can't see what would be unaligned.
> 
> I think we must not have any unaligned accesses on ARM at all.  If we
> currently do have any, let's fix that as a bug.
> 
> While not completely unsupported, they are tricky:
> 
> "How does the ARM Compiler support unaligned accesses?"
> http://infocenter.arm.com/help/index.jsp?topic=/com.arm.doc.faqs/ka15414.html
> 
> http://www.heyrick.co.uk/armwiki/Unaligned_data_access

I'm not very clear. Are you talking about unaligned vector load/stores or unaligned scalar load/stores? 

The links you posted discussed scalar load/stores. As we are not writing ARM assemblies in JtR, the compiler should be able to take care of scalar variables' alignment for us.


Lei

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ