-
题名一种基于目录的软件事务性内存实现算法
被引量:2
- 1
-
-
作者
张小强
彭林
彭元喜
谢伦国
-
机构
国防科学技术大学计算机学院
-
出处
《计算机研究与发展》
EI
CSCD
北大核心
2008年第9期1517-1523,共7页
-
基金
国家自然科学基金项目(60676010)
国家"八六三"高技术研究发展计划基金项目(2008AA01Z110)~~
-
文摘
软件事务性内存(STM)提供同步手段,让多线程程序高效并发执行.STM算法中一般包含记录所访问的共享数据、缓冲投机修改的数据以及处理事务冲突.STM中的主要开销在于维护共享数据访问记录和一致性验证.维护共享数据访问记录主要目的是便于进行验证.冲突检测(conflict detection)判断两个事务能否同时提交,而验证(validation)确保每个线程看到的数据状态是一致的.给出了关于STM一个简单模型,证明在STM中对共享数据的修改是线性的.提出的LDSTM算法通过在目录中维护版本信息,可以在读取各个共享对象时快速确定事务的内存视图是否处于一致状态,可以极大减少冲突检测和验证的开销.该算法可以实现早期发现写-写冲突,减少无效计算.在单线程情况下该算法开销很小.实验数据表明,LDSTM简单高效,冲突检测和验证开销减少明显.
-
关键词
软件事务性内存(stm)
冲突检测
验证
并发
多线程
-
Keywords
software transactional memory (stm)
conflict detection
validation
concurrency
thread
-
分类号
TP301
[自动化与计算机技术—计算机系统结构]
-
-
题名基于事务性执行的投机并行多线程软件模拟
被引量:1
- 2
-
-
作者
姚震
郑启龙
陈国良
杨晓奇
-
机构
中国科学技术大学计算机科学与技术系高性能计算及应用省部共建重点实验室
-
出处
《小型微型计算机系统》
CSCD
北大核心
2008年第3期437-443,共7页
-
基金
Intel高等研究基金(4507146713)
安徽省自然科学基金(050420205)资助
-
文摘
基于事务性执行的投机并行多线程是一种适合未来多核微处理器架构的新型并行程序设计和编译技术.但在此基础上的并行程序执行过程更为复杂,程序执行过程的模拟成为关键问题之一.本文提出利用二进制代码级动态插桩技术对投机并行多线程程序进行功能性模拟,设计并实现了完整的软件平台,可精确地模拟和监控并行程序的线程级投机执行过程,检测访存冲突,从而实现投机并行多线程的语义.该软件平台同时可以作为进一步研究投机多线程并行程序真实执行过程的基础,并有效支持投机并行多线程编译器的设计和分析.
-
关键词
投机并行多线程
事务性内存
软件模拟
动态插桩
-
Keywords
speculative parallel threading
transactional memory
software simulation
dynamic instrumentation
-
分类号
TP311
[自动化与计算机技术—计算机软件与理论]
-
-
题名面向STM的松弛存储一致性算法
- 3
-
-
作者
张小强
彭林
黄春
谢伦国
-
机构
国防科学技术大学计算机学院
-
出处
《计算机工程与科学》
CSCD
北大核心
2010年第1期127-131,共5页
-
基金
国家863计划资助项目(2008AA01Z110)
国家自然科学基金资助项目(60676010)
-
文摘
软件事务性内存(STM)提供同步手段,让多线程程序高效并发执行。如果两个事务访问了同一个共享数据且至少一个事务进行了修改操作,则称发生了冲突。检测冲突后,一般选择一个事务终止。当前的STM实现都基于严格的线性一致性(Linearizability)语义模型,实现简单。但是,基于该语义会导致很多本来可以完成提交的事务失败,降低了系统效率。把因果一致性模型应用于STM,可以在保证程序准确性条件下取得较好的实际性能。实验数据表明,该算法简单高效,明显减少了冲突数目。
-
关键词
软件事务性内存(stm)
因果一致性
验证
并发
多线程
-
Keywords
software transactional memory (stm)
causal consistency
validation
concurrency
threads
-
分类号
TP314
[自动化与计算机技术—计算机软件与理论]
-
-
题名基于STM模型的面向可视化并行程序的设计
- 4
-
-
作者
王力生
黄鹏
-
机构
同济大学计算机科学与技术系
-
出处
《计算机应用与软件》
CSCD
北大核心
2012年第12期161-163,170,共4页
-
文摘
并行程序设计由于需要考虑进程之间的同步等问题使得编码过程十分复杂。可视化的并行程序设计为程序员提供了图形化的编程模板和骨架来进行并行程序的设计工作,在一定程度上减小了并行程序的设计难度。首先研究软件事务性内存模型,它相对于传统的并行程序设计方法而言有着接口简单灵活,可扩展性强等特点,之后将STM模型运用到可视化程序设计中来,使得其编程接口以UML活动图的形式提供给编程人员使用,不用依赖特定的软件或硬件环境,提高了可视化并行程序设计的通用性与可扩展性。
-
关键词
可视化
并行程序设计
软件事务性内存
扩展性
-
Keywords
Visual Parallel programming Software transactional memory Scalability
-
分类号
TP31
[自动化与计算机技术—计算机软件与理论]
-