Parallel depth-first search worker More...
#include <dfs.hh>
Public Member Functions | |
Worker (Space *s, size_t sz, DFS &e) | |
Initialize for space s (of size sz) with engine e. More... | |
DFS & | engine (void) const |
Provide access to engine. More... | |
virtual void | run (void) |
Start execution of worker. More... | |
void | find (void) |
Try to find some work. More... | |
Space * | reset (Space *s) |
Reset engine to restart at space s and return new root space. More... | |
![]() | |
Worker (Space *s, size_t sz, Engine &e) | |
Initialize for space s (of size sz) with engine e. More... | |
Space * | steal (unsigned long int &d) |
Hand over some work (NULL if no work available) More... | |
Statistics | statistics (void) |
Return statistics. More... | |
Engine & | engine (void) const |
Provide access to engine. More... | |
virtual | ~Worker (void) |
Destructor. More... | |
![]() | |
Worker (size_t sz) | |
Initialize with space size sz. More... | |
void | start (void) |
Reset stop information. More... | |
bool | stop (const Options &o, size_t sz) |
Check whether engine must be stopped (with additional stackspace sz) More... | |
bool | stopped (void) const |
Check whether engine has been stopped. More... | |
void | push (const Space *s, const Choice *c) |
New space s and choice c get pushed on stack. More... | |
void | constrained (const Space *s1, const Space *s2) |
Space s1 is replaced by space s2 due to constraining. More... | |
void | adapt (const Space *s) |
New space s is added for adaptive recomputation. More... | |
void | pop (const Space *s, const Choice *c) |
Space s and choice c get popped from stack. More... | |
void | lao (const Space *s) |
Space s gets used for LAO (removed from stack) More... | |
void | current (const Space *s) |
Space s becomes current space (s = NULL: current space deleted) More... | |
void | reset (const Space *s, unsigned long int d=0) |
Reset statistics for space s with root depth d. More... | |
void | reset (void) |
Reset statistics for failed space. More... | |
void | stack_depth (unsigned long int d) |
Record stack depth d. More... | |
unsigned long int | steal_depth (unsigned long int d) const |
Return steal depth. More... | |
![]() | |
Statistics (void) | |
Initialize. More... | |
void | reset (void) |
Reset. More... | |
Statistics | operator+ (const Statistics &s) |
Return sum with s. More... | |
Statistics & | operator+= (const Statistics &s) |
Increment by statistics s. More... | |
![]() | |
StatusStatistics (void) | |
Initialize. More... | |
void | reset (void) |
Reset information. More... | |
StatusStatistics | operator+ (const StatusStatistics &s) |
Return sum with s. More... | |
StatusStatistics & | operator+= (const StatusStatistics &s) |
Increment by statistics s. More... | |
![]() | |
virtual | ~Runnable (void) |
Destructor. More... | |
Additional Inherited Members | |
![]() | |
static void * | operator new (size_t s) |
Allocate memory from heap. More... | |
static void | operator delete (void *p) |
Free memory allocated from heap. More... | |
![]() | |
unsigned long int | fail |
Number of failed nodes in search tree. More... | |
unsigned long int | node |
Number of nodes expanded. More... | |
unsigned long int | depth |
Maximum depth of search stack. More... | |
size_t | memory |
Peak memory allocated. More... | |
![]() | |
Engine & | _engine |
Reference to engine. More... | |
Support::Mutex | m |
Mutex for access to worker. More... | |
Path | path |
Current path ins search tree. More... | |
Space * | cur |
Current space being explored. More... | |
unsigned int | d |
Distance until next clone. More... | |
bool | idle |
Whether worker is currently idle. More... | |
|
inline |
|
virtual |
Start execution of worker.
Implements Gecode::Support::Runnable.
|
inline |