Home : Course Map : Chapter 10 : Java : Supplements :
Java Benchmarks
Course Map
Chapter 10


Preferences API
  Demo 1
Concurrency Utils
Enumerated Type
Arrays Class
String Tools

  Demo 2
  Demo 3

Other Utilities

     About JavaTech
     Codes List
     Topic Index
     Course Guide
     What's New

There does not exist an absolute benchmark for software performance. There are far too many variations in software languages, in their strengths and weaknesses, in the platforms they run on, in they way programs are written, etc.

Comparing C to Java can be difficult. For example, an algorithm implemented in C might vary considerably in speed according to how optimized the code is. Similarly, implementations of the algorithm in Java can vary greatly. So obviously this will all lead to a wide divergence in results when comparing C to Java implementations of that algorithm. Ideally, you would compare only the most highly optimized implementations of the algorithm in both languages but that can be difficult to arrange.

For Java there are also the challenges of comparing the same code run in different JVMs and on different platforms. A Just-in-Time compiler will need to convert the bytecode to local machine code during the first pass through a section of the program. Unless this section of code is run repetitively, there may not be much of a speed up. Similarly, a JVM like the Sun Hotspot needs a period of time to see what sections of code need to be optimized. This will again lead to poor initial performance but increasingly fast speeds as the program continues to run.

Nevertheless, benchmark comparisons can still give a general idea of how a language, JVM, etc. performs. Many efforts have been made, and continue to be made, to develop useful benchmarks for evaluating Java performance. The following links porint to a number of benchmark discussions and specifications:

See also the discussion in Chapter 24 on comparing hardware implementations of Java bytecode processing.

Most recent update: Mar.20, 2006



Bit Handling

Data Gen&Analysis

  Demo 1
  Demo 2

  Part I Part II Part III
Java Core 1  2  3  4  5  6  7  8  9  10  11  12 13 14 15 16 17
18 19 20
22 23 24

1  2  3  4  5  6  7  8  9  10  11  12

Tech 1  2  3  4  5  6  7  8  9  10  11  12
Physics 1  2  3  4  5  6  7  8  9  10  11  12

Java is a trademark of Sun Microsystems, Inc.