Performance Implications of Cache Affinity on Multicore Processors
Source: Simon Fraser University
Cache affinity between a process and a processor is observed when the processor cache has accumulated some amount of the process state, i.e., data or instructions. Cache affinity is exploited by OS schedulers: they tend to reschedule processes to run on a recently used processor. On conventional (unicore) multiprocessor systems, exploitation of cache affinity improves performance. It is not yet known, however, whether similar performance improvements would be observed on multi-core processors. Understanding these effects is crucial for design of efficient multi-core scheduling algorithms.