Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 08 Mar 2012 02:58:17 +0100
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: OpenCL KPC and LWS

On 03/07/2012 11:54 AM, Samuele Giovanni Tonon wrote:
> On 03/07/12 11:07, magnum wrote:
>> On 03/07/2012 10:03 AM, Samuele Giovanni Tonon wrote:
>>> On 03/07/12 00:31, magnum wrote:
>>>> In the end we could use entries in john.conf:
>>>> [OpenCL options]
>>>> platform = 1
>>>> device = 0
>>>> ssha_LWS = 512
>>>> ssha_KPC = 8192
>>>> phpass_LWS = ...
>>>>
>> I've done conf stuff before. I can produce an experimental patch to
>> demonstrate it for one format.
> i'm not against it, actually i'd love to see it !

Committed now, for ssha format only (and platform/device, they work for
any format). I bought Frank's suggestion, so the section is called
[Options:OpenCL].

Command line will override conf for platform/device, and environment
will override conf for LWS/KPC.

Pretty trivial, right?

I'm not sure how to treat CUDA. It currently shares the -device command
line option, but it does not share this device config. Maybe they should
be totally separate options (so -device is for OpenCL and -gpu is for
CUDA). But I'd like to avoid that. Maybe they can share the command line
option but use different sections in john.conf. I think that is best.

Open question btw: Should we keep the separate CUDA build or should we
just have an OpenCL-only build and a CUDA build that implicitly enables
OpenCL? I know of no reason to build CUDA but not OpenCL, and dropping
the non-OpenCL CUDA target would make things a little easier. We
currently have blocks like this:

#if defined(CL_VERSION_1_0) && defined(HAVE_CUDA)
#define JOHN_USAGE_GPU \
"--platform=N (or =LIST)   set OpenCL platform, default 0\n" \
"--device=N                set OpenCL or CUDA device, default 0\n"
#elif defined(CL_VERSION_1_0)
#define JOHN_USAGE_GPU \
"--platform=N (or =LIST)   set OpenCL platform, default 0\n" \
"--device=N                set OpenCL device, default 0\n"
#elif defined (HAVE_CUDA)
#define JOHN_USAGE_GPU \
"--device=N                set CUDA device, default 0\n"
#endif


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.