Compiler-Directed Scratchpad Memory Management via Graph Coloring

被引:28
|
作者
Li, Lian [1 ]
Feng, Hui [1 ]
Xue, Jingling [1 ]
机构
[1] Univ New S Wales, Sch Comp Sci & Engn, Programming Languages & Compilers Grp, Sydney, NSW 2052, Australia
基金
澳大利亚研究理事会;
关键词
Algorithms; Languages; Experimentation; Performance; Scratchpad memory; software-managed cache; memory allocation; graph coloring; memory coloring; live range splitting; register coalescing;
D O I
10.1145/1582710.1582711
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
Scratchpad memory (SPM), a fast on-chip SRAM managed by software, is widely used in embedded systems. This article introduces a general-purpose compiler approach, called memory coloring, to assign static data aggregates, such as arrays and structs, in a program to an SPM. The novelty of this approach lies in partitioning the SPM into a pseudo-register file (with interchangeable and aliased registers), splitting the live ranges of data aggregates to create potential data transfer statements between SPM and off-chip memory, and finally, adapting an existing graph coloring algorithm for register allocation to assign the data aggregates to the pseudo-register file. Our experimental results using a set of 10 C benchmarks from MediaBench and MiBench show that our methodology is capable of managing SPMs efficiently and effectively for large embedded applications. In addition, our SPM allocator can obtain close to optimal solutions when evaluated and compared against an existing heuristics-based SPM allocator and an ILP-based SPM allocator.
引用
收藏
页数:17
相关论文
共 50 条
  • [41] Another look at graph coloring via propositional satisfiability
    Van Gelder, Allen
    DISCRETE APPLIED MATHEMATICS, 2008, 156 (02) : 230 - 243
  • [42] DISTRIBUTED (Δ+1)-COLORING VIA ULTRAFAST GRAPH SHATTERING
    Chang, Yi-Jun
    Li, Wenzheng
    Pettie, Seth
    SIAM JOURNAL ON COMPUTING, 2020, 49 (03) : 497 - 539
  • [43] Graph Coloring via Clique Search with Symmetry Breaking
    Szabo, Sandor
    Zavalnij, Bogdan
    SYMMETRY-BASEL, 2022, 14 (08):
  • [44] An improved approach of register allocation via graph coloring
    Gao, L
    Shi, C
    Embedded Processors for Multimedia and Communications II, 2005, 5683 : 113 - 123
  • [45] Scratchpad Memory Management Techniques for Code in Embedded Systems without an MMU
    Egger, Bernhard
    Kim, Seungkyun
    Jang, Choonki
    Lee, Jaejin
    Min, Sang Lyul
    Shin, Heonshik
    IEEE TRANSACTIONS ON COMPUTERS, 2010, 59 (08) : 1047 - 1062
  • [46] Picasso: Memory-Efficient Graph Coloring Using Palettes With Applications in Quantum Computing
    Ferdous, S. M.
    Neff, Reece
    Peng, Bo
    Shuvo, Salman
    Minutoli, Marco
    Mukherjee, Sayak
    Kowalski, Karol
    Becchi, Michela
    Halappanavar, Mahantesh
    PROCEEDINGS 2024 IEEE INTERNATIONAL PARALLEL AND DISTRIBUTED PROCESSING SYMPOSIUM, IPDPS 2024, 2024, : 241 - 252
  • [47] Space-address decoupled scratchpad memory management for neural network accelerators
    Zhang, Zhenxing
    Sun, Shiyan
    Chen, Xunyu
    Zhi, Tian
    Guo, Qi
    Chen, Yunji
    CONCURRENCY AND COMPUTATION-PRACTICE & EXPERIENCE, 2021, 33 (06):
  • [48] Coloring in Graph Streams via Deterministic and Adversarially Robust Algorithms
    Assadi, Sepehr
    Chakrabarti, Amit
    Ghosh, Prantar
    Stoeckl, Manuel
    PROCEEDINGS OF THE 42ND ACM SIGMOD-SIGACT-SIGAI SYMPOSIUM ON PRINCIPLES OF DATABASE SYSTEMS, PODS 2023, 2023, : 141 - 153
  • [49] Low-Cost mmWave MIMO Multi-Streaming via Bi-Clustering, Graph Coloring, and Hybrid Beamforming
    Ghasemi, Ahmad
    Zekavat, Seyed A.
    IEEE TRANSACTIONS ON WIRELESS COMMUNICATIONS, 2021, 20 (07) : 4113 - 4127
  • [50] Graph Coloring via Locally-Active Memristor Oscillatory Networks
    Ascoli, Alon
    Weiher, Martin
    Herzig, Melanie
    Slesazeck, Stefan
    Mikolajick, Thomas
    Tetzlaff, Ronald
    JOURNAL OF LOW POWER ELECTRONICS AND APPLICATIONS, 2022, 12 (02)