Listing 1: Java Benchmark Source Code
public class PerformanceTester
{
private int amount;
private static int NOBJECTS = 500000;
public void addAmount (int val)
{
amount += val;
}
public int getAmount ()
{
return amount;
}
/**
* Benchmark driver. Creates half a million of simple account
* objects, adds an amount to each one, and then computes the
* sum of all amounts in all objects.
* Reports elapsed time in milliseconds and number of objects
* processed per millisecond.
*/
public static void main (String[] args)
{
long starttime = 0;
long endtime = 0;
int sum = 0;
starttime = System.currentTimeMillis();
PerformanceTester[] ptarr = new PerformanceTester[NOBJECTS];
for (int i = 0; i < NOBJECTS; i++)
ptarr[i] = new PerformanceTester();
for (int i = 0; i < NOBJECTS; i++)
ptarr[i].addAmount(i);
for (int i = 0; i < NOBJECTS; i++)
sum += ptarr[i].getAmount();
endtime = System.currentTimeMillis();
System.out.println ("Elapsed time in milliseconds for "
+ NOBJECTS + " objects: " + (endtime - starttime));
System.out.println ("Objects per millisecond:
" + (NOBJECTS / (endtime - starttime)));
}
}