Prefetching Irregular References for Software Cache on Cell

被引:0
|
作者
Chen, Tong [1 ]
Zhang, Tao [1 ]
Sura, Zehra [1 ]
Tallada, Marc Gonzalez [1 ]
O'Brien, Kathryn [1 ]
O'Brien, Kevin [1 ]
机构
[1] IBM Corp, Thomas J Watson Res Ctr, Yorktown Hts, NY USA
关键词
DMA; prefetch; software cache;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
The IBM Single Source Research Compiler for the Cell processor (the SSC Research Compiler) was developed to manage the complexity of programming the heterogeneous multi-core Cell processor. The compiler accepts conventional source programs as input, and automatically generates binaries that execute on both the PPU and SPU cores available on a Cell chip. The compiler uses a software cache and direct buffers to manage data in the small local memory of SPUs. However, irregular references, such as a[ind[i]], often become performance bottle-necks. These references are accessed through software cache, usually with high miss rates. To solve this problem, we propose a method to prefetch irregular references accessed through a software cache that is built; upon hardware such as Cell. This method includes code transformation in the compiler and a runtime library component for the software cache. Our design simplifies the synchronization required when prefetching into software cache, overlaps DMA operations for misses, and avoids frequent context switching to the miss handler. It also minimizes the cache pollution caused by prefetching, by looking both forwards and backwards through the sequence of addresses to be prefetched. We evaluated our prefetching method using the NAS benchmarks. We found that when applicable, our prefetching can improve the performance of some benchmarks by 2 times oil average, and by close to 4 times in the best case. We also present data to show the impact of different configurations and optimizations when prefetching in a software cache.
引用
收藏
页码:155 / 164
页数:10
相关论文
共 50 条
  • [21] Software prefetching for software pipelined loops
    Sanchez, FJ
    Gonzalez, A
    PROCEEDINGS OF THE THIRTY-FIRST HAWAII INTERNATIONAL CONFERENCE ON SYSTEM SCIENCES, VOL VII: SOFTWARE TECHNOLOGY TRACK, 1998, : 778 - 779
  • [22] MITHRIL: Mining Sporadic Associations for Cache Prefetching
    Yang, Juncheng
    Karimi, Reza
    Saemundsson, Trausti
    Wildani, Avani
    Vigfusson, Ymir
    PROCEEDINGS OF THE 2017 SYMPOSIUM ON CLOUD COMPUTING (SOCC '17), 2017, : 66 - 79
  • [23] A prefetching algorithm for improving web cache performance
    Umapathi, C.
    Raja, J.
    Journal of Applied Sciences, 2006, 6 (15) : 3122 - 3127
  • [24] A performance study of instruction cache prefetching methods
    Hsu, WC
    Smith, JE
    IEEE TRANSACTIONS ON COMPUTERS, 1998, 47 (05) : 497 - 508
  • [25] SARC: Sequential prefetching in adaptive replacement cache
    Gill, BS
    Modha, DS
    USENIX ASSOCIATION PROCEEDINGS OF THE GENERAL TRACK: 2005 UNENIX ANNUAL TECHNICAL CONFERENCE, 2005, : 293 - 308
  • [26] Instruction cache prefetching directed by branch prediction
    Chiu, JC
    Shiu, RM
    Chi, SA
    Chung, CP
    IEE PROCEEDINGS-COMPUTERS AND DIGITAL TECHNIQUES, 1999, 146 (05): : 241 - 246
  • [27] Instruction cache prefetching directed by branch prediction
    Institute of Computer Science and Information Engineering, National Chiao Tung University, Hsinchu 30050, Taiwan
    IEE Proc Comput Digital Tech, 5 (241-246):
  • [28] Markov Tree Prediction on Web Cache Prefetching
    Feng, Wenying
    Man, Shushuang
    Hu, Gongzhu
    SOFTWARE ENGINEERING, ARTIFICIAL INTELLIGENCE, NETWORKING AND PARALLEL/DISTRIBUTED COMPUTING, 2009, 209 : 105 - +
  • [29] COMPILERS NEW ROLE IN DATA CACHE PREFETCHING
    CHI, CH
    INFORMATION PROCESSING '94, VOL I: TECHNOLOGY AND FOUNDATIONS, 1994, 51 : 189 - 194
  • [30] Combative Cache Efficacy Techniques: Cache Replacement in the Context of Independent Prefetching in Last Level Cache
    Gomes, Cesar
    Hempstead, Mark
    2015 33RD IEEE INTERNATIONAL CONFERENCE ON COMPUTER DESIGN (ICCD), 2015, : 423 - 426