面向多核的并行模式及编译优化技术研究

来源 :解放军信息工程大学 | 被引量 : 3次 | 上传用户:jakynum1
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
多核处理器的快速发展给软件带来机遇的同时,巨大的挑战也随之而来。我们熟悉的串行软件在多核系统上很难得到性能的提升,只有并行应用或被并行化的应用可以充分利用多核带来的丰富的运算资源。依赖编译器的并行化可以解决某些程序的问题,对于那些不规则的并行表示,必须由程序员使用适当的并行表示模型和语言来完成。现有的显式并行模型对粗粒度并行有较好的支持,而对细粒度并行的表示及同步支持还不够。另一方面,现有的并行编程工具很少有实现经典的数据流分析与优化,实际上,并行程序的分析与优化本身就是个挑战,其运行时的不确定性使得准确的静态分析比较困难,优化也很难有效进行。因此在显式并行模型中增加细粒度并行的表示及支持、在并行编译器中加强对并行程序的分析与优化就成为当前多核编译研究领域的一个热点。OpenMP是共享内存结构上编程接口的事实标准,目前也已广泛应用于多核结构上。本文深入研究了适用于多核结构的OpenMP程序的数据流分析、优化技术以及细粒度并行模式的实现技术,主要贡献及创新点包括:1.提出并构建了针对OpenMP程序存储模型的并行控制流图OMPCFG,它与一般的并行控制流图比较,OMPCFG具有较少的冲突边,并且待刷新集概念的引入减少了数据流分析时的不确定性,在OMPCFG流图上进行的到达-定值分析也更为准确。2.在构建的OMPCFG流图上建立了OpenMP并行静态单赋值(SSA)形式,并在其上有效实现了四项优化算法:拷贝传播、死代码删除、稀有条件常量传播、以及循环不变代码外提,实例分析表明在一般编译器中不能或错误优化的问题在本文提出的中间表示上可正确进行优化。另一方面,对OpenMP程序的分析与优化为细粒度并行提供了有利条件。3.针对工程技术领域中常见的迭代算法,提出了一种源程序级的流水并行模式,以及一种利用循环队列的流水线程间的同步方式,实验表明它比空间并行模式及计数同步方式有一定的优势。4.分析和研究了线程级推测并行(TLS)的三种实现,提出了在OpenMP上实现TLS的框架性方案。5.对现有多核上的Cache结构与策略进行了分析,提出了一种优化的选择性复制策略以及一种结合基于目录与总线侦听两者优点的混合Cache结构和相应的一致性协议,它充分利用了并行程序中相邻通信较多的特点,降低了Cache一致性开销,模拟实验表明它比单纯的基于目录的Cache协议有更好的性能,同时对程序执行性能的提高有一定帮助。
其他文献
目的:探讨指导规范自我监测血糖对初发2型糖尿病患者非胰岛素治疗后的血糖控制情况。方法:132例新诊断、采用非胰岛素治疗的2型糖尿病患者,随机分为规范自我血糖监测组和非规范
采用浸渍法制备负载铁锰氧化物的活性炭催化剂,并用其催化臭氧氧化处理邻苯二甲酸二甲酯(DMP)废水。利用响应面法(RSM)对催化臭氧氧化处理的工艺参数进行优化,以DMP废水的COD去除率
如今,全世界每天都在爆炸性的产生各种新的信息量。对于存储系统的容量需求,也从PB(Petabyte)、EB(Exabyte)到如今能容纳‘’Big Data"的海量存储系统在发展。尽管有各种新的
随着VLSI技术的发展,针对各个方面应用的处理器相继提出,特别是DSP,MMP等专用处理器。这些处理器对性能的要求使得除法和基本函数功能部件作为其中独立的运算部件成为可能。
通过添加缺损的寿命数据,得到了带有不完全信息随机截尾试验下对数正态分布多变点模型的完全数据似然函数。利用MCMC方法对各参数的满条件分布分别进行抽样,详细介绍了MCMC方法
数学史在数学新课程改革中具有重要作用,体现了数学的文化价值.现行中学数学教材对数学史引入不够,数学教师在思想上和教学实践中缺乏对数学史知识的必要重视.应该进一步加强
分析金属断口图像可以为金属材料的性能及行为等许多方面的研究提供重要信息,准确分析金属断口的形貌需要对金属断口图像进行去噪等预处理。首先将图像划分为噪声、区域内部和
土壤检测对农业生产具有重要意义,而检测土壤时常会出现一些误差,为此必须降低检测误差以提高土壤检测的准确性,为农业生产提供科学的参考依据。本文从检测土壤的重要性入手
陶瓷文化创意产业作为21世纪集文化要素和科技要素于一体发展前景极为广阔的产业之一,对传统的陶瓷产业结构调整和升级起着推进作用。中国的陶艺作为一种艺术的表现形式取得
【正】 我曾经写过不少批评文章,表露出对先锋小说的偏爱和尊敬,现在看来,这样的发言令我感到尴尬。我已经厌倦于花上冗长的篇幅,再去讨论先锋小说在形式上的新奇之处,尽管它