Main Page   Namespace List   Class Hierarchy   Alphabetical List   Compound List   File List   Namespace Members   Compound Members   File Members   Related Pages  

ACE_Throughput_Stats Class Reference

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

#include <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 Methods

 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 Methods

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

ACE_UINT64 ACE_Throughput_Stats::throughput_last_ [private]
 

The last throughput measurement.


The documentation for this class was generated from the following files:
Generated on Fri Apr 2 16:54:35 2004 for ACE by doxygen1.2.18