Cache Analysis in a Multiprocess Environment Using Execution Driven Simulation
Author | : John H. Fraser, III |
Publisher | : |
Total Pages | : 189 |
Release | : 1996-08-01 |
ISBN-10 | : 1423584384 |
ISBN-13 | : 9781423584384 |
Rating | : 4/5 (84 Downloads) |
Download or read book Cache Analysis in a Multiprocess Environment Using Execution Driven Simulation written by John H. Fraser, III and published by . This book was released on 1996-08-01 with total page 189 pages. Available in PDF, EPUB and Kindle. Book excerpt: Cache memory is commonly used to bridge the gap between microprocessor and memory speeds. A wide variety of cache designs are possible, so some method is required to evaluate the benefits and costs of the various alternatives. Trace driven simulation is commonly used by the computer architecture community to analyze potential designs. Traces of benchmark execution are applied to a model of the design under study. Most of today's computer systems have been optimized based on results of these studies. One important aspect that is frequently ignored in trace driven studies is the effect of the operating system and multiprogramming on cache performance; most traces consist only of a single program's execution. It has been acknowledged in the past that this overhead introduces interference which limits the benefits of new designs, but evaluations using multiprogrammed traces have been neglected due to the lack of readily available tools that can capture such traces. In this research we describe a new tracing system that allows the capture of both operating system and multiprogrammed execution data. Cache performance is studied using multiprogrammed traces of the SPEC benchmarks. We study the effects of considering multiple tasks on the cache miss rate. The performance variation is primarily due to the presence of context switches. In an attempt to extend this work, we develop an analytical model that is used to synthetically incorporate context switches into a single process trace. We have found that the operating system introduces a small but persistent overhead to cache performance Additional processes have an even greater impact, which increases as the level of multi-tasking increases. Spatial locality is not significantly affected by these conditions, but the temporal locality of a program is substantially reduced by the presence of context switches.