skip to main content
10.1145/2039370.2039380acmconferencesArticle/Chapter ViewAbstractPublication PagesesweekConference Proceedingsconference-collections
research-article

SoC-TM: integrated HW/SW support for transactional memory programming on embedded MPSoCs

Published:09 October 2011Publication History

ABSTRACT

Two overriding concerns in the development of embedded MPSoCs are ease of programming and hardware complexity. In this paper we present SoC-TM, an integrated HW/SW solution for transactional programming on embedded MPSoCs. Our proposal leverages a Hardware Transactional Memory (HTM) design, based on a dedicated HW module for conflict management, whose functionality is exposed to the software through compiler directives, implemented as an extension to the popular OpenMP programming model. To further improve ease of programming, our framework supports speculative parallelism, thanks to the ability of enforcing a given commit order in hardware. Our experimental results confirm that SoC-TM is a viable and cost-effective solution for embedded MPSoCs, in terms of energy, performance and productivity.

References

  1. W. Baek, C. C. Minh, M. Trautmann, C. Kozyrakis, and K. Olukotun. The OpenTM transactional application programming interface. In PACT, pages 376--387, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. B. H. Bloom. Space/time trade-offs in hash coding with allowable errors. Commun. ACM, 13:422--426, July 1970. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. L. Ceze, J. Tuck, J. Torrellas, and C. Cascaval. Bulk disambiguation of speculative threads in multiprocessors. In ISCA, pages 227--238, 2006. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. EEMBC. Eembc, the embedded microprocessor benchmark consortium. http://www.eembc.org.Google ScholarGoogle Scholar
  5. C. Ferri, S. Wood, T. Moreshet, R. I. Bahar, and M. Herlihy. Embedded-tm: Energy and complexity-effective hardware transactional memory for embedded multicore systems. Journal of Parallel and Distributed Computing, 70(10):1042--1052, October 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. M. R. Guthaus, J. S. Ringenberg, D. Ernst, T. M. Austin, T. Mudge, and R. B. Brown. Mibench: A free, commercially representative embedded benchmark suite. In IEEE International Workshop on Workload Characterization, pages 3--14, 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  7. T. Harris, J. R. Larus, and R. Rajwar. Transactional memory, 2nd edition. Synthesis Lectures on Computer Architecture, 5(1):1--263, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. A. Kejariwal, A. V. Veidenbaum, A. Nicolau, M. Girkar, X. Tian, and H. Saito. On the exploitation of loop-level parallelism in embedded applications. ACM Trans. Embed. Comput. Syst., 8:10:1--10:34, February 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. L. Kunz, G. Girão, and F. Wagner. Evaluation of a hardware transactional memory model in an NoC-based embedded MPSoC. In SBCCI, pages 85--90, São Paulo, Brazil, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. F. Liu and V. Chaudhary. Extending OpenMP for heterogeneous chip multiprocessors. In International Conference on Parallel Processing, pages 161--168, 2003.Google ScholarGoogle ScholarCross RefCross Ref
  11. A. Marongiu and L. Benini. An OpenMP compiler for efficient use of distributed scratchpad memory in MPSoCs. Computers, IEEE Transactions on, PP(99):1, 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  12. M. Mehrara, J. Hao, P.-C. Hsu, and S. Mahlke. Parallelizing sequential applications on commodity hardware using a low-cost software transactional memory. SIGPLAN Not., 44:166--176, June 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Q. Meunier and F. Petrot. Lightweight transactional memory systems for nocs based architectures: Design, implementation and comparison of two policies. Journal of Parallel and Distributed Computing, 70(10):1024--1041, October 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. M. Milovanovic, R. Ferrer, O. Unsal, A. Cristal, X. Martorell, E. Ayguadé, J. Labarta, and M. Valero. Transactional memory and OpenMP. In B. Chapman, editor, A Practical Programming Model for the Multi-Core Era, pages 37--53. Springer Berlin/Heidelberg, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. C. C. Minh, J. Chung, C. Kozyrakis, and K. Olukotun. STAMP: Stanford transactional applications for multi-processing. In International Symposium on Workload Characterization, Sept. 2008.Google ScholarGoogle Scholar
  16. NVIDIA website. NVIDIA Tegra-2. http://www.nvidia.com/object/tegra-2.html.Google ScholarGoogle Scholar
  17. K. O'Brien, K. O'Brien, Z. Sura, T. Chen, and T. Zhang. Supporting OpenMP on cell. In International Workshop on OpenMP, pages 65--76, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. M. K. Prabhu and K. Olukotun. Exposing speculative thread parallelism in spec2000. In ACM Symposium on Principles and Practice of Parallel Programming, pages 142--152, 2005. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Qualcomm Inc. Snapdragon MSM8660 and APQ8060 Product Brief. http://www.qualcomm.com/documents/snapdragon-msm8x60-apq8060-product-brief.Google ScholarGoogle Scholar
  20. R. Quislant, E. Gutierrez, O. Plata, and E. L. Zapata. Improving signatures by locality exploitation for transactional memory. In PACT, pages 303--312, 2009. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. D. Sanchez, L. Yen, M. D. Hill, and K. Sankaralingam. Implementing signatures for transactional memory. In International Symposium on Microarchitecture, pages 123--133, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. A. Shriraman, S. Dwarkadas, and M. L. Scott. Implementation tradeoffs in the design of flexible transactional memory support. Journal of Parallel and Distributed Computing, 70(10):1068--1084, October 2010. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. C. von Praun, L. Ceze, and C. Caşcaval. Implicit parallelism with ordered transactions. In 12th symposium on Principles and practice of parallel programming, PPoPP '07, pages 79--89, New York, NY, USA, 2007. ACM. Google ScholarGoogle ScholarDigital LibraryDigital Library
  24. L. Yen, J. Bobba, M. R. Marty, K. E. Moore, H. Volos, M. D. Hill, M. M. Swift, and D. A. Wood. LogTM-SE: Decoupling hardware transactional memory from caches. In HPCA, pages 261--272, 2007. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. L. Yen, S. C. Draper, and M. D. Hill. Notary: Hardware techniques to enhance signatures. In International Symposium on Microarchitecture, pages 234--245, 2008. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. H. Zhong, M. Mehrara, S. Lieberman, and S. Mahlke. Uncovering hidden loop level parallelism in sequential applications. In HPCA, pages 290--301, feb. 2008.Google ScholarGoogle Scholar

Index Terms

  1. SoC-TM: integrated HW/SW support for transactional memory programming on embedded MPSoCs

          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
            CODES+ISSS '11: Proceedings of the seventh IEEE/ACM/IFIP international conference on Hardware/software codesign and system synthesis
            October 2011
            402 pages
            ISBN:9781450307154
            DOI:10.1145/2039370

            Copyright © 2011 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: 9 October 2011

            Permissions

            Request permissions about this article.

            Request Permissions

            Check for updates

            Qualifiers

            • research-article

            Acceptance Rates

            Overall Acceptance Rate280of864submissions,32%

            Upcoming Conference

            ESWEEK '24
            Twentieth Embedded Systems Week
            September 29 - October 4, 2024
            Raleigh , NC , USA

          PDF Format

          View or Download as a PDF file.

          PDF

          eReader

          View online with eReader.

          eReader