DESIGN AND EVALUATION OF A COMPILER ALGORITHM FOR PREFETCHING

被引:3
作者
MOWRY, TC [1 ]
LAM, MS [1 ]
GUPTA, A [1 ]
机构
[1] STANFORD UNIV,COMP SYST LAB,STANFORD,CA 94305
来源
SIGPLAN NOTICES | 1992年 / 27卷 / 09期
关键词
D O I
暂无
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Software-controlled data prefetching is a promising technique for improving the performance of the memory subsystem to match today's high-performance processors. While prefetching is useful in hiding the latency, issuing prefetches incurs an instruction overhead and can increase the load on the memory subsystem. As a result, care must be taken to ensure that such overheads do not exceed the benefits. This paper proposes a compiler algorithm to insert prefetch instructions into code that operates on dense matrices. Our algorithm identifies those references that are likely to be cache misses, and issues prefetches only for them. We have implemented our algorithm in the SUIF (Stanford University Intermediate Form) optimizing compiler. By generating fully functional code, we have been able to measure not only the improvements in cache miss rates, but also the overall performance of a simulated system. We show that our algorithm significantly improves the execution speed of our benchmark programs-some of the programs improve by as much as a factor of two. When compared to an algorithm that indiscriminately prefetches all array accesses, our algorithm can eliminate many of the unnecessary prefetches without any significant decrease in the coverage of the cache misses.
引用
收藏
页码:62 / 73
页数:12
相关论文
共 29 条
[1]  
Abu-Sufah W., 1979, 1979 International Workshop on Managing Requirements Knowledge (MARK), P969, DOI 10.1109/MARK.1979.8817192
[2]  
BAER J, 1991, P SUPERCOMPUTING 91
[3]  
Bailey D., 1991, RNR91002 NASA AM RES
[4]  
CALLAHAN D, 1991, 4TH P INT C ARCH SUP, P40
[5]  
CHEN WY, 1991, P MICROCOMPUTING 24
[6]  
COLWELL RP, 1987, 2ND P INT C ARCH SUP, P180
[7]  
DEHNERT JC, 1989, 3RD P INT C ARCH SUP, P26
[8]  
FERRANTE J, 1991, 4TH WORKSH LANG COMP
[9]  
GALLIVAN K, 1987, UIUCSRD625 U ILL TEC
[10]   STRATEGIES FOR CACHE AND LOCAL MEMORY MANAGEMENT BY GLOBAL PROGRAM TRANSFORMATION [J].
GANNON, D ;
JALBY, W ;
GALLIVAN, K .
JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 1988, 5 (05) :587-616