Hi Denys,

the assertion is correct: this function is called by a worker that has
successfully stolen new work for search. As there is at least one other busy
worker (the worker from which the work got stolen) it is really meant to be
> 0.

Alas, it looks as if there is a bug. Which engine? Which problem? How many
cores? Aaargh...

Cheers
Christian

--
Christian Schulte, www.ict.kth.se/~cschulte/


-----Original Message-----
From: [email protected] [mailto:[email protected]] On Behalf
Of Denys Duchier
Sent: Thursday, February 04, 2010 8:22 PM
To: [email protected]
Subject: [gecode-users] buggy parallel search

In gecode/search/parallel/engine.hh:

  Engine::busy(void) {
    m_search.acquire();
    assert(n_busy > 0);
    n_busy++;
    m_search.release();
  }

is the assert correct or should it be >= 0?

I am hitting this assertion with gecode compiled with --enable-debug.

Cheers,

--Denys

_______________________________________________
Gecode users mailing list
[email protected]
https://www.gecode.org/mailman/listinfo/gecode-users


_______________________________________________
Gecode users mailing list
[email protected]
https://www.gecode.org/mailman/listinfo/gecode-users

Reply via email to