Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150712145519.GB2738@openwall.com>
Date: Sun, 12 Jul 2015 17:55:19 +0300
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: Re: PHC: Lyra2 on GPU

Agnieszka,

On Mon, Jul 06, 2015 at 04:56:11PM +0200, Agnieszka Bielec wrote:
> 2015-07-05 9:53 GMT+02:00 Solar Designer <solar@...nwall.com>:
> > Please also try going in the opposite direction: keep more stuff in
> > global memory, reduce use of local memory per instance to the point
> > where you can use a lot higher GWS - like 20480 (10x higher than what's
> > auto-tuned now) or even higher.  This may result in a speedup through
> > hiding of global memory access latencies due to the greater concurrency.
> 
> it's my first version, I'm including results for costs 16 16, 1 20 and
> 1 28.

Can you also try:

t = 1
m = 80
c = 256
p = 1

This should be almost 2 MB.

> benchmarking doesn't work good in my old version and I'm setting
> GWS manually, note that I'm getting CL_INVALID_BUFFER_SIZE for
> GWS=8192 and cost 16 16. it's 3GB.

You're right, the card's total memory size should become the limiting
factor for this approach.

> I said that I'm using local memory but I wanted to say __private ,
> sorry if caused confusion

OK.  I guess you're putting the current row (24 KB) in there?  And when
you were using global memory before, you had the current row fetched
from and sent to global memory each time?

> [a@...er run]$ GWS=1024 ./john --test --format=lyra2-old-pencl
> --cost=16:16,16:16
> Benchmarking: Lyra2-old-pencl [Lyra2 OpenCL (inefficient, development
> use only)]... Device 0: Tahiti [AMD Radeon HD 7900 Series]
> memory per hash : 384.00 kB
> Local worksize (LWS) 64, global worksize (GWS) 1024
> DONE
> Speed for cost 1 (t) of 16, cost 2 (m) of 16, cost 3 (c) of 256, cost 4 (p) of 2
> Raw:    769 c/s real, 34133 c/s virtual
> 
> GWS=8192 ./john --test --format=lyra2-old-pencl --cost=16:16,16:16
> Benchmarking: Lyra2-old-pencl [Lyra2 OpenCL (inefficient, development
> use only)]... Device 0: Tahiti [AMD Radeon HD 7900 Series]
> memory per hash : 384.00 kB
> OpenCL error (CL_INVALID_BUFFER_SIZE) in file
> (opencl_lyra2_old_fmt_plug.c) at line (170) - (Error creating device
> buffer)

I guess you also tried slightly smaller values, like 7680?  So that
you'd fit in 3 GB.

Alexander

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.