Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 19 Oct 2013 00:42:35 +0200
From: magnum <john.magnum@...hmail.com>
To: "john-dev@...ts.openwall.com" <john-dev@...ts.openwall.com>
Subject: Re: OpenCL vectorizing how-to.

On 2013-10-18 16:40, magnum wrote:
> The code for achieving all this is trivial, the host code supplies a
> V_WIDTH macro and the kernels build accordingly using #ifdefs and
> macros.

OK, for my OOB fan club and future googlers, here's an example of just 
how trivial it is:
https://github.com/magnumripper/JohnTheRipper/commit/e980b7e1

Before that commit, it was a simple two-part scalar kernel. After, the 
first part is still scalar (because it has to - input lengths vary) but 
it writes data in vector format for the main kernel - which is now 
vectorized with extremely few changes, and supports any width - to use.

I'm looking forward to see how eg. wpapsk-opencl performs now on the 
Xeon Phi. Unless its driver rather auto-vectorizes of course :-/

magnum

Powered by blists - more mailing lists

Your e-mail address:

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