|
Message-ID: <CA+TsHUCtzA4aOxGZDS9e7qvgwWPkMDQRd3j+b-jpQv1Z8aF6Sg@mail.gmail.com>
Date: Tue, 8 Jan 2013 01:11:23 +0530
From: Sayantan Datta <std2048@...il.com>
To: john-dev@...ts.openwall.com
Subject: Re: des-opencl
On Tue, Jan 8, 2013 at 12:23 AM, Solar Designer <solar@...nwall.com> wrote:
> On Tue, Jan 08, 2013 at 12:07:37AM +0530, Sayantan Datta wrote:
> > If I'm correct we would need more cases e.g 96,144,192.....upto 720 to
> > fully harcode the entire loop.
>
> Not exactly. With one instance of DES fully unrolled, you would no
> longer need the rounds_and_swapped variable and those branches. You
> would simply have one big loop for descrypt's 25 iterations, with one
> fully unrolled instance of DES inside (no branching in it). It'd exceed
> cache size, but maybe that's OK for some GPUs with some settings (will
> need to tune).
>
So you mean to say something like this would do:
for(i=1;i<=25;i++) {
hardcode k=0;
hardcode k=96;
hardcode k=192;
hardcode k=288;
.
.
.
hardcode k=672;
}
Although this ain't anyway equivalent to the current loop structure, but
maybe they are same mathematically. Is this what you mean?
>
> > > I'm not sure how to keep both (or all three?) approaches in the same
> > > source tree best, though. 3 formats? Or a format with compile-time
> > > fallbacks (e.g., use binary patching when the target GPU type is one of
> > > those where we've tested this and it works, and fallback to E[] for
> > > other devices?) Perhaps we'll make a "final" determination on that at
> a
> > > later time, but for now we simply need to have these available.
> >
> > I'll make a compile time fallback for now if you agree.
>
> I agree, but I'm not sure what criteria you'd use for triggering the
> fallback. What do you have in mind? Manual switch?
>
> Alexander
>
Use the binary patch whenever possible and manually switch between the
other two fallback modes.
Content of type "text/html" skipped
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.