Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Thu, 01 Nov 2012 08:40:45 +0100
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: mscash2-opencl problems with GT650M

On 11/01/12 08:12, magnum wrote:
> Anyway, trying to address the root problem (provided it is indeed
> resources) I tried lowering MAX_KEYS_PER_CRYPT but it does not help. I
> also tried using NULL for local work size to no avail. What could be the
> problem? What resources could be low? I have 48K of local memory and 1G
> of global.

I think I nailed it. The root problem is actually just the kernel 
watchdog - the default GWS of 65536*4 takes more than 5 seconds to run 
(even just 32768 does).

If I lower MAX_KEYS_PER_CRYPT to 16384 and decrease the hard-coded 64000 
in line 116 of common_opencl_pbkdf2.c accordingly (to 16000), it works fine:

Using device 0: GeForce GT 650M
Optimal Work Group Size:64
Kernel Execution Speed (Higher is better):0.334006
Benchmarking: M$ Cache Hash 2 (DCC2) PBKDF2-HMAC-SHA-1 [OpenCL]... DONE
Raw:	5371 c/s real, 5389 c/s virtual

A proper fix would be to pick GWS depending on hardware (or perhaps 
depending on duration when probing for LWS). It would also be wise to 
split the kernel to avoid extensive durations. Maybe the best solution 
is doing both.

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.