SOFTWARE ASSISTANCE FOR DATA CACHES

被引:2
|
作者
TEMAM, O [1 ]
DRACH, N [1 ]
机构
[1] ORSAY UNIV,LRI,ORSAY 91,FRANCE
关键词
SOFTWARE-ASSISTED CACHES; DATA LOCALITY; NUMERICAL CODES;
D O I
10.1016/0167-739X(95)00022-K
中图分类号
TP301 [理论、方法];
学科分类号
081202 ;
摘要
Hardware and software cache optimizations are active fields of research, that have yielded powerful but occasionally complex designs and algorithms. The purpose of this paper is to investigate the performance of combined through simple software and hardware optimizations. Because current caches provide little flexibility for exploiting temporal and spatial locality, two hardware modifications are proposed to support these two kinds of locality. Spatial locality is exploited by using large virtual cache lines which do not exhibit the performance flaws of large physical cache lines. Temporal locality is exploited by minimizing cache pollution with a bypass mechanism that still allows to exploit spatial locality. Subsequently, it is shown that simple software informations on the spatial/temporal locality of array references, as provided by current data locality optimization algorithms, can be used to increase cache performance significantly. The performance and design tradeoffs of the proposed mechanisms are discussed, Software-assisted caches are also shown to provide a very convenient support for further enhancement of data locality optimizations.
引用
收藏
页码:519 / 536
页数:18
相关论文
共 50 条
  • [1] Parallel software caches
    Formella, A
    Keller, J
    [J]. SOLVING IRREGULARLY STRUCTURED PROBLEMS IN PARALLEL, 1997, 1253 : 219 - 232
  • [2] An Instruction to Accelerate Software Caches
    Azevedo, Arnaldo
    Juurlink, Ben
    [J]. ARCHITECTURE OF COMPUTING SYSTEMS - ARCS 2011, 2011, 6566 : 158 - +
  • [3] Software Data Spreading: Leveraging Distributed Caches to Improve Single Thread Performance
    Kamruzzaman, Md
    Swanson, Steven
    Tullsen, Dean M.
    [J]. ACM SIGPLAN NOTICES, 2010, 45 (06) : 460 - 470
  • [4] Software Data Spreading: Leveraging Distributed Caches to Improve Single Thread Performance
    Kamruzzaman, Md
    Swanson, Steven
    Tullsen, Dean M.
    [J]. PLDI '10: PROCEEDINGS OF THE 2010 ACM SIGPLAN CONFERENCE ON PROGRAMMING LANGUAGE DESIGN AND IMPLEMENTATION, 2010, : 460 - 470
  • [5] Software-Defined Caching: Managing Caches in Multi-Tenant Data Centers
    Stefanovici, Ioan
    Thereska, Eno
    O'Shea, Greg
    Schroeder, Bianca
    Ballani, Hitesh
    Karagiannis, Thomas
    Rowstron, Antony
    Talpey, Tom
    [J]. ACM SOCC'15: PROCEEDINGS OF THE SIXTH ACM SYMPOSIUM ON CLOUD COMPUTING, 2015, : 174 - 181
  • [6] Thread-shared software code caches
    Bruening, Derek
    Kiriansky, Vladimir
    Garnett, Timothy
    Banerji, Sanjeev
    [J]. CGO 2006: 4TH INTERNATIONAL SYMPOSIUM ON CODE GENERATION AND OPTIMIZATION, 2006, : 28 - 38
  • [7] Timing analysis for data caches and set-associative caches
    White, RT
    Mueller, F
    Healy, CA
    Whalley, DB
    Harmon, MG
    [J]. THIRD IEEE REAL-TIME TECHNOLOGY AND APPLICATIONS SYMPOSIUM, PROCEEDINGS, 1997, : 192 - 202
  • [8] Associative caches in formal software timing analysis
    Wolf, F
    Staschulat, J
    Ernst, R
    [J]. 39TH DESIGN AUTOMATION CONFERENCE, PROCEEDINGS 2002, 2002, : 622 - 627
  • [9] Integrating Software Caches with Scratch Pad Memory
    Chakraborty, Prasenjit
    Panda, Preeti Ranjan
    [J]. CASES'12: PROCEEDINGS OF THE 2012 ACM INTERNATIONAL CONFERENCE ON COMPILERS, ARCHITECTURES AND SYNTHESIS FOR EMBEDDED SYSTEMS, 2012, : 201 - 210
  • [10] Jigsaw: Scalable Software-Defined Caches
    Beckmann, Nathan
    Sanchez, Daniel
    [J]. 2013 22ND INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES (PACT), 2013, : 213 - 224