com.sun.faban.driver
Class Result

java.lang.Object
  extended by com.sun.faban.driver.Result
Direct Known Subclasses:
Result

public abstract class Result
extends Object

The driver representation of the results, mainly used for fetching data from the main metrics for reporting in CustomMetrics.
Note that operations can and will be added as needed to query different aspects of the results.

Author:
Akara Sucharitakul

Constructor Summary
Result()
           
 
Method Summary
abstract  double[] get90thPctResponse()
          Obtains the 90th percentile of the response time of each operation.
abstract  double get90thPctResponse(String opsName)
          Obtains the 90th percentile of the response time for a given operation.
abstract  double[] getAvgResponse()
          Obtains the average response time of each operation.
abstract  double getAvgResponse(String opsName)
          Obtains the average response time of a given operation.
static Result getInstance()
          Obtains an instance of the Result object used for obtaining results.
abstract  double[] getMaxResponse()
          Obtains the maximum response time of each operation.
abstract  double getMaxResponse(String opsName)
          Obtains the maximum response time of a given operation.
abstract  double getMetric()
          Obtains the throughput metric the run has achieved.
abstract  int[] getOpsCountSteady()
          Obtains the number of operations of each type successfully executed during steady state.
abstract  int getOpsCountSteady(String opsName)
          Obtains the number of operations of a certain type successfully executed during steady state.
abstract  int[] getOpsCountTotal()
          Obtains the number of operatioins of each type successfully executed during the whole run.
abstract  int getOpsCountTotal(String opsName)
          Obtains the number of operations of a certain type successfully executed during the whole run.
abstract  double[] getOpsMix()
          Obtains the actual mix of each operation.
abstract  double getOpsMix(String opsName)
          Obtains the actual mix of the operation.
abstract  String[] getOpsNames()
          Obtains the defined operation names, in sequence.
abstract  double[] getResponseSD()
          Obtains the standard deviation of the response time of each operation.
abstract  double getResponseSD(String opsName)
          Obtains the standard deviation of the response time for a given operation.
abstract  int getScale()
          Obtains the scale of the run.
abstract  int getSteadyState()
          Obtains the steady state time or cycles of the run, dependent on the run control.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

Result

public Result()
Method Detail

getInstance

public static Result getInstance()
Obtains an instance of the Result object used for obtaining results.

Returns:
instance An instance of the Result object.

getSteadyState

public abstract int getSteadyState()
Obtains the steady state time or cycles of the run, dependent on the run control. Times are returned in seconds.

Returns:
The run's steady state

getScale

public abstract int getScale()
Obtains the scale of the run.

Returns:
The scale of the run.

getMetric

public abstract double getMetric()
Obtains the throughput metric the run has achieved. This is the same as the operation rate or transaction rate.

Returns:
The metric

getOpsNames

public abstract String[] getOpsNames()
Obtains the defined operation names, in sequence.

Returns:
The operation names.

getOpsCountSteady

public abstract int getOpsCountSteady(String opsName)
Obtains the number of operations of a certain type successfully executed during steady state.

Parameters:
opsName - The name of the operation to query
Returns:
The number of successful operations

getOpsCountSteady

public abstract int[] getOpsCountSteady()
Obtains the number of operations of each type successfully executed during steady state. The index into the array returned corresponds to the index of getOpsNames().

Returns:
The number of successful operations for each type

getOpsCountTotal

public abstract int getOpsCountTotal(String opsName)
Obtains the number of operations of a certain type successfully executed during the whole run.

Parameters:
opsName - The name of the operation to query
Returns:
The number of successful operations

getOpsCountTotal

public abstract int[] getOpsCountTotal()
Obtains the number of operatioins of each type successfully executed during the whole run. The index into the array returned corresponds to the index of getOpsNames().

Returns:
The number of successful operations for each type

getOpsMix

public abstract double getOpsMix(String opsName)
Obtains the actual mix of the operation. The return value ranges between 0 and 1. To obtain the percent mix, multiply the mix by 100.

Parameters:
opsName - The name of the operation to query
Returns:
The mix ratio of the operation during steady state.

getOpsMix

public abstract double[] getOpsMix()
Obtains the actual mix of each operation. The return values range between 0 and 1. To obtain the percent mix, multiply the mix by 100. The index into the array returned corresponds to the index of getOpsNames().

Returns:
The mix ratio of all operations during steady state.

getAvgResponse

public abstract double getAvgResponse(String opsName)
Obtains the average response time of a given operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. This operation returns NaN if the operation has never been accessed.

Parameters:
opsName - The name of the operation to query
Returns:
The average response time of the operation during steady state

getAvgResponse

public abstract double[] getAvgResponse()
Obtains the average response time of each operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. Returns NaN for an operation if it has never been accessed.

Returns:
The average response time of all operations during steady state

getMaxResponse

public abstract double getMaxResponse(String opsName)
Obtains the maximum response time of a given operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. This operation returns NaN if the operation has never been accessed.

Parameters:
opsName - The name of the operation to query
Returns:
The maximum response time of the operation during steady state

getMaxResponse

public abstract double[] getMaxResponse()
Obtains the maximum response time of each operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. Returns NaN for an operation if it has never been accessed.

Returns:
The maximum response time of all operations during steady state

get90thPctResponse

public abstract double get90thPctResponse(String opsName)
Obtains the 90th percentile of the response time for a given operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. This operation returns NaN if the operation has never been accessed.

Parameters:
opsName - The name of the operation to query
Returns:
The 90th percentile of the response time of the operation during steady state

get90thPctResponse

public abstract double[] get90thPctResponse()
Obtains the 90th percentile of the response time of each operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. Returns NaN for an operation if it has never been accessed.

Returns:
The 90th percentile of the response time of all operations during steady state

getResponseSD

public abstract double getResponseSD(String opsName)
Obtains the standard deviation of the response time for a given operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver. This operation returns NaN if the operation has never been accessed.

Parameters:
opsName - The name of the operation to query
Returns:
The standard deviation of the response time of the operation during steady state

getResponseSD

public abstract double[] getResponseSD()
Obtains the standard deviation of the response time of each operation. The unit of the response times is reflected by the response time unit setting in the @BenchmarkDriver annotation used to annotate the respective driver.Returns NaN for an operation if it has never been accessed.

Returns:
The standard deviation of the response time of all operations during steady state