Mw. El-kharashi et al., A quantitative study for Java microprocessor architectural requirements. Part I: Instruction set design, MICROPR MIC, 24(5), 2000, pp. 225-236
Java was designed for network programming. This imposes certain requirement
s on its virtual machine instruction set architecture and on designs that s
upport Java. The purpose of this study is to carry out a behavioral analysi
s of the different aspects of Java instruction set architecture. This will
help in establishing the hardware requirements for executing Java bytecodes
. First, the bytecode interpreter was instrumented to include performance c
ounters and statistics collectors. Then performance metrics were collected
through benchmarking. Analyzing these data helps to identify performance-cr
itical aspects that are candidates for hardware support, while less critica
l aspects can be left for software implementations. In this first part of o
ur two-part paper, we study access patterns for data types, addressing mode
s, and instruction encoding. Recommendations for architectural requirements
for Java processors will be made throughout this study. (C) 2000 Elsevier
Science B.V. All rights reserved.