Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sat, 14 Jul 2012 01:57:11 +0200
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: Rotate and bitselect investigation

On 2012-07-10 04:35, Solar Designer wrote:
> On Tue, Jul 10, 2012 at 07:19:38AM +0530, Sayantan Datta wrote:
>> On Tue, Jul 10, 2012 at 7:00 AM, Solar Designer <solar@...nwall.com> wrote:
>>> This won't detect CPUs, though - where we also don't want to use
>>> bitselect() most of the time (the instruction is only available with XOP
>>> and is probably not used by current OpenCL SDKs since I think only
>>> Intel's does vectorization) - but this code is mostly just for AMD and
>>> NVIDIA GPUs now.  We have faster MSCash2 code on CPU anyway.
> 
>> So we should use manual bitselect by default.
> 
> But we don't have a trick similar to cl_nv_pragma_unroll that would let
> us detect AMD GPUs.  So I am fine with us using bitselect() by default
> and only disabling it on NVIDIA, unless/until we learn of a trick to
> detect AMD GPU in OpenCL (or introduce such way by passing the info from
> our C code).

There is some stuff in common-opencl.c that can be used. We add
-DDEVICE_IS_CPU when building for CPU. And we have -DDEVICE_INFO that
can be parsed for vendor ID. I think Claudio can shed some light on the
latter, I'm not sure how to use it.

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.