Openwall GNU/*/Linux - a small security-enhanced Linux distro for servers
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Sat, 23 May 2015 02:22:28 +0200
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: autotune_run problem

On 2015-05-23 00:44, Agnieszka Bielec wrote:
> 2015-05-23 0:18 GMT+02:00 magnum <john.magnum@...hmail.com>:
>> So I'm sorry but you simply have no option other than rewriting your kernel
>> to a split, or loop, kernel. It might be hard to do this for Pomelo but not
>> impossible - and there is no alternative.
>
> ok, thanks

Actually there might obviously be an alternative though I'm not sure 
there's much hope in the Pomelo case: In case your current kernel has 
some bottleneck than can be removed by rewriting code or handling memory 
accesses differently, it might "take off" and get significanty faster. 
When that happens, you may of course increase GWS and that will likely 
gain even more speed (often 2x GWS means 2x speed within a range). This 
positive spiral can lead to huge boosts.

My first RAR kernel (well it was my first OpenCL code at all) was 
awfully slow. This is basically a very simple format, just 50,000 
iterations of SHA-1 (250,000 "updates", not 250,000 blocks) so I knew 
the theorietical ideal speed should be like 15-20K c/s (about 2G SHA1 
blocks per second with the devices used at the time). Due to some very 
GPU-unfriendly byte shuffling within the loop, it just didn't take off 
and I only got a couple thousand c/s, if that. Because of too long 
durations I had to use a low GWS and because of low GWS I got even worse 
speed. The negative spiral. This was very similar to where you are now.

Once I made it a "split kernel" (this alone allowing higher GWS) and 
also finally realized how to optimize the byte-addressed stuff out of 
the hottest loop, it "took off" like mad and I got that positive spiral: 
It got faster, so I could bump GWS. That made faster yet, so I could 
bump GWS even more. And so on. This is where you want to be :-)

magnum

Powered by blists - more mailing lists

Your e-mail address:

Powered by Openwall GNU/*/Linux - Powered by OpenVZ