Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date: Wed, 19 Dec 2012 11:35:39 +0100
From: magnum <john.magnum@...hmail.com>
To: john-dev@...ts.openwall.com
Subject: Re: Response during OpenCL sessions

On 19 Dec, 2012, at 2:10 , magnum <john.magnum@...hmail.com> wrote:
> On 19 Dec, 2012, at 1:53 , magnum <john.magnum@...hmail.com> wrote:
>> It seems it actually does not work on Bull, regardless of GPU used. The status is still delayed until crypt_all() has finished, as if the clFinish() was optimised away.
> 
> It doesn't work under Linux on this machine either. Now I'm really confused. Why is this? Maybe clFinish() actually *is* optimised away? Would that not violate the spec?



Some sleep did the trick. I had this #ifdef in my earliest experiments but forgot about it this time. This code works:

  void crypt_all(int count)
  {
  	enqueue(Transfer);
  	enqueue(RarInitKernel);
  	for (i=0; i<HASH_LOOPS; i++)
  	{
  		enqueue(RarLoopKernel);
+ #if !OS_TIMER
+ 		sig_timer_emu_tick();
+ #endif
+  		clFinish();
+  		if (event_pending)
+  			process_event();
  	}
  	enqueue(RarFinalKernel);


I will apply this to various formats and check for regressions.

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.