A Study of Java Workloads

Jeff Napper Francois Caen Brian S. Scott
jmn@cs.utexas.edu fcaen@texas.net bscott@cs.utexas.edu

Department of Computer Science
University of Texas as Austin

Abstract

Java workloads are growing in importance as developers take advantage of the many features of the Java environment. We examine representative Java workloads in order to determine what hardware bottlenecks are present. We modified a version of Sun's Java 2 JVM to use the hardware performance counters of the UltraSPARC-IIi chip and benchmarked several Java applications. We discovered that I-cache stalls are up to 18% of execution time in Java programs, and both compulsory and capacity misses are probable causes. The limitations of our tools prevent us from verifying this conclusion, though. We also demonstrate that microbenchmarks, such as EmbeddedCaffeineMark, are not indicative of real application performance.

Postscript | Postscript gzip