# Java Linpack Benchmark

• Top performer is 13.7 Mflop/s for a P6 using Netscape 3.0 JIT

• URL http://www.netlib.org/benchmark/linpackjava/

This applet runs the Linpack Benchmark in Java. The Linpack Benchmark is a numerically intensive test that has been used for years to measure the floating point performance of computers. To run the benchmark after the graph loads hit "Press to run ...".

Your timings will be sent to us by email and we'll update our list of timings.

Special thanks to Jonathan Hardwick (jch@cs.cmu.edu) who made a number of valuable optimizations to the Linpack Java Benchmark. These changes brought a 10-20% speed increase and are described here. Also don't miss his more general Java Optimization page.

As of 5 April 96 we are running the optimized code and will maintain separate timings lists until a significant number of timings have been done under the new code.

Also, see Ivan Phillips' CaffeineMark benchmark.

IF YOU CAN READ THIS IT MEANS YOU ARE USING A VERSION OF NETSCAPE THAT DOESN'T SUPPORT JAVA. TRY TO FIND ONE THAT DOES.

## Notes:

The problem solved is a dense 100x100 system of linear equations with one right hand side, Ax=b. The matrix is generated randomly and the right hand side is constructed so the solution has all components equal to one. The method of solution is based on Gaussian elimination with partial pivoting.
Mflop/s
Millions of floating point operations per second. A floating point operation here is a floating point addition or a floating point multiplication with 64 bit operands. For this problem there are 2/3 n^3 + n^2 floating point operations.
Time
The time in seconds to solve the problem, Ax=b.
Norm Res
A check is made to show that the computed solution is correct. The test is based on || Ax - b || / ( || A || || x || eps) where eps is described below. The Norm Res should be about O(1) in size. If this quantity is much larger than 1, the solution is probably incorrect.
Precision
The relative machine precision usually the smallest positive number such that fl( 1.0 - eps ) < 1.0, where fl denotes the computed value and eps is the relative machine precision.
This is the java code which implements the benchmark.

Timings Shown in Graph Above:

1. 13.733 Mflop/s in 0.05 secs ; Intel P6 Windows95 200 MHz P6, Netscape 3.0b6 gold ; 19 Aug 96, Roldan Pozo (pozo@nist.gov)
2. 11.444 Mflop/s in 0.06 secs ; Intel P6 Windows95 MSIE beta 2 with JIT ; 16 Jul 96, David Michie (dmichie@macromedia.com)
3. 8.583 Mflop/s in 0.08 secs ; Intel P6 WindowsNT Netscape Navigator 3.0b5 ; 21 Aug 96, Tetsuya Okada (okayan@c-creators.co.jp)
4. 7.63 Mflop/s in 0.09 secs ; Intel P6 HP XU/6-200, Windows NT 4.0 beta 1, Netscape 3.0b5 ; 11 Jul 96, Adnan Mumbasic (Adnan@seitz.de)
5. 6.242 Mflop/s in 0.11 secs ; Intel Pentium Windows95 Pentium 120MHZ, Netscape 3.0 Beta 5 (JIT) ; 31 Jul 96, Khaled Agrama (kagrama@uclink4.berkeley.edu)
6. 5.242 Mflop/s in 0.13 secs ; Intel Pentium WindowsNT Pentium 133MHz, 32 MB RAM , Netscape b6 ; 15 Aug 96, KB Sriram (kbs@sbktech.org)
7. 4.292 Mflop/s in 0.16 secs ; Intel Pentium Windows95 Pentium 90 w/32MB ; 7 Aug 96, Steve Alston (agf@psu.edu)
8. 3.815 Mflop/s in 0.18 secs ; Intel Pentium WindowsNT 133 MHz ; 12 Aug 96, John Costello (john.costello@carleton.edu)
9. 3.121 Mflop/s in 0.22 secs ; Intel Pentium Windows95 90 MHz, MSIE 3.0 ; 22 Aug 96, Kostya Lukin (lukin@okbmei.msk.su)
10. 2.543 Mflop/s in 0.27 secs ; Intel 486 Windows95 MS IE 3.0b2 patched JIT on 486DX4-100 ; 4 Aug 96, Doug Mitchell (doug@mitchcraft.com)
11. 1.561 Mflop/s in 0.44 secs ; Intel 486 Windows95 AMD486-133 with Netscape 3. 0b5a (JIT compiler) ; 10 Jul 96, Doug Mitchell (mitchell@ucsd.edu)
12. 1.075 Mflop/s in 0.64 secs ; Alpha Digital Unix (OSF) AS8400 with 2 Gigabytes Memory and 8 350MHz CPU's ; 7 Jun 96, Fergal Mc Carthy
13. 0.551 Mflop/s in 1.25 secs ; Mac Mac OS PowerMac 8500/120 ; 29 Jun 96, Robert Schmidt (rschmidt@panix.com)
14. 0.26 Mflop/s in 2.64 secs ; HP 712/80 ; 14 May 96, Hugh Vidos (vidos@research.cs.orst.edu)

Here are the list of timings from the first version of the Linpack Java Benchmark. (Before optimizations.)

http://www.netlib.org/utk/people/JackDongarra/