Itoyori  v0.0.1
ityr::common::profiler::event Class Reference

#include <profiler.hpp>

Inheritance diagram for ityr::common::profiler::event:
Collaboration diagram for ityr::common::profiler::event:

Public Member Functions

 event (profiler_state &state)
 
virtual ~event ()=default
 
mode_stats::interval_begin_data interval_begin (mode_disabled, wallclock::wallclock_t)
 
void interval_end (mode_disabled, wallclock::wallclock_t, mode_disabled::interval_begin_data)
 
mode_stats::interval_begin_data interval_begin (mode_stats, wallclock::wallclock_t t)
 
void interval_end (mode_stats, wallclock::wallclock_t t, mode_stats::interval_begin_data ibd)
 
mode_trace::interval_begin_data interval_begin (mode_trace, wallclock::wallclock_t t)
 
void interval_end (mode_trace, wallclock::wallclock_t t, mode_trace::interval_begin_data ibd)
 
virtual void * trace_decoder (FILE *stream, void *buf0, void *buf1)
 
virtual std::string str () const
 
virtual void clear ()
 
virtual void print_stats ()
 

Static Public Member Functions

static void * trace_decoder_base (FILE *stream, int, int, void *buf0, void *buf1)
 

Protected Types

using counter_t = uint64_t
 

Protected Member Functions

void do_acc (wallclock::wallclock_t t)
 
virtual void print_stats_per_rank (topology::rank_t rank, wallclock::wallclock_t sum_time, wallclock::wallclock_t max_time, wallclock::wallclock_t t_total, counter_t count) const
 
virtual void print_stats_sum (wallclock::wallclock_t sum_time, wallclock::wallclock_t max_time, wallclock::wallclock_t t_total, counter_t count) const
 

Protected Attributes

profiler_statestate_
 
wallclock::wallclock_t sum_time_ = 0
 
wallclock::wallclock_t max_time_ = 0
 
counter_t count_ = 0
 

Member Typedef Documentation

◆ counter_t

using ityr::common::profiler::event::counter_t = uint64_t
protected

Constructor & Destructor Documentation

◆ event()

ityr::common::profiler::event::event ( profiler_state state)
inline

◆ ~event()

virtual ityr::common::profiler::event::~event ( )
virtualdefault

Member Function Documentation

◆ clear()

virtual void ityr::common::profiler::event::clear ( )
inlinevirtual

◆ do_acc()

void ityr::common::profiler::event::do_acc ( wallclock::wallclock_t  t)
inlineprotected

◆ interval_begin() [1/3]

mode_stats::interval_begin_data ityr::common::profiler::event::interval_begin ( mode_disabled  ,
wallclock::wallclock_t   
)
inline

◆ interval_begin() [2/3]

mode_stats::interval_begin_data ityr::common::profiler::event::interval_begin ( mode_stats  ,
wallclock::wallclock_t  t 
)
inline

◆ interval_begin() [3/3]

mode_trace::interval_begin_data ityr::common::profiler::event::interval_begin ( mode_trace  ,
wallclock::wallclock_t  t 
)
inline

◆ interval_end() [1/3]

void ityr::common::profiler::event::interval_end ( mode_disabled  ,
wallclock::wallclock_t  ,
mode_disabled::interval_begin_data   
)
inline

◆ interval_end() [2/3]

void ityr::common::profiler::event::interval_end ( mode_stats  ,
wallclock::wallclock_t  t,
mode_stats::interval_begin_data  ibd 
)
inline

◆ interval_end() [3/3]

void ityr::common::profiler::event::interval_end ( mode_trace  ,
wallclock::wallclock_t  t,
mode_trace::interval_begin_data  ibd 
)
inline

◆ print_stats()

virtual void ityr::common::profiler::event::print_stats ( )
inlinevirtual

◆ print_stats_per_rank()

virtual void ityr::common::profiler::event::print_stats_per_rank ( topology::rank_t  rank,
wallclock::wallclock_t  sum_time,
wallclock::wallclock_t  max_time,
wallclock::wallclock_t  t_total,
counter_t  count 
) const
inlineprotectedvirtual

◆ print_stats_sum()

virtual void ityr::common::profiler::event::print_stats_sum ( wallclock::wallclock_t  sum_time,
wallclock::wallclock_t  max_time,
wallclock::wallclock_t  t_total,
counter_t  count 
) const
inlineprotectedvirtual

◆ str()

virtual std::string ityr::common::profiler::event::str ( ) const
inlinevirtual

Reimplemented in ityr::ori::prof_event_home_mmap, ityr::ori::prof_event_cache_mmap, ityr::ori::prof_event_acquire_wait, ityr::ori::prof_event_acquire, ityr::ori::prof_event_release_lazy, ityr::ori::prof_event_release, ityr::ori::prof_event_checkin, ityr::ori::prof_event_checkout_comp, ityr::ori::prof_event_checkout_nb, ityr::ori::prof_event_put, ityr::ori::prof_event_get, ityr::ito::prof_phase_spmd, ityr::ito::prof_phase_thread, ityr::ito::prof_phase_cb_post_suspend, ityr::ito::prof_phase_cb_pre_suspend, ityr::ito::prof_phase_cb_drift_die, ityr::ito::prof_phase_cb_drift_fork, ityr::ito::prof_phase_sched_start_new, ityr::ito::prof_phase_sched_resume_migrate, ityr::ito::prof_phase_sched_resume_stolen, ityr::ito::prof_phase_sched_resume_join, ityr::ito::prof_phase_sched_resume_popped, ityr::ito::prof_phase_sched_evacuate, ityr::ito::prof_phase_sched_migrate, ityr::ito::prof_phase_sched_die, ityr::ito::prof_phase_sched_join, ityr::ito::prof_phase_sched_fork, ityr::ito::prof_phase_sched_loop, ityr::ito::prof_event_wsqueue_empty_batch, ityr::ito::prof_event_wsqueue_empty, ityr::ito::prof_event_wsqueue_pass, ityr::ito::prof_event_wsqueue_steal_abort, ityr::ito::prof_event_wsqueue_steal_nolock, ityr::ito::prof_event_wsqueue_pop, ityr::ito::prof_event_wsqueue_push, ityr::ito::prof_event_sched_adws_scan_tree, ityr::ito::prof_event_sched_mailbox_put, ityr::ito::prof_event_sched_steal, ityr::common::prof_event_allocator_collect, ityr::common::prof_event_allocator_free_remote, ityr::common::prof_event_allocator_free_local, ityr::common::prof_event_allocator_alloc, ityr::common::prof_event_global_lock_unlock, ityr::common::prof_event_global_lock_priolock, ityr::common::prof_event_global_lock_trylock, ityr::common::prof_event_rma_flush, ityr::common::prof_event_rma_put_nb, ityr::common::prof_event_rma_get_nb, ityr::common::prof_event_mpi_rma_flush, ityr::common::prof_event_mpi_rma_atomic_put, ityr::common::prof_event_mpi_rma_atomic_get, ityr::common::prof_event_mpi_rma_atomic_cas, ityr::common::prof_event_mpi_rma_atomic_faa, ityr::common::prof_event_mpi_rma_put, and ityr::common::prof_event_mpi_rma_get.

◆ trace_decoder()

virtual void* ityr::common::profiler::event::trace_decoder ( FILE *  stream,
void *  buf0,
void *  buf1 
)
inlinevirtual

◆ trace_decoder_base()

static void* ityr::common::profiler::event::trace_decoder_base ( FILE *  stream,
int  ,
int  ,
void *  buf0,
void *  buf1 
)
inlinestatic

Member Data Documentation

◆ count_

counter_t ityr::common::profiler::event::count_ = 0
protected

◆ max_time_

wallclock::wallclock_t ityr::common::profiler::event::max_time_ = 0
protected

◆ state_

profiler_state& ityr::common::profiler::event::state_
protected

◆ sum_time_

wallclock::wallclock_t ityr::common::profiler::event::sum_time_ = 0
protected

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