面向多线程程序的确定性并行关键技术研究

来源 :国防科学技术大学 | 被引量 : 0次 | 上传用户:zhi911
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
多核平台的普及扩大了对多线程程序的需求,然而多线程程序的编写、测试和调试一直是一个重大的研究挑战。其中一个关键的挑战是多线程程序的不确定性。程序可能会受到不确定线程交织的影响,产生不可预知的结果。确定性并行技术保证程序在相同的输入下总是被执行相同的线程交织,这极大地方便了多线程程序的调试,也使缺陷更容易重现。在确定性并行的多种实现方式中,基于运行时的确定性并行技术(即确定性执行技术)可以兼容现有的不确定性代码,因此成为当前的研究热点。确定性执行技术又可以概括地分为强确定性执行技术和弱确定性执行技术。强确定性执行技术允许程序有数据竞争,而弱确定性执行技术只能保证无数据竞争程序的确定性。然而当前确定性执行技术仍然存在着实用性不强的问题。例如,强确定性执行技术的开销较大。弱确定性执行技术虽然开销较小,但是需要开发者预先消除程序的数据竞争。本文针对多线程程序开发阶段和运行阶段的不同特点,分别研究高效且具有良好可扩展性的强确定性执技术和弱确定性执行技术。1)静态数据竞争检测的误报剔除技术。消除数据竞争是软件开发阶段的一项重要工作。静态数据竞争检测可以检测出所有可能的数据竞争,这不但可以使弱确定性执行技术的应用成为可能,还可以辅助强确定性执行系统减少插桩开销。然而,与其他程序分析工具一样,静态数据竞争检测也有较高的误报率。造成误报率过高的一个重要原因是静态分析方法往往过于保守地估计一个线程所能访问的内存范围。针对这个问题,我们提出线程例化(Thread Specialization)技术。线程例化可以静态地区分线程。通过在静态时就确定线程的数量和每个线程的ID,我们可以将并行程序转换成一个数据流和控制流都简化的版本。在这个例化后的程序上进行静态数据竞争检测,我们将得到更精确的结果。为了进一步减少误报,我们在线程例化的基础上提出了三个优化。懒惰调整(Lazy Adjusting)可以在数据流分析过程中延时调整动态多维数组的值;代码段分析(Code Region Analysis)和阶段分析(Phase Analysis)可以剔除大部分原先因为忽视happens-before时序关系而造成的误报。以上三个优化的结合平均可以减少77.8%的误报,同时可以减少57.9%的动态插桩点。2)面向强确定性执行的程序分析技术。强确定性执行系统即使在有数据竞争存在的情况下也能保证确定性。当前,保证数据竞争确定性的一种常用方法是通过缓冲对共享内存的访问来隔离线程。但是缓冲所有共享访存的开销是相当大的。我们提出一种面向强确定性执行的静态分析技术DRDet。我们认为不是所有对共享内存的访问都需要缓冲,事实上只需要缓冲与数据竞争有关的共享访存。所谓的与数据竞争有关的共享访存,包括所有可能的数据竞争,以及其他可能与这些数据竞争访问相同变量的访存操作。DRDet采用可靠的静态数据竞争检测工具来检测所有可能的数据竞争,并通过别名分析找到其他与数据竞争有关的共享访存。然而实验显示,别名分析的不精确性使得很大一部分共享访存被标记为与数据竞争有关。缓冲这些访存操作仍然会带来很大的性能开销。针对这个问题,DRDet采用了两个优化来减少用于查询别名分析的访存数量。我们在一个经典的强确定性执行系统上实现了DRDet静态分析。实验结果表明,DRDet在保持确定性和可扩展性的前提下将该系统的执行开销降低了1.6倍。3)无全局同步的弱确定性执行技术。现有的弱确定性执行系统几乎都会在程序执行中引入额外的全局同步,影响了程序的性能和可扩展性。针对此问题,我们提出一种新的线程执行模式——令牌自由模式(Token-Free Mode)。处在令牌自由模式的线程会主动放弃得到的令牌,从而避免部分线程因为长时间占有令牌而造成其他线程等待。基于这种技术,我们实现了一个负载均衡的弱确定性运行时系统——LBDR(Load-Balanced Deterministic Runtime)。LBDR通过令牌自由模式来避免串行化,并且无需全局同步。实现结果表明,和经典的弱确定性执行系统Parrot相比,LBDR的性能提升了1.17倍。4)面向流水线并行的确定性执行技术。现有的确定性执行系统在流水线并行程序上的效率普遍较低,主要的原因是确定性执行会打乱流水线并行程序的负载均衡。针对这个问题,我们在LBDR系统中为程序员提供了一种性能指导语句——同步自由区(Synchronization-Free Sections)。同步自由区可以以一种确定的方式把令牌从同步密集线程向非同步密集线程转移。另外,针对流水线并行程序容易出现单线程执行的情况,LBDR可以在不破坏确定性的前提下动态消除单线程区内不必要的确定性调度操作。实验结果表明,我们的系统在流水线并行程序上的性能比Parrot平均提高了22.5%。
其他文献
针对氨制冷系统在实际应用中存在安全隐患的问题,总结提高系统安全性的方法和途径,介绍以CO2为载冷剂的半封闭式氨制冷系统的组成及其应用。对以CO2为载冷剂的氨双级压缩制冷
中国制浆造纸研究院(以下简称中国纸院)是国家级专业科研机构,鉴于目前行业创新发展的需要,中国纸院开始着手对政策、形势、发展和趋势等方面进行系统的产业研究。《2016中国
2016年6月发生在美国西南部的洪水灾害对废纸供应造成了一定的影响,使得除分选办公废纸(SOP)外的美国国内市场上的各种废纸售价均呈上涨趋势,或基本保持稳定。
外出购物——享受阳光的同时色素沉淀的烦恼也会随之而至;咖啡时间——紫外线会穿透玻璃伤害肌肤;海滩漫步——沙子如同镜面一样反光,加强紫外线对皮肤的损害;开心出游——不管你
“十三五”时期,是国家贯彻落实五大发展理念,全面建成小康社会的决胜阶段。国有企业作为我国国民经济的命脉,它的健康发展为我国实现“两个一百年”奋斗目标提供了十分重要
2016年上半年,虽然全球经济放缓、需求低迷、经济下行压力等尚未有明显改观,但制冷空调市场部分企业营收增长.截至目前,绝大部分上市公司已发布2016年半年度报告(表1).
针对警用数字集群(Police Digital Trunking,PDT)终端在实际越区切换过程中存在的扫描时间长、容错性不够和乒乓切换等问题,详细地分析了越区切换的典型过程和业务流程,并针
6月11日,新天加、新“净界”——天加中央空调2015年新产品发布会走进北京,开始了其布道之旅。据悉,此次天加新品发布活动计划在全因巡回开展18次,在18个城市举办,几乎覆盖了全中
由西安交通大学、中国制冷学会、中国制冷空调工业协会、中国通用机械工业协会、美国空调供暖和制冷工业协会(AHRI)、日本冷冻空调工业协会(JRAIA)联合主办的"第七届压缩机及制冷
《造纸信息》:请您介绍一下浙江鹏翔暖通设备有限公司(以下简称浙江鹏翔)的基本概况及业务情况。赵总:浙江鹏翔暖通设备有限公司是集前期方案提供、研发、设计、生产和销售于一体