基于Pthreads的线程级推测机制的研究

来源 :西北农林科技大学 | 被引量 : 0次 | 上传用户:chengyao54321
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着摩尔定律的发展,处理器进入了多核时代。串行程序的并行化迎来了全新的挑战,传统的并行技术需要确保不同的并行线程之间不存在依赖关系,并行策略比较保守,在程序加速方面遇到瓶颈。线程级推测(TLS)作为一种自动化并行技术,以一种激进地方式挖掘程序在运行时的内在并行性,它将具有数据依赖性的串行程序划分为多线程程序,并在多核平台上并行执行。然而,现有的TLS模型会产生额外的开销,甚至在频繁地违反数据依赖关系时,可能会抵消掉TLS带来的性能收益。针对上述问题,本文提出了一种基于Pthreads(POSIX线程库)的线程级推测机制,主要工作如下:(1)提出基于Pthread的TLS线程执行模型。针对线程级推测执行模型在进行冲突检测时产生大量的回滚开销问题,根据推测执行时子线程执行阶段的不同,本文将其分为空闲态、推测态、可提交态,并基于这三种状态之间的相互转换关系,对主线程与子线程的推测执行流程进行了设计。同时使用Pthreads编程模型对所提执行模型的推测初始化过程、子线程激活以及提交操作等工作机制进行了设计与实现,为串行程序的推测并行提供理论支撑与平台支持。(2)设计基于共享栈的推测变量管理机制。针对多线程执行时程序间依赖变量的推测操作问题,为每个子线程分配了一个线程本地存储变量,用以记录子线程对推测变量的操作以及推测值。同时,为每个推测变量设置了一个共享存储变量,用于多线程版本推测变量的冲突依赖检测以及提交操作,实现线程对推测变量的读写操作并确保多线程间对同一推测变量的数据安全。之后,定义了一组推测变量API,用于简化线程级推测编程难度和提高推测并行编程效率。为验证本文所提基于Pthreads的线程级推测机制的加速比性能,本文选取了三个基准测试程序从线程可扩展性、程序输入规模、推测执行时间以及方法对比四个方面进行实验验证以及结果分析。在线程可扩展性实验中,实验数据表明本研究在随着子线程数的增加时,具有良好且稳定的推测并行收益;输入集对比实验表明随着输入数据规模的增加,推测多线程所获得的并行收益也会随之增加;通过剖析程序的推测执行时间可知,本研究可以在获得并行收益的同时减少误推测执行;最后通过与AIPM方法进行比较,本文所提出的基于Pthreads的线程级推测机制具有较高的加速比性能,可使推测加速比性能提升约5.19%。
其他文献
柿(Diospyros kaki)作为我国传统果树,种质资源丰富,不仅可以鲜食,还可以进行再加工。近年来柿产业发展迅速,除传统的东亚地区外,柿在地中海地区也是商业化种植的重要水果之一。炭疽病作为一种常见的真菌病害在大多数果树上都有发生,我国柿主产区大多数栽培品种对柿炭疽病原菌的抗性水平不高病情一旦爆发对柿产业的发展和果农经济收入会造成严重影响。而炭疽病的防治不能一味的依赖化学防治,需要结合一定的管
禾谷镰孢菌(Fusarium graminearum)是小麦赤霉病的优势病原菌。它不仅能造成小麦的减产,其分泌的脱氧雪腐镰刀菌烯醇等真菌毒素还会残留在染病小麦籽粒及后续小麦制品中,威胁人畜健康。因而小麦赤霉菌的防控是事关国家粮食安全的重大科学问题。禾谷镰孢菌是半活体营养菌,在侵染小麦过程中有一个短暂的活体寄生阶段,在黑粉菌、稻瘟菌等病原真菌的研究中已经表明效应蛋白可能在这一阶段发挥着重要的作用。然
基因复制在有机体进化中的重要性已经被广泛研究,它为生物体的进化创新及表型多样化等提供遗传基础。物种内通过基因复制产生的基因通常被称为旁系同源基因,这些基因组成了基因家族。已往的研究已经揭示了不同物种间许多共享序列和功能同源性的基因家族有着不同的基因数量,而物种间不同的基因得失过程是导致这种差异的原因。基因家族大小的变化被认为可能与物种形成或适应性进化有重要联系。然而,脊椎动物中基因家族大小的进化模
小麦是我国关中平原地区最为重要的粮食作物之一,但该区的农业生产面临着干旱缺水、肥力水平不高等问题。秸秆还田具有提升土壤肥力,改善土壤物理性质,提高产量等作用。生物炭还田具有促进作物生长发育,改善农田理化性质等作用。因此,探寻高效绿色的聚水保墒,提升地力和促进作物生产发育的秸秆还田措施十分重要。本田间试验设置了普通秸秆覆盖还田(SM),普通秸秆翻压还田(SP),氨化秸秆翻压还田(AP),生物炭翻压还
N6-甲基腺嘌呤(N6-methyladenine,6m A)指的是腺嘌呤第6位氮原子的甲基化修饰。6m A在维持细胞正常的转录活性、DNA损伤修复、染色质重塑、遗传印记、胚胎发育和肿瘤发生等生物过程中起着非常重要的作用。传统的实验方法检测6m A耗时、工作强度大且耗费昂贵,很难适合从大量序列中识别6m A。基于机器学习的计算方法可以同时处理多条序列中6m A位点的鉴定,这种方法省时、省力并且效率
农作物病害问题与人们生产生活密切相关,是种植者经济损失的主要原因之一。防治病害的重点是在造成严重损失之前,及时确定病害类型,控制病情。目前基于卷积神经网络的病害识别方法具有识别错误率低的优点,但也存在参数众多,计算量大且复杂的问题,影响了方法的实用性。而现有轻量级病害识别网络大多未能结合病害特征分析,性能有待提高,且不适用于自然场景中拍摄的病害图像,有一定的应用局限性。针对这些问题,构建了一种轻量
灌溉是保证旱区农作物健康生长的关键措施。我国灌溉面积大,农业用水效率不高,及时准确获得农田中的水分信息,对提高灌溉用水使用效率具有重要意义。传统的土壤水分测量一般用取样烘干法,费时费力,对土壤扰动大,不便于长期定点监测土壤水分的动态变化情况。为了解决大面积土壤水分定点实时监测问题,本文初步设计开发了一种低成本、精度较高的数字式土壤水分传感器,并设计了低功耗的信息采集传输终端,用LoRa技术组网构建
民为国本,食为民天。对于民众来说,食品安全的重要性是不容置疑的。农村食品安全的特殊性和监督管理的复杂性常常使农村食品安全监管落后于城市。研究农村食品安全监管对转变农村食品安全形势、保障农村居民身体健康、推进乡村振兴战略均有重大意义。本文以陕西省L县为调查样本,以农村食品安全监管为研究内容,实地调查并走访了L县农村食品经营单位,深入了解了L县农村食品安全监管的现状,对L县农业局、卫健局、市场监管局等
基于同步定位与建图(Simultaneous Localization and Mapping,SLAM)的导航是机器人领域的研究热点,其中SLAM是机器人在导航中定位自身和构建环境地图的一种精确有效的方法。为提高室内导航的精度和人机交互可视化,针对传统SLAM在室内导航中精度和实时性较低等问题,提出了基于生物激励神经网络(Biological Inspired Neural Network,BI
陕西省是我国葡萄生产的优生区,近年来,陕西省葡萄种植业蓬勃发展,然而随着葡萄种植面积的不断扩大,葡萄产业受自然灾害的影响也随之加剧,很长时间以来,管理人员大多只重视旱灾发生后的补救措施,在旱灾发生前对旱灾发生的风险进行评估有着重要的实际意义。土壤湿度是农业干旱最主要的监测指标,客观、及时的土壤湿度信息是了解葡萄园区干旱的程度和分布状况、采取应对措施的重要前提条件,有利于增加葡萄的产量,而如何选择合