Evaluating cache performance under multiprogrammed workloads
Abstract
Computer system performance is critically dependent on cache performance. Cache effectiveness is determined by factors such as program locality of reference and cache organization. Different approaches to cache performance evaluation include; direct hardware measurement, analytical performance modeling, and trace-driven simulation (TDS). Hardware measurement can not be done on all systems, and does not facilitate investigation of design alternatives. Analytical cache modeling yields quick estimates of cache performance at the expense of reduced accuracy. TDS, based on driving a simulation model of the system with program traces, provides flexibility in parameter variation, and is a widely adopted performance evaluation technique, although simulation of complete program traces is time-consuming. Many past studies of cache performance do not account for the impact of operating system, interrupt or I/O activity present in multiprogrammed environments, on caches. We use simulation, based on a system model and a workload model, to study the impact of such system events on cache performance. We also investigate the applicability of two analytical models described in the literature as tools in evaluating cache performance.