Thread Scheduling for Cache Locality

Report ID: TR-569-96
Author: Douglas, Craig C. / Edler, Jan / Li, Kai / Anshus, Otto J. / Philbin, James
Date: 1996-12-00
Pages: 12
Download Formats: |Postscript|
Abstract:

This paper describes a method to improve the cache locality of sequential programs by scheduling fine-grained threads. The algorithm relies upon hints provided at the time of thread creation to determine a thread execution order likely to reduce cache misses. This technique may be particularly valuable when compiler-directed tiling is not feasible. Experiments with several application programs, on two systems with different cache structures, show that our thread scheduling method can improve program performance by reducing second-level cache misses.

This technical report has been published as
Thread Scheduling for Cache Locality. James Philbin, Jan Edler, Otto J. Anshus, Craig C. Douglas, and Kai Li, in Proceedings of the ACM Architectural Support for Programming Language and Operating Systems, October 1996.