首页 | 官方网站   微博 | 高级检索  
相似文献
 共查询到16条相似文献,搜索用时 62 毫秒
1.
事务存储系统中PGHB冲突检测算法研究   总被引:1,自引:0,他引:1       下载免费PDF全文
事务存储系统是一种全新的多核体系结构,为并行编程提供了一个简洁高效的编程环境。基于Signature的冲突检测算法是事务存储系统中很有前景的一种冲突检测方法,其误判率直接影响系统性能。GHB算法是一种优秀的冲突检测算法,具有较低的误判率,但硬件实现开销较大。本文对GHB冲突检测算法进行进一步改进,提出了一种PGHB算法。与GHB算法相比,PGHB算法在硬件开销和误判率两者之间取得了更好的折衷。  相似文献   

2.
软件事务内存是为了简化并行程序设计而出现的一种新的程序设计技术.为了降低软件事务内存系统中事务冲突的发生频率以提升系统整体性能,提出了一种新的基于动态控制和队列调度的竞争管理策略.定义了竞争强度的概念和系统总体框架,并在此基础上给出了利用运行时反馈信息动态调节竞争强度的方法.同时给出了事务序列化的设计方法与实现中应注意的问题,通过将冲突概率大的事务序列化以达到避免相同冲突再次发生的目的.结合常用的基准数据结构,对模型和算法进行了实验,最后结果表明了算法的正确性和有效性.  相似文献   

3.
硬件事务内存(hardware transactional memory, HTM)和可字节寻址的非易失性内存(nonvolatile memory, NVM)已经可以在新的计算机设备中使用.使用HTM确保一致性和隔离性,使用NVM确保持久性,组合使用两者可以实现满足原子性、一致性、隔离性和持久性(atomicity, consistency, isolation and durability, ACID)特性的事务.ACID事务在数据库中非常有价值,但由于数据库事务通常较大,其面临的挑战是HTM固有的容量限制和争用水平.首先提出了一种通过HTM进行ACID事务处理的软硬件解决方案——持久化HTM(persistent HTM, PHTM).使用2种方法来消除PHTM的局限性:1)持久化混合事务内存(persistent hybrid TM, PHyTM),允许PHTM事务与支持任意大小的纯软件事务(software transactional memory, STM)并发执行;2)分离事务执行(split transaction execution, STE)算法,该算法为关系数据库事务量身定制,解决了大多数事务超过PHTM的容量限制的问题.简而言之,讨论了利用NVM将HTM扩展到ACID数据库事务的问题.  相似文献   

4.
本文分析了目前提出的硬件事务内存系统在支持线程切换及迁移、内存页置换、系统调用等方面存在的问题,并提出了新的支持操作系统的实现方案DTM。DTM采用单独的面向事务处理的一致性协议来检测及仲裁事务间冲突,与传统的事务内存系统相比,DTM具有实现简单、可扩展性好及性能上的优势。  相似文献   

5.
基于C#语言的事务内存系统   总被引:1,自引:0,他引:1       下载免费PDF全文
孙勇 《计算机工程》2009,35(24):87-89
事务内存是一种新的易于使用的同步技术,能使多线程程序高效地并行执行,目前大多数事务内存系统都处于研究实验阶段,尚未具备实际应用价值,或需要依赖特殊硬件实现。针对该现状,提出一种利用C#语言设计与实现的纯软件的事务内存系统,包括事务对象定义以及对事务对象的并行访问方法,并给出处理事务冲突的策略。实验结果表明,该系统是一种高效简洁的同步实现机制。  相似文献   

6.
事务为数据库等系统的上层应用提供了强大的保证.NoSQL数据库通过弱化对事务的支持来获得更高的扩展性,却难以满足OLTP等应用的事务性需求.之后提出的NewSQL数据库架构回归了高一致性的事务支持,并兼顾了海量数据的高效管理.因此,NewSQL数据库逐步将事务执行所需的数据从硬盘迁移到内存中以提升事务执行的效率.但是,已有内存事务的并发控制协议与新兴的存储、网络设备并不适配.从处理策略、版本控制、冲突解决3个维度对近10年来的内存事务中并发控制协议进行了分类阐述,进而从性能、扩展性、持久性3个方面比较了有代表性的并发控制协议.之后总结了4个改进内存事务并发控制协议的技术思路:消除事务扩展瓶颈,利用新硬件加速事务处理,降低事务中止概率,高效保证事务持久性.最后指出了内存事务并发控制协议的未来研究方向.  相似文献   

7.
新兴的非易失性内存(non-volatile memory, NVM)具有字节寻址、持久性、大容量和低功耗等优点,然而,在NVM上进行并发编程往往比较困难,用户既要保证数据的崩溃一致性又要保证并发的正确性.为了降低用户开发难度,研究人员提出持久性事务内存方案,但是现有持久性事务内存普遍存在扩展性较差问题.测试发现限制扩展性的关键因素在于全局逻辑时钟和冗余NVM写操作.针对这2个方面,提出了线程逻辑时钟方法,通过允许每个线程拥有一个独立时钟,消除全局逻辑时钟中心化问题;提出了缓存行感知的双版本方法,为数据维护2个版本,通过循环更新这2个版本来保证数据的崩溃一致性,从而消除冗余的NVM写操作.基于所提出的这2个方法,实现了一个基于时间戳的高扩展的持久性软件事务内存(scalable durable transactional memory, SDTM),对比测试显示,在YCSB负载下,与DudeTM和PMDK相比,SDTM的性能最多分别提高了2.8倍和29倍.  相似文献   

8.
针对由计算机集群构成的云计算数据中心的特性,提出了一种基于事务内存的分布式编程框架。该框架将云计算任务封装为事务,自动完成所有事务的调度执行、负载均衡和故障恢复;将数据中心的分布式数据封装为事务对象,保证事务访问事务对象时的ACID特性。与同类研究相比,它无需用户关心程序的并行控制,具有简单易用性。该框架已在仿真环境下实现,实验结果表明它具有良好的可扩展性和容错性。  相似文献   

9.
《计算机科学与探索》2017,(9):1429-1438
在虚拟化系统中,双重调度问题普遍存在。过度负载的现象进一步加剧了双重调度问题,造成了不可忽视的性能下降。如何在保护系统公平性的同时,缓解双重调度问题带来的负面影响,提高系统的整体性能,成为一个重要的课题。通过研究双重调度引发的同步机制效率问题,结合硬件事务内存的特点,为虚拟机内核设计了新的同步机制SPINRTM。一方面,SPINRTM基于硬件事务内存不可被打断的特性,保护了虚拟机内的临界区间,使其不被打断,有效缓解了双重调度问题;另一方面,SPINRTM结合了传统的排队自旋锁,保护了硬件事务内存的运行效率,也维护了系统的公平性。测试证明,在超负载的情况下,SPINRTM能够在保护系统公平性的同时,提高系统的整体性能。  相似文献   

10.
现有的事务内存研究主要面向多核处理器和SMP机器,缺少对CC-NUMA系统的研究.而CC-NUMA是高端服务器的重要体系结构,随着用户对并行处理能力需求的不断上升,高端服务器将占据越来越重要的地位.文中概要阐述事务内存研究的基本情况,通过详尽的实验数据,深入分析了CC-NUMA结构的本地、远程访存差异特性对事务内存性能的影响,提出了一种面向CC-NUMA体系结构的冲突规避方法PBC.PBC在事务启动之前,对冲突可能性进行预测,并根据预测结果对事务进行调度,以降低事务的失败率.实验表明,文中提出的PBC方法可以显著提高CC-NUMA机器上运行事务内存的整体性能.  相似文献   

11.
在并行程序设计中,软件事务存储(STM)是对传统基于锁的同步机制的一种替代方式。其中竞争管理器用于消解事务冲突,决定哪个事务继续执行,哪个事务放弃,对于STM系统的性能有非常重要的影响。但是当前已有的竞争管理策略因受限于环境负载和STM系统的参数配置,性能表现往往是不稳定的。因此,提出了一种自适应的竞争管理策略(ACM),该策略通过构建竞争管理器池(Contention Manger Pool)和自适应竞争管理算法动态地为STM系统选择当前最优的竞争管理策略。实验结果表明ACM不仅可以通用于不同环境而且其平均性能也优于现有的静态竞争管理策略。  相似文献   

12.
基于依赖图的硬件事务存储技术研究   总被引:1,自引:0,他引:1  
事务存储技术能够简化并行程序中对共享资源的访问控制,是当前的研究热点之一.目前,多数基于硬件的事务存储系统采用基于冲突检测与处理的并发控制协议,当检测到两事务发生冲突时就中止二者之一.但是对事务间"冲突"更深入的分析表明,某些"冲突"并不一定会导致事务的回退,这种冲突称为"弱冲突".基于依赖图的硬件事务存储技术能够避免弱冲突引发的多余事务回退.模拟实验表明,基于依赖图的事务存储系统与基于冲突处理的事务存储系统相比具有明显的性能优势.  相似文献   

13.
在多核处理器上,事务存储是一种有望取代锁的同步手段。软件事务存储不需要增加额外硬件支持,就可以充分利用当前商业多核处理器的多线程能力。提出一种软件事务存储实现算法VectorSTM,该算法不需要使用原子操作。VectorSTM采用分布的向量时钟来跟踪各线程事务执行情况,能够提供更高的并发度。对事务存储基准程序STAMP的测试表明,VectorSTM在性能或者语义上比软件事务存储算法TL2和RingSTM有优势。  相似文献   

14.
针对事务存储系统下的错误检测问题,提出了一种基于冗余事务的事务存储系统的错误检测方法(error detection by redundant transaction, EDRT).该方法为每个事务创建一个副本事务,并利用富余的处理器核资源同时执行原始事务和副本事务,通过比较原始事务和副本事务的执行结果达到检测错误的目的.在检错比较数据集的获取上,EDRT方法利用了事务存储系统自身的版本管理机制,实现了对用户透明的在线接近最小数据比较集的获取.将EDRT方法应用于日志事务存储系统,提出了针对容错日志事务存储系统的设计问题的解决方法.最后,使用了包括4个SPLASH-2典型用例在内的5个测试程序对该方法进行了验证测试,实验结果表明EDRT检错方法相对整个程序的平均检错开销在3.68%左右,而相对于程序内事务部分的平均检错开销也只有12.07%左右.通过与双模冗余检错方法(dual modular redundancy error detection mechanism, DMR)的对比,EDRT方法与DMR方法的平均检错开销比只有0.05%左右.  相似文献   

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

16.
We extend the notion of Store Atomicity [Arvind and Jan-Willem Maessen. Memory model = instruction reordering + store atomicity. In ISCA '06: Proceedings of the 33rd annual International Symposium on Computer Architecture, 2006] to a system with atomic transactional memory. This gives a fine-grained graph-based framework for defining and reasoning about transactional memory consistency. The memory model is defined in terms of thread-local Instruction Reordering axioms and Store Atomicity, which describes inter-thread communication via memory. A memory model with Store Atomicity is serializable: there is a unique global interleaving of all operations which respects the reordering rules and serializes all the operations in a transaction together. We extend Store Atomicity to capture this ordering requirement by requiring dependencies which cross a transaction boundary to point in to the initiating instruction or out from the committing instruction. We sketch a weaker definition of transactional serialization which accounts for the ability to interleave transactional operations which touch disjoint memory. We give a procedure for enumerating the behaviors of a transactional program—noting that a safe enumeration procedure permits only one transaction to read from memory at a time. We show that more realistic models of transactional execution require speculative execution. We define the conditions under which speculation must be rolled back, and give criteria to identify which instructions must be rolled back in these cases.  相似文献   

设为首页 | 免责声明 | 关于勤云 | 加入收藏

Copyright©北京勤云科技发展有限公司    京ICP备09084417号-23

京公网安备 11010802026262号