CODE LAYOUT AS A SOURCE OF NOISE IN JVM PERFORMANCE

Dayong Gu, Clark Verbrugge, Etienne M. Gagnon · 2005

Abstract. We describe the effect of a particular form of “noise ” in benchmarking. We investigate the source of anomalous measurement data in a series of optimization strategies that attempt to improve runtime performance in the garbage collector of a Java virtual machine. The results of our experiments can be explained in terms of the difference in code layout, and hence instruction and data cache behaviour. We show that unintended changes in code layout due to code modifications as trivial as symbol renaming can contribute up to 2.7 % of measured machine cycle cost, 20 % in data cache misses, and 37 % in instruction cache misses.

Read the paper · More papers on PaperTik