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 2013Publication 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.Google ScholarGoogle Scholar
  2. Raw Performance: SiSoftware Sandra 2010 Pro (GFLOPS).Google ScholarGoogle Scholar
  3. The SCC Programmer's Guide. Technical report.Google ScholarGoogle Scholar
  4. A. V. Aho, M. S. Lam, R. Sethi, J. D. Ullman. Compilers: Principles, Techniques, and Tools. Addison Wesley, 1986. Google ScholarGoogle ScholarDigital LibraryDigital Library
  5. F. Angiolini et al. A Post-Compiler Approach to Scratchpad Mapping of Code. In Proc. of CASES, pages 259--267, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle Scholar
  7. K. Bai, D. Lu, and A. Shrivastava. Vector Class on Limited Local Memory (LLM) Multi-core Processors. In Proc. of CASES, 2011. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. K. Bai and A. Shrivastava. Heap Data Management for Limited Local Memory (LLM) Multi-core Processors. In Proc. of CODES+ISSS, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. K. Bai and A. Shrivastava. Automatic and Efficient Heap Data Management for Limited Local Memory Multicore Architectures. In Proc. of DATE, 2013. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. B. Egger et al. A Dynamic Code Placement Technique for Scratchpad Memory Using Postpass Optimization. In Proc. of CASES, pages 223--233, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. B. Flachs et al. The Microarchitecture of the Synergistic Processor for A Cell Processor. IEEE Solid-state circuits, 41(1):63--70, 2006.Google ScholarGoogle ScholarCross RefCross Ref
  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.Google ScholarGoogle Scholar
  16. M. R. Guthaus et al. Mibench: A Free, Commercially Representative Embedded Benchmark Suite. Proc. of Workload Characterization, pages 3--14, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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.Google ScholarGoogle ScholarCross RefCross Ref
  19. M. Kandemir and A. Choudhary. Compiler-directed Scratch pad Memory Hierarchy Design and Management. In Proc. of DAC, pages 628--633, 2002. Google ScholarGoogle ScholarDigital LibraryDigital Library
  20. M. Kandemir et al. Dynamic Management of Scratch-pad Memory Space. In Proc. of DAC, pages 690--695, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. M. Kistler et al. Cell Multiprocessor Communication Network: Built for Speed. IEEE Micro, 26(3):10--23, May 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. R. Mcllroy et al. Efficient Dynamic Heap Allocation of Scratch-pad Memory. In ISMM, pages 31--40, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. S. Park et al. A Novel Technique to Use Scratch-pad Memory for Stack Management. In Proc. of DATE, pages 1478--1483, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. F. Poletti et al. An Integrated Hardware/Software Approach for Run-time Scratchpad Management. In Proc. of DAC, pages 238--243, 2004. Google ScholarGoogle ScholarDigital LibraryDigital Library
  29. A. Shrivastava et al. A Software-only Solution to Use Scratch Pads for Stack Data. IEEE TCAD, 28(11):1719--1728, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  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. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

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

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in
    • 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

      Copyright © 2013 ACM

      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]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 29 May 2013

      Permissions

      Request permissions about this article.

      Request Permissions

      Check for updates

      Qualifiers

      • research-article

      Acceptance Rates

      Overall Acceptance Rate1,770of5,499submissions,32%

      Upcoming Conference

      DAC '24
      61st ACM/IEEE Design Automation Conference
      June 23 - 27, 2024
      San Francisco , CA , USA

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader