skip to main content
10.1145/2463209.2488918acmconferencesArticle/Chapter ViewAbstractPublication PagesdacConference Proceedingsconference-collections
research-article

SSDM: smart stack data management for software managed multicores (SMMs)

Published: 29 May 2013 Publication History

Abstract

Software Managed Multicore (SMM) architectures have been proposed as a solution for scaling the memory architecture. In an SMM architecture, there are no caches, and each core has only a local scratchpad memory. If all the code and data of the task to be executed on an SMM core cannot fit on the local memory, then data must be managed explicitly in the program through DMA instructions. While all code and data need to be managed, an efficient technique to manage stack data is of utmost importance since an average of 64% of all accesses may be to stack variables [16]. In this paper, we formulate the problem of stack data management optimization on an SMM core. We then develop both an ILP and a heuristic - SSDM (Smart Stack Data Management) to find out where to insert stack data management calls in the program. Experimental results demonstrate SSDM can reduce the overhead by 13X over the state-of-the-art stack data management technique [10].

References

[1]
Intel Core i7 Processor Extreme Edition and Intel Core i7 Processor Datasheet, Volume 1. In White paper. Intel.
[2]
Raw Performance: SiSoftware Sandra 2010 Pro (GFLOPS).
[3]
The SCC Programmer's Guide. Technical report.
[4]
A. V. Aho, M. S. Lam, R. Sethi, J. D. Ullman. Compilers: Principles, Techniques, and Tools. Addison Wesley, 1986.
[5]
F. Angiolini et al. A Post-Compiler Approach to Scratchpad Mapping of Code. In Proc. of CASES, pages 259--267, 2004.
[6]
K. Bai, and A. Shrivastava. A Software-Only Scheme for Managing Heap Data on Limited Local Memory (LLM) Multi-core Processors. ACM TECS, 2013.
[7]
K. Bai, D. Lu, and A. Shrivastava. Vector Class on Limited Local Memory (LLM) Multi-core Processors. In Proc. of CASES, 2011.
[8]
K. Bai and A. Shrivastava. Heap Data Management for Limited Local Memory (LLM) Multi-core Processors. In Proc. of CODES+ISSS, 2010.
[9]
K. Bai and A. Shrivastava. Automatic and Efficient Heap Data Management for Limited Local Memory Multicore Architectures. In Proc. of DATE, 2013.
[10]
K. Bai, A. Shrivastava, and S. Kudchadker. Stack Data Management for Limited Local Memory (LLM) Multi-core Processors. In Proc. of ASAP, pages 231--234, 2011.
[11]
R. Banakar et al. Scratchpad Memory: Design Alternative for Cache on-chip Memory in Embedded Systems. In Proc. of CODES+ISSS, pages 73--78, 2002.
[12]
A. Dominguez, S. Udayakumaran, and R. Barua. Heap Data Allocation to Scratch-pad Memory in Embedded Systems. J. Embedded Comput., 1(4):521--540, 2005.
[13]
B. Egger et al. A Dynamic Code Placement Technique for Scratchpad Memory Using Postpass Optimization. In Proc. of CASES, pages 223--233, 2006.
[14]
B. Flachs et al. The Microarchitecture of the Synergistic Processor for A Cell Processor. IEEE Solid-state circuits, 41(1):63--70, 2006.
[15]
L. Gauthier and T. Ishihara. Implementation of Stack Data Placement and Run Time Management Using a Scratch-Pad Memory for Energy Consumption Reduction of Embedded Applications. IEICE, 94--A(12):2597--2608, 2011.
[16]
M. R. Guthaus et al. Mibench: A Free, Commercially Representative Embedded Benchmark Suite. Proc. of Workload Characterization, pages 3--14, 2001.
[17]
A. Janapsatya et al. A Novel Instruction Scratchpad Memory Optimization Method Based on Concomitance Metric. In Proc. of ASP-DAC, pages 612--617, 2006.
[18]
S. C. Jung, A. Shrivastava, and K. Bai. Dynamic Code Mapping for Limited Local Memory Systems. In Proc. of ASAP, pages 13--20, 2010.
[19]
M. Kandemir and A. Choudhary. Compiler-directed Scratch pad Memory Hierarchy Design and Management. In Proc. of DAC, pages 628--633, 2002.
[20]
M. Kandemir et al. Dynamic Management of Scratch-pad Memory Space. In Proc. of DAC, pages 690--695, 2001.
[21]
M. Kistler et al. Cell Multiprocessor Communication Network: Built for Speed. IEEE Micro, 26(3):10--23, May 2006.
[22]
L. Li, L. Gao, and J. Xue. Memory Coloring: A Compiler Approach for Scratchpad Memory Management. In Proc. of PACT, pages 329--338, 2005.
[23]
M. Mamidipaka and N. Dutt. On-chip Stack Based Memory Organization for Low Power Embedded Architectures. In Proc. of DATE, pages 1082--1087, 2003.
[24]
R. Mcllroy et al. Efficient Dynamic Heap Allocation of Scratch-pad Memory. In ISMM, pages 31--40, 2008.
[25]
N. Nguyen, A. Dominguez, and R. Barua. Memory Allocation for Embedded Systems with A Compile-time-unknown Scratch-pad Size. In Proc. of CASES, pages 115--125, 2005.
[26]
P. Panda et al. On-chip vs. Off-chip Memory: the Data Partitioning Problem in Embedded Processor-based Systems. In ACM TODAES, pages 682--704, 2000.
[27]
S. Park et al. A Novel Technique to Use Scratch-pad Memory for Stack Management. In Proc. of DATE, pages 1478--1483, 2007.
[28]
F. Poletti et al. An Integrated Hardware/Software Approach for Run-time Scratchpad Management. In Proc. of DAC, pages 238--243, 2004.
[29]
A. Shrivastava et al. A Software-only Solution to Use Scratch Pads for Stack Data. IEEE TCAD, 28(11):1719--1728, 2009.
[30]
S. Udayakumaran, A. Dominguez, and R. Barua. Dynamic Allocation for Scratch-pad Memory Using Compile-time Decisions. ACM TECS, 5(2):472--511, 2006.

Cited By

View all
  • (2023)A Comprehensive Memory Management Framework for CPU-FPGA Heterogenous SoCsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.317932342:4(1058-1071)Online publication date: Apr-2023
  • (2021)Design Space Optimization of Shared Memory Architecture in Accelerator-rich SystemsACM Transactions on Design Automation of Electronic Systems10.1145/344600126:4(1-31)Online publication date: 13-Mar-2021
  • (2020)NVM-Shelf: Secure Hybrid Encryption with Less Flip for Non-Volatile MemoryElectronics10.3390/electronics90813049:8(1304)Online publication date: 13-Aug-2020
  • Show More Cited By

Index Terms

  1. SSDM: smart stack data management for software managed multicores (SMMs)

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    DAC '13: Proceedings of the 50th Annual Design Automation Conference
    May 2013
    1285 pages
    ISBN:9781450320719
    DOI:10.1145/2463209
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    In-Cooperation

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 29 May 2013

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. SPM
    2. embedded systems
    3. local memory
    4. multi-core processor
    5. scratchpad memory
    6. stack data

    Qualifiers

    • Research-article

    Conference

    DAC '13
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 1,770 of 5,499 submissions, 32%

    Upcoming Conference

    DAC '25
    62nd ACM/IEEE Design Automation Conference
    June 22 - 26, 2025
    San Francisco , CA , USA

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)22
    • Downloads (Last 6 weeks)1
    Reflects downloads up to 08 Mar 2025

    Other Metrics

    Citations

    Cited By

    View all
    • (2023)A Comprehensive Memory Management Framework for CPU-FPGA Heterogenous SoCsIEEE Transactions on Computer-Aided Design of Integrated Circuits and Systems10.1109/TCAD.2022.317932342:4(1058-1071)Online publication date: Apr-2023
    • (2021)Design Space Optimization of Shared Memory Architecture in Accelerator-rich SystemsACM Transactions on Design Automation of Electronic Systems10.1145/344600126:4(1-31)Online publication date: 13-Mar-2021
    • (2020)NVM-Shelf: Secure Hybrid Encryption with Less Flip for Non-Volatile MemoryElectronics10.3390/electronics90813049:8(1304)Online publication date: 13-Aug-2020
    • (2020)Unified Thread- and Data-Mapping for Multi-Threaded Multi-Phase Applications on SPM Many-Cores2020 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE48585.2020.9116493(1496-1501)Online publication date: Mar-2020
    • (2020)Managing Scratchpad Memory Architecture for Lower Power Consumption Using Programming TechniquesAsian Journal of Applied Science and Engineering10.18034/ajase.v9i1.319:1(79-86)Online publication date: 18-May-2020
    • (2020)RSMCC: Enabling Ring-based Software Managed Cache-Coherent Embedded SoCs2020 28th Euromicro International Conference on Parallel, Distributed and Network-Based Processing (PDP)10.1109/PDP50117.2020.00026(131-135)Online publication date: Mar-2020
    • (2019)Automatic data placement for CPU-FPGA heterogeneous multiprocessor System-on-Chips2019 Design, Automation & Test in Europe Conference & Exhibition (DATE)10.23919/DATE.2019.8715190(1379-1384)Online publication date: Mar-2019
    • (2019)Management of Scratchpad Memory Using Programming TechniquesMehran University Research Journal of Engineering and Technology10.22581/muet1982.1902.0538:2(305-312)Online publication date: 1-Apr-2019
    • (2019)SA-SPM: an efficient compiler for security aware scratchpad memory (invited paper)Proceedings of the 20th ACM SIGPLAN/SIGBED International Conference on Languages, Compilers, and Tools for Embedded Systems10.1145/3316482.3326347(57-69)Online publication date: 23-Jun-2019
    • (2019)Scratchpad-Memory Management for Multi-Threaded Applications on Many-Core ArchitecturesACM Transactions on Embedded Computing Systems10.1145/330130818:1(1-28)Online publication date: 5-Feb-2019
    • Show More Cited By

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media