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 条
  • [21] A GPGPU Compiler for Memory Optimization and Parallelism Management
    Yang, Yi
    Xiang, Ping
    Kong, Jingfei
    Zhou, Huiyang
    ACM SIGPLAN NOTICES, 2010, 45 (06) : 86 - 97
  • [22] Management and Optimization for Nonvolatile Memory-Based Hybrid Scratchpad Memory on Multicore Embedded Processors
    Hu, Jingtong
    Zhuge, Qingfeng
    Xue, Chun Jason
    Tseng, Wei-Che
    Sha, Edwin H. -M.
    ACM TRANSACTIONS ON EMBEDDED COMPUTING SYSTEMS, 2014, 13 (04)
  • [23] Compiler-Directed Leakage Energy Reduction for Instruction Scratch-Pad Memories
    Yijie Huangfu
    Wei Zhang
    PROCEEDINGS OF THE FIFTEENTH INTERNATIONAL SYMPOSIUM ON QUALITY ELECTRONIC DESIGN (ISQED 2014), 2015, : 392 - 399
  • [24] Scratchpad Memory Management Using DataPrefetching
    Silva, Ivan Saraiva
    Segundo, Hildebrando
    2015 XLI LATIN AMERICAN COMPUTING CONFERENCE (CLEI), 2015, : 93 - 99
  • [25] A Novel Adaptive Scratchpad Memory Management Strategy
    Deng, Ning
    Ji, Weixing
    Li, Jiaxin
    Shi, Feng
    Wang, Yizhuo
    2009 15TH IEEE INTERNATIONAL CONFERENCE ON EMBEDDED AND REAL-TIME COMPUTING SYSTEMS AND APPLICATIONS, PROCEEDINGS, 2009, : 236 - 241
  • [26] Dynamic Data Scratchpad Memory Management for a Memory Subsystem with an MMU
    Cho, Hyungmin
    Egger, Bernhard
    Lee, Jaejin
    Shin, Heonshik
    LCTES'07: PROCEEDINGS OF THE 2007 ACM SIGPLAN-SIGBED CONFERENCE ON LANGUAGES, COMPILERS, AND TOOLS FOR EMBEDDED SYSTEMS, 2007, : 195 - 206
  • [27] Acyclic orientation graph coloring for software-managed memory allocation
    Li Wang
    JingLing Xue
    XueJun Yang
    Science China Information Sciences, 2014, 57 : 1 - 18
  • [28] Acyclic orientation graph coloring for software-managed memory allocation
    WANG Li
    XUE JingLing
    YANG XueJun
    ScienceChina(InformationSciences), 2014, 57 (09) : 40 - 57
  • [29] Acyclic orientation graph coloring for software-managed memory allocation
    Wang Li
    Xue JingLing
    Yang XueJun
    SCIENCE CHINA-INFORMATION SCIENCES, 2014, 57 (09) : 1 - 18
  • [30] SRF Coloring: Stream Register File Allocation via Graph Coloring
    Yang, Xue-Jun
    Deng, Yu
    Wang, Li
    Yan, Xiao-Bo
    Du, Jing
    Zhang, Ying
    Wang, Gui-Bin
    Tang, Tao
    JOURNAL OF COMPUTER SCIENCE AND TECHNOLOGY, 2009, 24 (01) : 152 - 164