The implications of cache affinity on processor scheduling for multiprogrammed, shared memory multiprocessors
- 1 September 1991
- proceedings article
- Published by Association for Computing Machinery (ACM)
- Vol. 25 (5) , 26-40
- https://doi.org/10.1145/121132.121140
Abstract
In a shared memory multiprocessor with caches, executing tasks develop "affinity" to processors by filling their caches with data and instructions during execution. A scheduling policy that ignores this affinity may waste processing power by causing excessive cache refilling.Our work focuses on quantifying the effect of processor reallocation on the performance of various parallel applications multiprogrammed on a shared memory multiprocessor, and on evaluating how the magnitude of this cost affects the choice of scheduling policy.We first identify the components of application response time, including processor reallocation costs. Next, we measure the impact of reallocation on the cache behavior of several parallel applications executing on a Sequent Symmetry multiprocessor. We also measure, the performance of these applications under a number of alternative allocation policies. These experiments lead us to conclude that on current machines processor affinity has only a very weak influence on the choice of scheduling discipline, and that the benefits of frequent processor reallocation (in response to the changing parallelism of jobs) outweigh the penalties imposed by such reallocation. Finally, we use this experimental data to parameterize a simple analytic model, allowing us to evaluate the effect of processor affinity on future machines, those containing faster processors and larger caches.Keywords
This publication has 11 references indexed in Scilit:
- Design of scalable shared-memory multiprocessors: the DASH approachPublished by Institute of Electrical and Electronics Engineers (IEEE) ,2002
- Empirical studies of competitve spinning for a shared-memory multiprocessorPublished by Association for Computing Machinery (ACM) ,1991
- The impact of operating system scheduling policies and synchronization methods of performance of parallel applicationsPublished by Association for Computing Machinery (ACM) ,1991
- The interaction of architecture and operating system designPublished by Association for Computing Machinery (ACM) ,1991
- The effect of context switches on cache performancePublished by Association for Computing Machinery (ACM) ,1991
- The cache performance and optimizations of blocked algorithmsPublished by Association for Computing Machinery (ACM) ,1991
- Improving direct-mapped cache performance by the addition of a small fully-associative cache and prefetch buffersPublished by Association for Computing Machinery (ACM) ,1990
- Organization and performance of a two-level virtual-real cache hierarchyPublished by Association for Computing Machinery (ACM) ,1989
- PRESTO: A system for object‐oriented parallel programmingSoftware: Practice and Experience, 1988
- Footprints in the cacheACM Transactions on Computer Systems, 1987