Benchmarking Java 1.4 versus 1.5
Someone at work today was wondering whether Java 5 was significantly faster than Java 2. I couldn’t really say from experience, so I googled around and found a java port of linpack that should serve as a great benchmark. My system specs are:
- OS Name: Microsoft Windows XP Professional
- System Model: Inspiron 8200
- Processor: x86 Family 15 Model 2 Stepping 4 GenuineIntel ~1694 Mhz
- Total Physical Memory: 512.00 MB
After installing the latest versions of java 1.4.2_08 and java 1.5.0_01, I compiled and ran the linpack port a few times on each vm, using the corresponding javac. The timings I got for Java 5 were:
Mflops/s: 149.056 Time: 4.49 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 146.766 Time: 4.56 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 149.356 Time: 4.48 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 149.389 Time: 4.48 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 139.976 Time: 4.78 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 149.724 Time: 4.47 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 147.057 Time: 4.55 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 149.724 Time: 4.47 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 144.202 Time: 4.64 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 149.69 Time: 4.47 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Then, for Java 2, here’s 10 results:
Mflops/s: 151.419 Time: 4.42 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 152.108 Time: 4.4 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 149.023 Time: 4.49 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 151.728 Time: 4.41 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 151.728 Time: 4.41 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 151.419 Time: 4.42 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 151.419 Time: 4.42 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 140.27 Time: 4.77 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 150.364 Time: 4.45 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
Mflops/s: 151.763 Time: 4.41 secs Norm Res: 10.1 Precision: 2.220446049250313E-16
I can then use software like Minitab to produce a histogram of the results (green=java2, red=java5):

A boxplot clearly shows the speed difference between them:

So, it seems Java 2 is consistently faster than Java 5, but is it statistically significant? I leave that up to you to decide.
This entry was posted on Thursday, July 7th, 2005 at 8:10 pm and is tagged with precision 2, java port, genuineintel, linpack, physical memory, os name, professional system, javac, system model, java 2, latest versions, system specs, norm, benchmarking, microsoft windows, vm, benchmark, windows xp, microsoft. You can follow any responses to this entry through the RSS 2.0 feed. You can leave a response, or trackback.

Add New Comment
Viewing 4 Comments
Thanks. Your comment is awaiting approval by a moderator.
Do you already have an account? Log in and claim this comment.
Do you already have an account? Log in and claim this comment.
Do you already have an account? Log in and claim this comment.
Do you already have an account? Log in and claim this comment.
Do you already have an account? Log in and claim this comment.
Add New Comment
Trackbacks
(Trackback URL)