ostore.apps.test
Class TputMicroBenchmarkMaster

java.lang.Object
  |
  +--ostore.apps.test.TputMicroBenchmarkMaster
All Implemented Interfaces:
EventHandlerIF, SingleThreadedEventHandlerIF

public class TputMicroBenchmarkMaster
extends Object
implements EventHandlerIF, SingleThreadedEventHandlerIF

The TputMicroBenchmarkMaster stage, also called the test master, works with the TputMicroBenchmark, also caused the test client, to benchmark the update throughput of the system. The TputMicroBenchmarkMaster directs the test. The TputMicroBenchmark performs the actual benchmarking. The simple microbenchmark performs a number of replace operations on a number of data objects. The master controls the timing of the benchmark. It waits for all test clients to initialize and report with a 'Ready' signal. It then sends an 'Initialize' signal to all clients which includes a number of configuration parameters. After the clients create the objects for testing and warm the caches and the JIT, the master sends the clients the 'Go' signal to the test clients. At the completion of the test, the TputMicroBenchmarkMaster stops the test clients; finally, the master collects and analyzes the results.

Initialization Parameters: The TputMicroBenchmarkMaster is controlled by serveral initialization parameters. These parameters and their result are described below.

NumTesters
The number of client testers participating in the test that this test master will be controlling.
UpdateLoad
The total number of updates that the testers should have outstanding at any time. This determines the number of data objects created for the test.
DobjSize
The size of each data object in the test.
UpdateSize
The amount of data to modify in each update.
TestLength
The length of the test in seconds.
SettleTime
The amount of time (in milliseconds) to pause between the initialization phase and the test phase.
InitSize
The total amount of data to update during the initialization phase of the test. Each tester will send updates for a portion of this total.
ResultLog
The name of the file for the results.

Version:
$id$
Author:
Patrick R. Eaton

Constructor Summary
TputMicroBenchmarkMaster()
           
 
Method Summary
 void destroy()
           
 void handleEvent(QueueElementIF element)
           
 void handleEvents(QueueElementIF[] element_array)
           
 void init(ConfigDataIF config)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

TputMicroBenchmarkMaster

public TputMicroBenchmarkMaster()
Method Detail

handleEvent

public void handleEvent(QueueElementIF element)
Specified by:
handleEvent in interface EventHandlerIF

handleEvents

public void handleEvents(QueueElementIF[] element_array)
                  throws EventHandlerException
Specified by:
handleEvents in interface EventHandlerIF
EventHandlerException

init

public void init(ConfigDataIF config)
          throws Exception
Specified by:
init in interface EventHandlerIF
Exception

destroy

public void destroy()
             throws Exception
Specified by:
destroy in interface EventHandlerIF
Exception