An approach to solve the cache thrashing problem

Zhixi Fang, Mi Lu, Hua Lin · 2002

Cache or local memory thrashing problem arises very often in parallel processing architectures where each processor has its local cache or memory and a write-back protocol is employed for cache coherence. To solve the problem of large amount of data moving back and forth between the caches or local memories in different processors, techniques associated with parallel compiler need to be developed. Based on the relations between array element accesses and enclosed loop indices in a nested parallel construct, the authors present some approaches to reduce the data movement between the caches or local memories for parallel programs. By analyzing the array subscript expressions, the compilers let the processor execute the corresponding iterations of parallel loops in terms of the data in its cache or local memory at execution time. It benefits, particularly, the parallel programs in which a parallel loop is enclosed by a sequential loop and array elements are repeatedly used in different iterations of the parallel loop.>

Read the paper · More papers on PaperTik