package gnu.trove.benchmark.trove3;
import com.google.caliper.Param;
import com.google.caliper.SimpleBenchmark;
import gnu.trove.map.TIntObjectMap;
import gnu.trove.map.hash.TIntObjectHashMap;
/**
*
*/
public class SimpleAccessBenchmark extends SimpleBenchmark {
@Param int size;
private TIntObjectMap<String> empty_map;
private TIntObjectMap<String> populated_map;
@Override
protected void setUp() throws Exception {
System.out.println( "setUp" );
empty_map = new TIntObjectHashMap<String>();
populated_map = new TIntObjectHashMap<String>( size );
for( int i = 0; i < size; i++ ) {
populated_map.put( i, "value" );
}
}
@Override
protected void tearDown() throws Exception {
System.out.println( "tearDown" );
empty_map.clear();
populated_map.clear();
}
public void timePut( int reps ) {
System.out.println( "timePut: " + size );
for( int r = 0; r < reps; r++ ) {
for( int i = 0; i < size; i ++ ) {
empty_map.put( i, "value" );
}
}
}
public void timeGet( int reps ) {
System.out.println( "timeGet: " + size );
for( int r = 0; r < reps; r++ ) {
for( int i = 0; i < size; i++ ) {
populated_map.get( i );
}
}
}
public void timeContainsKey( int reps ) {
System.out.println( "timeContainsKey: " + reps );
for( int r = 0; r < reps; r++ ) {
for( int i = 0; i < size; i++ ) {
populated_map.containsKey( i );
}
}
}
}