Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150713174729.GA12492@openwall.com>
Date: Mon, 13 Jul 2015 20:47:29 +0300
From: Solar Designer <solar@...nwall.com>
To: john-dev@...ts.openwall.com
Subject: Re: Agnieszka's weekly report #10

On Mon, Jul 13, 2015 at 07:19:44PM +0200, Agnieszka Bielec wrote:
> I switched pomelo to use *_region function but I modified this
> function a little, I hope you don't mind?

It's not that I mind (if you correctly document what you changed,
avoiding misattribution), but rather I am surprised, and you need to
explain what you changed and why.  I expected that no changes would be
needed, unless we want e.g. to rename things to be yescrypt-neutral.

> but in Lyra2 I am using also many very small chunks dynamically
> allocated like 10-60 bytes. it depends of number of threads and I'm
> not sure if *_region here makes sense

Maybe not, but this brings up other issues.  You need to ensure you
avoid having these small allocations compete for the same cache lines
(which may "randomly" happen with separate allocations), yet you also
need to ensure you avoid false sharing.  This is tricky, especially as
you're unlikely to see these effects on any one system, yet they may
show up elsewhere.  You might want to revisit this as a separate task.

> > I've just recalled that there was a BSTY coin miner CUDA implementation
> > as well, and it's likely faster (but more specialized) than the Lyra2
> > authors' one.  It uses some inline PTX assembly, but it's specialized to
> > BSTY's older revision of yescrypt and with some parameters hard-coded.
> > Maybe you'd be able to update it to current yescrypt and generalize it
> > for arbitrary parameters.
> 
> I've implemented from yescrypt-opt.c, yescrypt from BSTY miner looked
> like something else for me

This is confusing, probably because you're confused.  The paragraph
about BSTY that you quoted here has nothing to do with yescrypt on CPU,
nor with the memory allocation functions.

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.