Software Transactional Memory for Multicore Embedded Systems

被引:0
|
作者
Mankin, Jennifer [1 ]
Kaeli, David [1 ]
Ardini, John [2 ]
机构
[1] Northeastern Univ, Boston, MA 02115 USA
[2] Charles Stark Draper Lab Inc, Cambridge, MA 02139 USA
关键词
Design; Experimentation; Performance; Embedded Systems; Multicore; Software Transactional Memory (STM); Synchronization; Locking; Transactions;
D O I
10.1145/1543136.1542465
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
Embedded systems, like general-purpose systems, can benefit from parallel execution on a symmetric multicore platform. Unfortunately, concurrency issues present in general-purpose programming also apply to embedded systems, protection from which is currently only offered with performance-limiting coarse-grained locking or error-prone and difficult-to-implement fine-grained locking. Transactional memory offers relief from these mechanisms, but has primarily been investigated on general-purpose systems. In this paper, we present Embedded Software Transactional Memory (ESTM) as a novel solution to the concurrency problem in parallel embedded applications. We investigate common software transactional memory design decisions and discuss the best decisions for an embedded platform. We offer a full implementation of an embedded STM and test it against both coarse-grained and fine-grained locking mechanisms. We find that we can meet or beat the performance of fine-grained locking over a range of application characteristics, including size of shared data, time spent in the critical section, and contention between threads. Our ESTM implementation benefits from the effective use of L1 memory, a feature which is built into our STM model but which cannot be directly utilized by traditional locking mechanisms.
引用
收藏
页码:90 / 98
页数:9
相关论文
共 50 条
  • [1] Software Transactional Memory for Multicore Embedded Systems
    Mankin, Jennifer
    Kaeli, David
    Ardini, John
    LCTES'09: PROCEEDINGS OF THE 2009 ACM SIGPLAN/SIGBED CONFERENCE ON LANGUAGES, COMPILERS, AND TOOLS FOR EMBEDDED SYSTEMS, 2009, : 90 - 98
  • [2] Energy and Throughput Efficient Transactional Memory for Embedded Multicore Systems
    Ferri, Cesare
    Wood, Samantha
    Moreshet, Tali
    Bahar, Iris
    Herlihy, Maurice
    HIGH PERFORMANCE EMBEDDED ARCHITECTURES AND COMPILERS, PROCEEDINGS, 2010, 5952 : 50 - +
  • [3] A review of software transactional memory in multicore processors
    Fu, Chen
    Wu, Zhibo
    Wang, Xiaoqun
    Yang, Xiaozong
    Information Technology Journal, 2009, 8 (08) : 1269 - 1274
  • [4] Embedded-TM: Energy and complexity-effective hardware transactional memory for embedded multicore systems
    Ferri, Cesare
    Wood, Samantha
    Moreshet, Tali
    Bahar, R. Iris
    Herlihy, Maurice
    JOURNAL OF PARALLEL AND DISTRIBUTED COMPUTING, 2010, 70 (10) : 1042 - 1052
  • [5] Analysis and Tracing of Applications Based on Software Transactional Memory on Multicore Architectures
    Castro, Marcio
    Georgiev, Kiril
    Marangozova-Martin, Vania
    Mehaut, Jean-Francois
    Fernandes, Luiz Gustavo
    Santana, Miguel
    PROCEEDINGS OF THE 19TH INTERNATIONAL EUROMICRO CONFERENCE ON PARALLEL, DISTRIBUTED, AND NETWORK-BASED PROCESSING, 2011, : 199 - 206
  • [6] A Software-SVM-based Transactional Memory for Multicore Accelerator Architectures with Local Memory
    Lee, Jun
    Seo, Sangmin
    Lee, Jaejin
    PACT 2010: PROCEEDINGS OF THE NINETEENTH INTERNATIONAL CONFERENCE ON PARALLEL ARCHITECTURES AND COMPILATION TECHNIQUES, 2010, : 567 - 568
  • [7] Software transactional memory as a building block for parallel embedded real-time systems
    Barros, Antonio
    Pinho, Luis Miguel
    2011 37TH EUROMICRO CONFERENCE ON SOFTWARE ENGINEERING AND ADVANCED APPLICATIONS (SEAA 2011), 2011, : 251 - 255
  • [8] Thrifty-malloc: A HW/SW Codesign for the Dynamic Management of Hardware Transactional Memory in Embedded Multicore Systems
    Carle, Thomas
    Papagiannopoulou, Dimitra
    Moreshet, Tali
    Marongiu, Andrea
    Herlihy, Maurice
    Bahar, R. Iris
    2016 INTERNATIONAL CONFERENCE ON COMPILERS, ARCHITECTURE AND SYNTHESIS FOR EMBEDDED SYSTEMS (CASES), 2016,
  • [9] A review of transactional memory in multicore processors
    Wang X.
    Ji Z.
    Fu C.
    Hu M.
    Information Technology Journal, 2010, 9 (01) : 192 - 200
  • [10] Software transactional memories: an approach for multicore programming
    Damien Imbs
    Michel Raynal
    The Journal of Supercomputing, 2011, 57 : 203 - 215