seda.sandStorm.internal
Class AggThrottle

java.lang.Object
  extended by seda.sandStorm.internal.AggThrottle

 class AggThrottle
extends java.lang.Object

AggThrottle is used by thread managers to adjust their aggregation level based on observations of stage throughput.


Field Summary
private static int ADJUST_DELAY
           
private  int adjustCount
           
private  int aggregationTarget
           
private  int bestTarget
           
private  double bestThroughput
           
private static boolean DEBUG
           
private static double HIGH_WATER
           
private  int increase_count
           
private static double INCREASE_FACTOR
           
private  long lastEvents
           
private  long lastMeasurementTime
           
private  double lastThroughput
           
private static double LOW_WATER
           
private  int maxAggregation
           
private  int measurementCount
           
private  ManagerIF mgr
           
private  int minAggregation
           
private  java.lang.String name
           
private  java.util.Random rand
           
private  int recalcWindow
           
private static double REDUCE_FACTOR
           
private  double smoothConst
           
private  StageWrapperIF stage
           
private  int state
           
private static int STATE_DECREASING
           
private static int STATE_INCREASING
           
private static double VERY_HIGH_WATER
           
private static double VERY_LOW_WATER
           
 
Constructor Summary
AggThrottle(StageWrapperIF stage, ManagerIF mgr)
           
 
Method Summary
(package private)  int getAggTarget()
           
 java.lang.String toString()
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Field Detail

DEBUG

private static final boolean DEBUG
See Also:
Constant Field Values

stage

private StageWrapperIF stage

name

private java.lang.String name

mgr

private ManagerIF mgr

bestThroughput

private double bestThroughput

lastThroughput

private double lastThroughput

bestTarget

private int bestTarget

lastEvents

private long lastEvents

lastMeasurementTime

private long lastMeasurementTime

measurementCount

private int measurementCount

adjustCount

private int adjustCount

STATE_DECREASING

private static final int STATE_DECREASING
See Also:
Constant Field Values

STATE_INCREASING

private static final int STATE_INCREASING
See Also:
Constant Field Values

state

private int state

increase_count

private int increase_count

ADJUST_DELAY

private static final int ADJUST_DELAY
See Also:
Constant Field Values

minAggregation

private int minAggregation

maxAggregation

private int maxAggregation

recalcWindow

private int recalcWindow

smoothConst

private double smoothConst

REDUCE_FACTOR

private static final double REDUCE_FACTOR
See Also:
Constant Field Values

INCREASE_FACTOR

private static final double INCREASE_FACTOR
See Also:
Constant Field Values

LOW_WATER

private static final double LOW_WATER
See Also:
Constant Field Values

HIGH_WATER

private static final double HIGH_WATER
See Also:
Constant Field Values

VERY_LOW_WATER

private static final double VERY_LOW_WATER
See Also:
Constant Field Values

VERY_HIGH_WATER

private static final double VERY_HIGH_WATER
See Also:
Constant Field Values

aggregationTarget

private int aggregationTarget

rand

private java.util.Random rand
Constructor Detail

AggThrottle

AggThrottle(StageWrapperIF stage,
            ManagerIF mgr)
Method Detail

toString

public java.lang.String toString()
Overrides:
toString in class java.lang.Object

getAggTarget

int getAggTarget()