BandWidthOptimizer

public class BandWidthOptimizer
Author:Patrick Yip To regulate the execution interval of the collector, to improve the performance and use as least resource as possible to reach the maximum speed

Constructors

BandWidthOptimizer

public BandWidthOptimizer(ActiveTaskModule collector)

Methods

adjustSpeed

public long adjustSpeed(double currentSpeed, double expectedSpeed, long currentExecutionInterval)

Adjust the current speed to the specified speed

Parameters:
  • currentSpeed – current speed
  • expectedSpeed – expected speed
Returns:

the adjusted execution interval

findMaxSpeed

public boolean findMaxSpeed()

getCurrentEI

public long getCurrentEI()

getOptimizedEI

public long getOptimizedEI()

getOptimizedSpeed

public double getOptimizedSpeed()

isFoundOptimized

public boolean isFoundOptimized()

printIntervalRetriedMap

public void printIntervalRetriedMap()

printIntervalSpeedMap

public void printIntervalSpeedMap()

reset

public void reset()

Reset the bandwidth optimizer

setAdjustEIDelta

public void setAdjustEIDelta(long delta)

setAdjustEIMin

public void setAdjustEIMin(long min)

setAdjustSpeedTolerance

public void setAdjustSpeedTolerance(double tolerance)

setEIIncrement

public void setEIIncrement(long increment)

setEISpeedGradientTolerance

public void setEISpeedGradientTolerance(double tolerance)

setMaxExecutionInterval

public void setMaxExecutionInterval(long maxEI)

setMaxRound

public void setMaxRound(int maxRound)

setMinExecutionInterval

public void setMinExecutionInterval(long minEI)

setSpeedGradientTolerance

public void setSpeedGradientTolerance(double tolerance)