面向NUMA结构的软件事务内存关键技术研究

来源 :国防科学技术大学 | 被引量 : 0次 | 上传用户:chica2222
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
当前,大多数事务内存的研究都是针对多核处理器和SMP系统的,少数研究开始关注集群系统,但是对于NUMA系统则缺少相关研究。现有的事务内存实现在NUMA系统上的性能欠佳,因为这些系统并没有关注NUMA结构的访存特性:较慢的远程内存访问。为了解决这个问题,本文提出了一种面向NUMA结构的事务内存机制,通过减少远程访存数量和降低事务失败率等手段,使事务内存在NUMA系统上能够获取高性能。并行编程已经应用了几十年,以往一般用于高性能计算领域。随着多核处理器的发展,普通程序员可开始使用并行程序来充分利用多个处理器核心。现在大多数并行程序还在使用锁作为同步机制,但是随之带来的死锁、优先级反转和锁护送等问题却难以避免。为了解决这些问题,学术界提出了大量的解决方案,而事务内存无疑是其中最具有吸引力的一项新技术。程序员只需要使用atomic关键字定义互斥段,就可以使数据冲突自动得到解决。事务内存是针对多核处理器和SMP系统设计的。随着处理器之间直连接口的发展,处理器可以通过直连接口与其他处理器连接,并以此构建NUMA结构的多处理器系统。实际上,现在的SMP系统已经是NUMA结构了。在NUMA系统中,处理器访问本地内存的速度较快,而访问远地内存的速度较慢,这与传统SMP系统有较大差别。事务内存在NUMA系统上的性能欠佳,也有NUMA的访存延迟特性有关。当前还没有针对NUMA结构设计的事务内存系统,本文在此提出了新的研究方向,期望能够吸引更多学术界的关注来进行面向NUMA的事务内存研究。本文的主要内容如下:(1)面向NUMA的事务内存研究平台和事务内存访存模式分析。为了更有效地分析事务内存在NUMA系统上的性能问题,本文构建了一个面向NUMA结构的事务内存研究平台。该平台基于Simics+GEMS构建,由Simics模拟NUMA硬件,为了使操作系统能够正常识别NUMA硬件拓扑和互连情况,需要模拟ACPI的相关表格,如SRAT和SLIT表。所有的硬件操作延迟由GEMS来提供,由于GEMS本身并不支持NUMA结构,因此需要一个自己编写的模块来实现NUMA访存延迟。为了分析访存模式,本文选择了三个代表性的事务内存系统来进行评测。结论是,远程访存延迟与事务失败率是影响性能最关键的两个原因。(2)层次式的冲突检测。为了减少远程访存次数,本文提出了层次式冲突检测方法。NUMA系统根据访存延迟的不同,可以划分为快速访存部分和慢速访存部分,一般就是本地和远地的划分。快速部分可以使用消极的检测策略来增加并发度,而慢速部分则使用积极策略来减少远程访存数量。(3)冲突规避方法。传统的事务内存策略是尽量增加同时运行的事务数量,以增加系统的并行度来提高性能。但这样的策略并不适用于NUMA系统。本文提出的冲突规避方法主要用来解决该问题。冲突规避安排在事务启动之前,使用预测算法来推测该事务将来发生冲突的可能性。如果可能性较大,该事务应该被暂缓启动以提高系统整体的事务成功率。(4)NUMA敏感的竞争管理算法。为了使竞争管理算法适应NUMA结构,本文提出了两种竞争管理算法。为了减少远程访存开销,算法将尽量利用本地数据来进行决策,以减少远程访存数量为目标。该算法在NUMA系统上可以较好地平衡事务之间的冲突,获取高性能。
其他文献
新型技术不断涌现,其中:系统虚拟化技术在一台物理机上运行多台虚拟机,提高了资源分配的灵活性和使用效率;相变存储技术利用介质在不同相态的电阻差异存储数据,被认为是最有潜力的
读者:2007年10月,浙江某建设集团公司(下称总包单位)在总承包某体育馆工程后,将其中幕墙工程的设计、制作、安装分包给福建某幕墙公司上海分公司(下称分包单位)。当幕墙工程
从企业视角看,产业链主要包括有供应链、需求链、产品链、价值链、技术链、生产链、能力链、契约链、物流链、信息链;从产业视角看,产业链包括产业组织链、产业结构链、产业
BIM技术在国外有成熟广泛的应用,在国内的工程应用才刚刚起步.本文简析了 BIM 技术在我国建设工程领域的研究现状和应用前景,阐述了其重要性.
党的十七大胜利闭幕之后,胡锦涛总书记第一次到地方考察就来到了内蒙古,充分体现了党中央对内蒙古各族人民的亲切关怀。胡锦涛总书记考察我区时发表的重要讲话,为我们深入贯