A Cache-aware program transformation technique suitable for embedded systems

被引:2
|
作者
Bartolini, S [1 ]
Prete, CA [1 ]
机构
[1] Univ Pisa, Dipartimento Ingn Informaz, I-56127 Pisa, Italy
关键词
conflict misses; embedded systems; program reordering; Cache utilization;
D O I
10.1016/S0950-5849(02)00107-6
中图分类号
TP [自动化技术、计算机技术];
学科分类号
0812 ;
摘要
In embedded systems caches are very precious for keeping low the memory bandwidth and to allow employing slow and narrow off-chip devices. Conversely, the power and die size resources consumed by the cache force the embedded system designers to use small and simple cache memories. This kind of caches can experience poor performance because of their not flexible placement policy. In this scenario, a big fraction of the misses can originate from the mismatch between the cache behavior and the memory accesses' locality features (conflict misses). In this paper we analyze the conflict miss phenomenon and define a cache utilization measure. Then we propose an object level Cache Aware allocation Technique (CAT) to transform the application to fit the cache structure, minimize the number of conflict misses and maximize cache exploitation. The solution transforms the program layout using the standard functionalities of a linker. The CAT approach allowed the considered applications to deliver the same performance on two times and sometimes four times smaller caches. Moreover the CAT improved programs on direct-mapped caches outperformed the original versions on set-associative caches. In this way, the results highlight that our approach can help embedded system designers to meet the system requirements with smaller and simpler cache memories. (C) 2002 Elsevier Science B.V. All rights reserved.
引用
收藏
页码:783 / 795
页数:13
相关论文
共 50 条
  • [1] A cache-aware scheduling algorithm for embedded systems
    Luculli, G
    Di Natale, M
    18TH IEEE REAL-TIME SYSTEMS SYMPOSIUM, PROCEEDINGS, 1997, : 199 - 209
  • [2] Assigning program to cache-aware scratchpad concerning the influence of the whole embedded system
    Chen Tianzhou
    Zhao Yi
    Hu Wei
    NAS: 2006 INTERNATIONAL WORKSHOP ON NETWORKING, ARCHITECTURE, AND STORAGES, PROCEEDINGS, 2006, : 133 - +
  • [3] On Cache-Aware Task Partitioning for Multicore Embedded Real-Time Systems
    Lindsay, Aaron
    Ravindran, Binoy
    2014 IEEE INTERNATIONAL CONFERENCE ON HIGH PERFORMANCE COMPUTING AND COMMUNICATIONS, 2014 IEEE 6TH INTL SYMP ON CYBERSPACE SAFETY AND SECURITY, 2014 IEEE 11TH INTL CONF ON EMBEDDED SOFTWARE AND SYST (HPCC,CSS,ICESS), 2014, : 677 - 684
  • [4] Cache-Aware Computation Offloading in IoT Systems
    Wei, Hua
    Luo, Hong
    Sun, Yan
    Obaidat, Mohammad S.
    IEEE SYSTEMS JOURNAL, 2020, 14 (01): : 61 - 72
  • [5] Cache-aware scratchpad-allocation algorithms for energy-constrained embedded systems
    Verma, Manish
    Wehmeyer, Lars
    Marwedel, Peter
    IEEE TRANSACTIONS ON COMPUTER-AIDED DESIGN OF INTEGRATED CIRCUITS AND SYSTEMS, 2006, 25 (10) : 2035 - 2051
  • [6] Cache-Aware Development of High-Integrity Systems
    Mezzetti, Enrico
    Betts, Adam
    Ruiz, Jose
    Vardanega, Tullio
    RELIABLE SOFTWARE TECHNOLOGIES - ADA-EUROPE 2010, 2010, 6106 : 139 - +
  • [7] Cache-Aware Matrix Polynomials
    Huber, Dominik
    Schreiber, Martin
    Yang, Dai
    Schulz, Martin
    COMPUTATIONAL SCIENCE - ICCS 2020, PT I, 2020, 12137 : 132 - 146
  • [8] Cache-Aware Source Coding
    Hanna, Osama A.
    Nafie, Mohammed
    El-Keyi, Amr
    IEEE COMMUNICATIONS LETTERS, 2018, 22 (06) : 1144 - 1147
  • [9] Cache-aware and cache-oblivious adaptive sorting
    Brodal, GS
    Fagerberg, R
    Moruz, G
    AUTOMATA, LANGUAGES AND PROGRAMMING, PROCEEDINGS, 2005, 3580 : 576 - 588
  • [10] CAGE: Cache-Aware Graphlet Enumeration
    Conte, Alessio
    Grossi, Roberto
    Rucci, Davide
    STRING PROCESSING AND INFORMATION RETRIEVAL, SPIRE 2023, 2023, 14240 : 129 - 142