Itoyori  v0.0.1
ityr::ito::scheduler_adws Class Reference

#include <adws.hpp>

Classes

struct  suspended_state
 
struct  task_group_data
 
struct  thread_handler
 
struct  thread_local_storage
 
struct  thread_retval
 
struct  thread_state
 

Public Member Functions

 scheduler_adws ()
 
template<typename T , typename SchedLoopCallback , typename Fn , typename... Args>
root_exec (SchedLoopCallback cb, Fn &&fn, Args &&... args)
 
void task_group_begin (task_group_data *tgdata)
 
template<typename PreSuspendCallback , typename PostSuspendCallback >
void task_group_end (PreSuspendCallback &&pre_suspend_cb, PostSuspendCallback &&post_suspend_cb)
 
template<typename T , typename OnDriftForkCallback , typename OnDriftDieCallback , typename WorkHint , typename Fn , typename... Args>
void fork (thread_handler< T > &th, OnDriftForkCallback on_drift_fork_cb, OnDriftDieCallback on_drift_die_cb, WorkHint w_new, WorkHint w_rest, Fn &&fn, Args &&... args)
 
template<typename T >
join (thread_handler< T > &th)
 
template<typename SchedLoopCallback >
void sched_loop (SchedLoopCallback cb)
 
template<typename PreSuspendCallback , typename PostSuspendCallback >
void poll (PreSuspendCallback &&pre_suspend_cb, PostSuspendCallback &&post_suspend_cb)
 
template<typename PreSuspendCallback , typename PostSuspendCallback >
void migrate_to (common::topology::rank_t target_rank, PreSuspendCallback &&pre_suspend_cb, PostSuspendCallback &&post_suspend_cb)
 
template<typename Fn >
void coll_exec (const Fn &fn)
 
bool is_executing_root () const
 
void dag_prof_begin ()
 
void dag_prof_end ()
 
void dag_prof_print () const
 

Static Public Member Functions

template<typename T >
static bool is_serialized (const thread_handler< T > &th)
 

Constructor & Destructor Documentation

◆ scheduler_adws()

ityr::ito::scheduler_adws::scheduler_adws ( )
inline

Member Function Documentation

◆ coll_exec()

template<typename Fn >
void ityr::ito::scheduler_adws::coll_exec ( const Fn &  fn)
inline

◆ dag_prof_begin()

void ityr::ito::scheduler_adws::dag_prof_begin ( )
inline

◆ dag_prof_end()

void ityr::ito::scheduler_adws::dag_prof_end ( )
inline

◆ dag_prof_print()

void ityr::ito::scheduler_adws::dag_prof_print ( ) const
inline

◆ fork()

template<typename T , typename OnDriftForkCallback , typename OnDriftDieCallback , typename WorkHint , typename Fn , typename... Args>
void ityr::ito::scheduler_adws::fork ( thread_handler< T > &  th,
OnDriftForkCallback  on_drift_fork_cb,
OnDriftDieCallback  on_drift_die_cb,
WorkHint  w_new,
WorkHint  w_rest,
Fn &&  fn,
Args &&...  args 
)
inline

◆ is_executing_root()

bool ityr::ito::scheduler_adws::is_executing_root ( ) const
inline

◆ is_serialized()

template<typename T >
static bool ityr::ito::scheduler_adws::is_serialized ( const thread_handler< T > &  th)
inlinestatic

◆ join()

template<typename T >
T ityr::ito::scheduler_adws::join ( thread_handler< T > &  th)
inline

◆ migrate_to()

template<typename PreSuspendCallback , typename PostSuspendCallback >
void ityr::ito::scheduler_adws::migrate_to ( common::topology::rank_t  target_rank,
PreSuspendCallback &&  pre_suspend_cb,
PostSuspendCallback &&  post_suspend_cb 
)
inline

◆ poll()

template<typename PreSuspendCallback , typename PostSuspendCallback >
void ityr::ito::scheduler_adws::poll ( PreSuspendCallback &&  pre_suspend_cb,
PostSuspendCallback &&  post_suspend_cb 
)
inline

◆ root_exec()

template<typename T , typename SchedLoopCallback , typename Fn , typename... Args>
T ityr::ito::scheduler_adws::root_exec ( SchedLoopCallback  cb,
Fn &&  fn,
Args &&...  args 
)
inline

◆ sched_loop()

template<typename SchedLoopCallback >
void ityr::ito::scheduler_adws::sched_loop ( SchedLoopCallback  cb)
inline

◆ task_group_begin()

void ityr::ito::scheduler_adws::task_group_begin ( task_group_data tgdata)
inline

◆ task_group_end()

template<typename PreSuspendCallback , typename PostSuspendCallback >
void ityr::ito::scheduler_adws::task_group_end ( PreSuspendCallback &&  pre_suspend_cb,
PostSuspendCallback &&  post_suspend_cb 
)
inline

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