Skip to main content
Department of Information Technology

UART Publications

Memory System Behavior of Java-Based Middleware

Martin Karlsson, Kevin Moore, Erik Hagersten, and David Wood

In Proceedings of the Ninth International Symposium on High Performance Computer Architecture (HPCA-9), Anaheim, California, USA, February 2003.


Java-based middleware, and application servers in particular, are rapidly gaining importance as a new class of workload for commercial multiprocessor servers. SPEC has recognized this trend with its adoption of SPECjbb2000 and the new SPECjAppServer2001 (ECperf) as standard benchmarks. Middleware, by definition, connects other tiers of server software. SPECjbb is a simple benchmark that combines middleware services, a simple database server, and client drivers into a single Java program.ECperf more closely models commercial middleware by using a commercial application server and separate machines for the different tiers. Because it is a distributed benchmark, ECperf provides an opportunity for architects to isolate the behavior of middleware. In this paper, we present a detailed characterization of the memory system behavior of ECperf and SPECjbb using both commercial server hardware and Simics fullsystem simulation. We find that the memory footprint and primary working sets of these workloads are small compared to other commercial workloads (e.g., on-line transaction processing), and that a large fraction of the working sets are shared between processors. We observed two key differences between ECperf and SPECjbb that highlight the importance of isolating the behavior of the middle tier. First, ECperf has a larger instruction footprint, resulting in much higher miss rates for intermediatesize instruction caches. Second, SPECjbb's data set size increases linearly as the benchmark scales up, while ECperf's remains roughly constant. This difference can lead to opposite conclusions on the design of multiprocessor memory systems, such as the utility of moderate sized (i.e., 1 MB) shared caches in a chip multiprocessor.

Available as PDF (305 kB)

BibTeX file entry: Karlsson:2003:feb

Updated  2003-09-09 11:07:04 by Zoran Radovic.