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 条
  • [21] CATS: cache-aware task scheduling for Hadoop-based systems
    Byungnam Lim
    Jong Wook Kim
    Yon Dohn Chung
    Cluster Computing, 2017, 20 : 3691 - 3705
  • [22] Cache-Aware Task Partitioning for Multicore Real-Time Systems
    Starke, Renan Augusto
    de Oliveira, Romulo Silva
    2013 III BRAZILIAN SYMPOSIUM ON COMPUTING SYSTEMS ENGINEERING (SBESC 2013), 2013, : 89 - 94
  • [23] An overview of cache optimization techniques and cache-aware numerical algorithms
    Kowarschik, M
    Weiss, C
    ALGORITHMS FOR MEMORY HIERARCHIES: ADVANCED LECTURES, 2003, 2625 : 213 - 232
  • [24] On the importance of cache tuning in a cache-aware algorithm:: A case study
    Burcsi, Peter
    Kovacs, Attila
    COMPUTERS & MATHEMATICS WITH APPLICATIONS, 2007, 53 (06) : 880 - 885
  • [25] Cache-aware Roofline model: Upgrading the loft
    Ilic, Aleksandar
    Pratas, Frederico
    Sousa, Leonel
    IEEE COMPUTER ARCHITECTURE LETTERS, 2014, 13 (01) : 21 - 24
  • [26] Robust Cache-Aware Quantum Processor Layout
    LeCompte, Travis
    Qi, Fang
    Peng, Lu
    2020 INTERNATIONAL SYMPOSIUM ON RELIABLE DISTRIBUTED SYSTEMS (SRDS 2020), 2020, : 276 - 287
  • [27] Cache-aware timing analysis of streaming applications
    Samarjit Chakraborty
    Tulika Mitra
    Abhik Roychoudhury
    Lothar Thiele
    Real-Time Systems, 2009, 41 : 52 - 85
  • [28] Cache-aware timing analysis of streaming applications
    Chakraborty, Samarjit
    Mitra, Tulika
    Roychoudhury, Abhik
    Thiele, Lothar
    REAL-TIME SYSTEMS, 2009, 41 (01) : 52 - 85
  • [29] Cache-aware query routing in a cluster of databases
    Röhm, U
    Böhm, K
    Schek, HJ
    17TH INTERNATIONAL CONFERENCE ON DATA ENGINEERING, PROCEEDINGS, 2001, : 641 - 650
  • [30] Cache-Aware Dynamic Classification and Scheduling for Linux
    Gollapudi, Ravi Theja
    Yuksek, Gokturk
    Ghose, Kanad
    2019 IEEE SYMPOSIUM IN LOW-POWER AND HIGH-SPEED CHIPS (COOL CHIPS 22), 2019,