SST/macro
Public Member Functions | Private Member Functions | Private Attributes | Static Private Attributes | List of all members
sstmac::sw::app_ftq_calendar Class Reference

#include <ftq.h>

Inheritance diagram for sstmac::sw::app_ftq_calendar:
Inheritance graph
Collaboration diagram for sstmac::sw::app_ftq_calendar:
Collaboration graph

Public Member Functions

 app_ftq_calendar (int aid, const std::string &appname, long nticks_epoch)
 
void dump (const std::string &fileroot)
 
virtual ~app_ftq_calendar ()
 
void collect (int event_typeid, int tid, long ticks_begin, long num_ticks)
 Resolution of the ticks is set by timestamp_resolution parameter. More...
 
virtual std::string to_string () const
 
void reduce (app_ftq_calendar *cal)
 
void global_reduce (parallel_runtime *rt)
 
- Public Member Functions inherited from sstmac::sw::task_ftq_calendar
 task_ftq_calendar ()
 
virtual ~task_ftq_calendar ()
 
void collect (int event_typeid, long ticks_begin, long ticks)
 
void dump (std::ofstream &os)
 
- Public Member Functions inherited from sstmac::sw::ftq_epoch
 ftq_epoch ()
 
virtual ~ftq_epoch ()
 
void collect (int key_typeid, long ticks)
 
void init (int num_events, long long *buffer)
 
long long event_time (int key_typeid) const
 
void set_event_time (int key_typeid, long long count)
 

Private Member Functions

void dumpi_gnuplot_histogram (const std::string &fileroot, int num_categories)
 
void allocate_epochs (long max_epoch)
 

Private Attributes

spkt_unordered_map< int, task_ftq_calendar * > calendars_
 
spkt_unordered_map< int, ftq_epoch * > thread_epochs_
 
std::vector< ftq_epochepochs_
 
std::list< long long * > buffers_
 
int aid_
 
int max_tid_
 
long max_epoch_
 
long max_epoch_allocated_
 
long num_ticks_epoch_
 
std::string appname_
 

Static Private Attributes

static const long allocation_num_epochs
 

Additional Inherited Members

- Protected Attributes inherited from sstmac::sw::task_ftq_calendar
event_nodehead_
 
event_nodetail_
 
long max_tick_
 
- Protected Attributes inherited from sstmac::sw::ftq_epoch
long long * totals_
 

Detailed Description

Definition at line 91 of file ftq.h.

Constructor & Destructor Documentation

sstmac::sw::app_ftq_calendar::app_ftq_calendar ( int  aid,
const std::string &  appname,
long  nticks_epoch 
)
virtual sstmac::sw::app_ftq_calendar::~app_ftq_calendar ( )
virtual

Member Function Documentation

void sstmac::sw::app_ftq_calendar::allocate_epochs ( long  max_epoch)
private
void sstmac::sw::app_ftq_calendar::collect ( int  event_typeid,
int  tid,
long  ticks_begin,
long  num_ticks 
)

Resolution of the ticks is set by timestamp_resolution parameter.

timestamp_resolution gives the number of ps per tick timestamp_resolution=100 -> 100ps = 1 tick

Parameters
event_typeidThe type of event (MPI,Compute,Sleep,etc)
tidThe task id (essentially MPI Rank)
ticks_beginThe time the event started
num_ticksThe duration of the event
void sstmac::sw::app_ftq_calendar::dump ( const std::string &  fileroot)
void sstmac::sw::app_ftq_calendar::dumpi_gnuplot_histogram ( const std::string &  fileroot,
int  num_categories 
)
private
void sstmac::sw::app_ftq_calendar::global_reduce ( parallel_runtime rt)
void sstmac::sw::app_ftq_calendar::reduce ( app_ftq_calendar cal)
virtual std::string sstmac::sw::app_ftq_calendar::to_string ( ) const
inlinevirtual

Reimplemented from sstmac::sw::task_ftq_calendar.

Definition at line 116 of file ftq.h.

Member Data Documentation

int sstmac::sw::app_ftq_calendar::aid_
private

Definition at line 134 of file ftq.h.

const long sstmac::sw::app_ftq_calendar::allocation_num_epochs
staticprivate

Definition at line 150 of file ftq.h.

std::string sstmac::sw::app_ftq_calendar::appname_
private

Definition at line 144 of file ftq.h.

std::list<long long*> sstmac::sw::app_ftq_calendar::buffers_
private

Definition at line 132 of file ftq.h.

spkt_unordered_map<int, task_ftq_calendar*> sstmac::sw::app_ftq_calendar::calendars_
private

Definition at line 127 of file ftq.h.

std::vector<ftq_epoch> sstmac::sw::app_ftq_calendar::epochs_
private

Definition at line 130 of file ftq.h.

long sstmac::sw::app_ftq_calendar::max_epoch_
private

Definition at line 138 of file ftq.h.

long sstmac::sw::app_ftq_calendar::max_epoch_allocated_
private

Definition at line 140 of file ftq.h.

int sstmac::sw::app_ftq_calendar::max_tid_
private

Definition at line 136 of file ftq.h.

long sstmac::sw::app_ftq_calendar::num_ticks_epoch_
private

Definition at line 142 of file ftq.h.

spkt_unordered_map<int, ftq_epoch*> sstmac::sw::app_ftq_calendar::thread_epochs_
private

Definition at line 128 of file ftq.h.


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