高级检索

    事务存储系统

    Transactional Memory System

    • 摘要: 多核处理器性能的发挥依靠程序的并行,共享存储并行编程模型为大多数多核处理器所采用,而有效同步多个线程对共享变量的访问是其关键、也是难题.借鉴数据库中事务的思想,人们提出事务存储(transactional memory),旨在提供一种编程简单,对程序正确性推理容易的同步手段.简介了事务存储的起源,诠释了事务存储系统的概念.论述了事务存储的编程接口和执行模型.讨论了事务存储系统所涉及的主要内容,对各种方法和策略进行了比较.对事务存储中有待解决的问题进行了探讨.最后介绍了几个开源的事务存储研究平台.

       

      Abstract: Exploring multi-core processors performance depends on the parallelism in programs. Shared memory model is widely adopted by multi-core processors, and coordinating access to shared variables among threads is the key and a very difficult problem as well. Lock mechanism is widely used for the synchronization between threads. However, conventional locking techniques in parallel systems have some common problems: priority inversion, convoying and deadlock. Transactional memory (TM) is proposed to make synchronization easy to realize and efficient, which adopts the transaction concept in database systems. Transactions in transactional memory with the atomicity, consistency and isolation properties provide a foundation to ensure that concurrent reads and writes of shared data do not produce inconsistent or incorrect results and execute atomically. Transactional memory attracts a lot of research interests now. Transactional memory research is still in progress and has not been systematized yet. The authors introduce the origin of transactional memory, and attempt to give a definition of transactional memory system. Transactional memory programming interface and its execution model are shown. TMs design space and its realization strategies are discussed and different techniques used in these aspects are compared. Transactional memory is not a parallel programming panacea. Several open issues are discussed then. Finally, a few open source research platforms are introduced.

       

    /

    返回文章
    返回