Title :
Processor Aware Anticipatory Prefetching in Loops
Author :
Kalogeropulos, Spiros ; Rajagopalan, Mahadevan ; Rao, Vikram ; Song, Yonghong ; Tirumalai, Partha
Author_Institution :
Sun Microsystems, Inc.
Abstract :
As microprocessor speeds increase, a large fraction of the execution time is often lost to cache miss penalties. This loss can be particularly severe in processors such as the UltraSPARC-IIICu which have in-order execution and block on cache misses. Such processors rely greatly on the compiler to reduce stalls and achieve high performance. This paper describes a compiler technique for software prefetching that is aware of the specific prefetch behaviors of the target processor. The implementation targets loops containing control-flow and strided or irregular memory access patterns. A two phase locality analysis, capable of handling complex subscript expressions, is used for enhanced identification of prefetch candidates. Prefetch instructions are scheduled with careful consideration of the prefetch behaviors in the target system. Compared to a previous implementation, our technique produced performance improvements of 9% on the geometric mean, and up to 44% on individual tests, in Sun’s first UltraSPARC-IIICu based SPEC CPU2000 submission [5] and has been used in all later submissions to date.
Keywords :
Bandwidth; Costs; Delay; Electronic mail; Hardware; Intelligent networks; Performance loss; Prefetching; Sun;
Conference_Titel :
Software, IEE Proceedings-
Print_ISBN :
0-7695-2053-7
DOI :
10.1109/HPCA.2004.10029