ACE  6.1.0
Public Member Functions | Static Public Member Functions | Private Attributes
ACE_Throughput_Stats Class Reference

A simple class to make throughput and latency analysis. More...

#include <Throughput_Stats.h>

Inheritance diagram for ACE_Throughput_Stats:
Inheritance graph
[legend]
Collaboration diagram for ACE_Throughput_Stats:
Collaboration graph
[legend]

List of all members.

Public Member Functions

 ACE_Throughput_Stats (void)
 Constructor.
void sample (ACE_UINT64 throughput, ACE_UINT64 latency)
 Store one sample.
void accumulate (const ACE_Throughput_Stats &throughput)
 Update the values to reflect the stats in throughput.
void dump_results (const ACE_TCHAR *msg, ACE_UINT32 scale_factor)
 Print down the stats.

Static Public Member Functions

static void dump_throughput (const ACE_TCHAR *msg, ACE_UINT32 scale_factor, ACE_UINT64 elapsed_time, ACE_UINT32 samples_count)
 Dump the average throughput stats.

Private Attributes

ACE_UINT64 throughput_last_
 The last throughput measurement.

Detailed Description

A simple class to make throughput and latency analysis.

Keep the relevant information to perform throughput and latency analysis, including:

  1. Minimum, Average and Maximum latency
  2. Jitter for the latency
  3. Linear regression for throughput
  4. Accumulate results from several samples to obtain aggregated results, across several threads or experiments.
Todo:
The idea behind this class was to use linear regression to determine if the throughput was linear or exhibited jitter. Unfortunately it never worked quite right, so only average throughput is computed.

Constructor & Destructor Documentation

ACE_Throughput_Stats::ACE_Throughput_Stats ( void  )

Constructor.


Member Function Documentation

void ACE_Throughput_Stats::accumulate ( const ACE_Throughput_Stats throughput)

Update the values to reflect the stats in throughput.

void ACE_Throughput_Stats::dump_results ( const ACE_TCHAR msg,
ACE_UINT32  scale_factor 
)

Print down the stats.

void ACE_Throughput_Stats::dump_throughput ( const ACE_TCHAR msg,
ACE_UINT32  scale_factor,
ACE_UINT64  elapsed_time,
ACE_UINT32  samples_count 
) [static]

Dump the average throughput stats.

void ACE_Throughput_Stats::sample ( ACE_UINT64  throughput,
ACE_UINT64  latency 
)

Store one sample.


Member Data Documentation

The last throughput measurement.


The documentation for this class was generated from the following files:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines