Improving cache performance in dynamic applications through data and computation reorganization at run time

被引:61
|
作者
Ding, C [1 ]
Kennedy, K [1 ]
机构
[1] Rice Univ, Dept Comp Sci, Houston, TX 77005 USA
关键词
D O I
10.1145/301631.301670
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
With the rapid improvement of processor speed, performance of the memory hierarchy has become the principal bottleneck for most applications. A number of compiler transformations have been developed to improve data reuse in cache and registers, thus reducing the total number of direct memory accesses in a program. Until now, however, most data reuse transformations have been static-applied only at compile time. As a result, these transformations cannot be used to optimize irregular and dynamic applications, in which the data layout and data access patterns remain unknown until run time and may even change during the computation. In this paper, we explore ways to achieve better data reuse in irregular and dynamic applications by building on the inspector-executor method used by Saltz for run-time parallelization. In particular, we present and evaluate a dynamic approach for improving both computation and data locality in irregular programs. Our results demonstrate that run-time program transformations can substantially improve computation and data locality and, despite the complexity and cost involved, a compiler can automate such transformations, eliminating much of the associated run-time overhead.
引用
收藏
页码:229 / 241
页数:13
相关论文
共 50 条
  • [1] Improving I/O Performance for Exascale Applications Through Online Data Layout Reorganization
    Wan, Lipeng
    Huebl, Axel
    Gu, Junmin
    Poeschel, Franz
    Gainaru, Ana
    Wang, Ruonan
    Chen, Jieyang
    Liang, Xin
    Ganyushin, Dmitry
    Munson, Todd
    Foster, Ian
    Vay, Jean-Luc
    Podhorszki, Norbert
    Wu, Kesheng
    Klasky, Scott
    [J]. IEEE TRANSACTIONS ON PARALLEL AND DISTRIBUTED SYSTEMS, 2022, 33 (04) : 878 - 890
  • [2] Improving cache performance through tiling and data alignment
    Panda, PR
    Nakamura, H
    Dutt, ND
    Nicolau, A
    [J]. SOLVING IRREGULARLY STRUCTURED PROBLEMS IN PARALLEL, 1997, 1253 : 167 - 185
  • [3] Improving cache performance in mobile computing networks through dynamic object relocation
    Lai, KY
    Tari, Z
    Bertok, P
    [J]. TENTH INTERNATIONAL CONFERENCE ON PARALLEL AND DISTRIBUTED SYSTEMS, PROCEEDINGS, 2004, : 37 - 45
  • [4] Dynamic Cache Management in Multi-Core Architectures through Run-time Adaptation
    Hameed, Fazal
    Bauer, Lars
    Henkel, Joerg
    [J]. DESIGN, AUTOMATION & TEST IN EUROPE (DATE 2012), 2012, : 485 - 490
  • [5] Cache-aware volume rendering methods with dynamic data reorganization
    Zhu, Ruiyun
    Misaki, Yuji
    Wallden, Marcus
    Ino, Fumihiko
    [J]. JOURNAL OF VISUALIZATION, 2021, 24 (02) : 275 - 288
  • [6] Cache-aware volume rendering methods with dynamic data reorganization
    Ruiyun Zhu
    Yuji Misaki
    Marcus Walldén
    Fumihiko Ino
    [J]. Journal of Visualization, 2021, 24 : 275 - 288
  • [7] A data alignment technique for improving cache performance
    Panda, PR
    Nakamura, H
    Dutt, ND
    Nicolau, A
    [J]. INTERNATIONAL CONFERENCE ON COMPUTER DESIGN - VLSI IN COMPUTERS AND PROCESSORS, PROCEEDINGS, 1997, : 587 - 592
  • [8] DBProxy: A dynamic data cache for Web applications
    Amiri, K
    Park, S
    Tewari, R
    Padmanabhan, S
    [J]. 19TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING, PROCEEDINGS, 2003, : 821 - 831
  • [9] Interprocedural optimizations for improving data cache performance of array-intensive embedded applications
    Zhang, W
    Chen, G
    Kandemir, M
    Karakoy, M
    [J]. 40TH DESIGN AUTOMATION CONFERENCE, PROCEEDINGS 2003, 2003, : 887 - 892
  • [10] Run-Time Reference Clustering for cache performance optimization
    Kaplow, WK
    Szymanski, BK
    Tannenbaum, P
    Viktor, K
    [J]. SECOND AIZU INTERNATIONAL SYMPOSIUM ON PARALLEL ALGORITHMS/ARCHITECTURE SYNTHESIS, PROCEEDINGS, 1997, : 42 - 49