ttg::base::WorldImplBase Class Referenceabstract
Inheritance diagram for ttg::base::WorldImplBase:
ttg_madness::WorldImpl ttg_parsec::WorldImpl

Documentation

Base class for implementation-specific Worlds.

Definition at line 33 of file world.h.

Public Member Functions

virtual ~WorldImplBase (void)
 
int size ()
 
int rank ()
 
virtual void destroy (void)=0
 
template<typename T >
void register_ptr (const std::shared_ptr< T > &ptr)
 
template<typename T >
void register_ptr (std::unique_ptr< T > &&ptr)
 
void register_status (const std::shared_ptr< std::promise< void >> &status_ptr)
 
template<typename Callback >
void register_callback (Callback &&callback)
 
void fence (void)
 
virtual void execute ()
 
void register_op (ttg::TTBase *op)
 
void deregister_op (ttg::TTBase *op)
 
bool is_valid (void) const
 
virtual void final_task ()
 
virtual void profile_on ()
 
virtual void profile_off ()
 
virtual bool profiling ()
 
virtual void dag_on (const std::string &filename)
 
virtual void dag_off ()
 
virtual bool dag_profiling ()
 

Protected Member Functions

void mark_invalid ()
 
virtual void fence_impl (void)=0
 
void release_ops (void)
 
 WorldImplBase (int size, int rank)
 

Constructor & Destructor Documentation

◆ WorldImplBase()

ttg::base::WorldImplBase::WorldImplBase ( int  size,
int  rank 
)
inlineprotected

Definition at line 61 of file world.h.

◆ ~WorldImplBase()

virtual ttg::base::WorldImplBase::~WorldImplBase ( void  )
inlinevirtual

Definition at line 66 of file world.h.

Member Function Documentation

◆ dag_off()

virtual void ttg::base::WorldImplBase::dag_off ( )
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 163 of file world.h.

◆ dag_on()

virtual void ttg::base::WorldImplBase::dag_on ( const std::string &  filename)
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 162 of file world.h.

◆ dag_profiling()

virtual bool ttg::base::WorldImplBase::dag_profiling ( )
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 164 of file world.h.

◆ deregister_op()

void ttg::base::WorldImplBase::deregister_op ( ttg::TTBase op)
inline

Deregister a TT from this world. TTs deregister themselves during destruction to avoid dangling references.

Definition at line 144 of file world.h.

◆ destroy()

virtual void ttg::base::WorldImplBase::destroy ( void  )
pure virtual

◆ execute()

virtual void ttg::base::WorldImplBase::execute ( )
inlinevirtual

Start the execution of tasks in this world. The call to execute() will return immediately, i.e., it will not wait for all tasks to complete executing.

See also
fence

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 128 of file world.h.

◆ fence()

void ttg::base::WorldImplBase::fence ( void  )
inline

Wait for all tasks in this world to complete execution. This is a synchronizing call, even if no active tasks exist (i.e., fence() behaves as a barrier).

Definition at line 109 of file world.h.

◆ fence_impl()

virtual void ttg::base::WorldImplBase::fence_impl ( void  )
protectedpure virtual

◆ final_task()

virtual void ttg::base::WorldImplBase::final_task ( )
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 156 of file world.h.

◆ is_valid()

bool ttg::base::WorldImplBase::is_valid ( void  ) const
inline

Whether this world is valid. A word is marked as invalid during destruction and/or finalization of TTG.

Definition at line 154 of file world.h.

◆ mark_invalid()

void ttg::base::WorldImplBase::mark_invalid ( )
inlineprotected

Definition at line 50 of file world.h.

◆ profile_off()

virtual void ttg::base::WorldImplBase::profile_off ( )
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 159 of file world.h.

◆ profile_on()

virtual void ttg::base::WorldImplBase::profile_on ( )
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 158 of file world.h.

◆ profiling()

virtual bool ttg::base::WorldImplBase::profiling ( )
inlinevirtual

Reimplemented in ttg_parsec::WorldImpl.

Definition at line 160 of file world.h.

◆ rank()

int ttg::base::WorldImplBase::rank ( )
inline

Returns the rank of the calling process in this World.

Definition at line 78 of file world.h.

◆ register_callback()

template<typename Callback >
void ttg::base::WorldImplBase::register_callback ( Callback &&  callback)
inline

Definition at line 99 of file world.h.

◆ register_op()

void ttg::base::WorldImplBase::register_op ( ttg::TTBase op)
inline

Register a TT with this world. All registered TTs will be destroyed during destruction of this world.

Definition at line 135 of file world.h.

◆ register_ptr() [1/2]

template<typename T >
void ttg::base::WorldImplBase::register_ptr ( const std::shared_ptr< T > &  ptr)
inline

Definition at line 85 of file world.h.

◆ register_ptr() [2/2]

template<typename T >
void ttg::base::WorldImplBase::register_ptr ( std::unique_ptr< T > &&  ptr)
inline

Definition at line 90 of file world.h.

◆ register_status()

void ttg::base::WorldImplBase::register_status ( const std::shared_ptr< std::promise< void >> &  status_ptr)
inline

Definition at line 94 of file world.h.

◆ release_ops()

void ttg::base::WorldImplBase::release_ops ( void  )
inlineprotected

Definition at line 54 of file world.h.

◆ size()

int ttg::base::WorldImplBase::size ( )
inline

Returns the number of processes that belong this World.

Definition at line 71 of file world.h.


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