spot  1.2.1a
Public Types | Public Member Functions | Protected Attributes | List of all members
spot::dead_share Class Reference

Wrapper Launch all threads. More...

#include <fasttgbaalgos/ec/concurec/dead_share.hh>

Inheritance diagram for spot::dead_share:
Inheritance graph
Collaboration diagram for spot::dead_share:
Collaboration graph

Public Types

enum  DeadSharePolicy {
  FULL_TARJAN = 0, FULL_DIJKSTRA = 1, MIXED = 2, FULL_TARJAN_EC = 3,
  FULL_DIJKSTRA_EC = 4, MIXED_EC = 5, DECOMP_EC = 6, REACHABILITY_EC = 7,
  DECOMP_EC_SEQ = 8, DECOMP_TACAS13_TARJAN = 9, DECOMP_TACAS13_DIJKSTRA = 10, DECOMP_TACAS13_NDFS = 11,
  DECOMP_TACAS13_UC13 = 12, DECOMP_TACAS13_TUC13 = 13
}
 The walk policy to be used by threads. More...
 

Public Member Functions

 dead_share (instanciator *i, int thread_number=1, DeadSharePolicy policy=FULL_TARJAN, std::string option="")
 Constructor for the multithreaded emptiness check. More...
 
virtual ~dead_share ()
 Release all memory. More...
 
bool check ()
 launch every thread with associated data and wait them to end. More...
 
virtual std::string csv ()
 A CSV containing : More...
 
void dump_threads ()
 Additionnal information threads by threads. More...
 

Protected Attributes

spot::ufuf_
 The shared Union Find. More...
 
spot::opensetos_
 The shared Open Set. More...
 
sharedhashtablesht_
 The shared Hash Table. More...
 
instanciatoritor_
 The instanciator. More...
 
int tn_
 The number of threads. More...
 
DeadSharePolicy policy_
 The current policy to use. More...
 
std::chrono::milliseconds::rep max_diff
 Elapse time between 2 stops. More...
 
std::vector< spot::concur_ec_stat * > chk
 Local data for each threads. More...
 
int stop
 Stop the world variable. More...
 
int stop_terminal
 Stop terminal variable. More...
 
int stop_weak
 Stop terminal variable. More...
 
std::atomic< int > term_iddle_
 
int stop_strong
 Stop strong variable. More...
 
std::string option_
 option to pass to ec. More...
 

Detailed Description

Wrapper Launch all threads.

Member Enumeration Documentation

The walk policy to be used by threads.

Enumerator
FULL_DIJKSTRA 

All threads use Tarjan Algorithm.

MIXED 

All threads use Dijkstra Algorithm.

FULL_TARJAN_EC 

Combinaison of both previous.

FULL_DIJKSTRA_EC 

All treads use Tarjan Emptiness Check.

Constructor & Destructor Documentation

spot::dead_share::dead_share ( instanciator i,
int  thread_number = 1,
DeadSharePolicy  policy = FULL_TARJAN,
std::string  option = "" 
)

Constructor for the multithreaded emptiness check.

This emptiness check is a wrapper for many and the policy to use can be defined using the parameter.

Parameters
thread_numberthe number of thread to use
virtual spot::dead_share::~dead_share ( )
virtual

Release all memory.

Member Function Documentation

bool spot::dead_share::check ( )
virtual

launch every thread with associated data and wait them to end.

Implements spot::ec.

virtual std::string spot::dead_share::csv ( )
virtual

A CSV containing :

  • the Name of the algo used
  • the number of threads in use
  • the maximum elapsed time between 2 threads stop!
void spot::dead_share::dump_threads ( )

Additionnal information threads by threads.

Member Data Documentation

std::vector<spot::concur_ec_stat*> spot::dead_share::chk
protected

Local data for each threads.

instanciator* spot::dead_share::itor_
protected

The instanciator.

std::chrono::milliseconds::rep spot::dead_share::max_diff
protected

Elapse time between 2 stops.

std::string spot::dead_share::option_
protected

option to pass to ec.

spot::openset* spot::dead_share::os_
protected

The shared Open Set.

DeadSharePolicy spot::dead_share::policy_
protected

The current policy to use.

sharedhashtable* spot::dead_share::sht_
protected

The shared Hash Table.

int spot::dead_share::stop
protected

Stop the world variable.

int spot::dead_share::stop_strong
protected

Stop strong variable.

int spot::dead_share::stop_terminal
protected

Stop terminal variable.

int spot::dead_share::stop_weak
protected

Stop terminal variable.

int spot::dead_share::tn_
protected

The number of threads.

spot::uf* spot::dead_share::uf_
protected

The shared Union Find.


The documentation for this class was generated from the following file:

Please direct any question, comment, or bug report to the Spot mailing list at spot@lrde.epita.fr.
Generated on Fri Jun 5 2015 11:31:19 for spot by doxygen 1.8.9.1