OpenMP程序分析及优化技术研究

来源 :解放军信息工程大学 | 被引量 : 25次 | 上传用户:kingwaaaa
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
随着多核处理器在多媒体计算、嵌入式设备、个人计算机、商用服务器和高性能计算机等众多领域的广泛应用,人类正面临着自计算机诞生以来的第三次软件危机。广大科研人员提出了众多编程模型以适应多核体系结构,但并没有哪种模型表现出明显的优势。OpenMP编程模型是由一系列硬件及软件供应商(如DEC、Intel、IBM、SGI、DOEASCI等)支持的共享内存程序设计的工业标准,具有编程简单、可增量化开发、支持多种语言、支持多种操作系统(UNIX,Linux,Windows等)、可移植性好等优点。大部分商用编译器已经开始支持对OpenMP程序的编译,OpenMP程序的分析及优化技术研究正受到日益广泛关注。本论文围绕着OpenMP程序的正确性分析和性能优化工作,通过深入研究静态单赋值形式,提出了基于栅障同步变量静态单赋值的OpenMP程序的可能并行执行关系分析算法;结合自动并行化中的依赖关系分析、数据和计算划分等技术,重点研究了循环级OpenMP程序的优化技术。论文的主要贡献及创新点包括:1.通过引入支配边界逆转的概念,提出了一种基于支配树的多变量?函数摆放算法。支配边界逆转是从交结点的角度来观察支配边界结点集合,一个结点的支配边界逆转结点在支配树上的高度一定小于该结点。基于支配边界逆转概念自底向上地遍历支配树,同时摆放多个变量的?函数,不需要计算支配边界结点集合,简化了?函数的摆放步骤,降低了栅障同步变量静态单赋值的构建代价。2.扩展了OpenMP控制流图的结点结构,提出了基于虚拟执行线程编号的可能并行执行关系的判断准则。根据OpenMP语言结构的语义,建立OpenMP控制流图时为每个结点分配虚拟执行线程编号,如果两个结点同属一个程序阶段且虚拟执行线程编号不同,则这两个结点中的语句存在可能并行执行关系,避免了以往并行控制流图中采用两份拷贝表示线程间并行执行关系所造成的空间浪费。3.在深入研究静态单赋值形式的基础上,提出了一种基于栅障同步变量静态单赋值的OpenMP程序的可能并行执行关系分析算法。通过把栅障同步语句作为并行结构内定义的局部变量,建立了栅障同步变量的静态单赋值形式,显式化地表示了OpenMP程序的阶段,减少了可能并行执行关系求解过程中对控制流图的遍历次数,并且能够增量化维护可能并行执行关系。4.针对循环级OpenMP程序,设计并实现了融合自动并行化技术的并行结构合并与扩展算法。通过并行结构的合并与扩展得到较大的SPMD区域,运用标量分析、依赖关系分析,以及数据和计算划分等技术提取循环间数组的存取特征,研究了循环级OpenMP程序中栅障同步的消除和替换,提高了程序的性能。5.提出了一种面向计算的OpenMP程序计算和数据划分的栅障同步优化算法。以计算为中心,尽可能寻找一致性数据划分,采用数据和计算划分信息优化OpenMP程序中栅障同步,减少了控制同步的代价,并为编译器后端减少数据同步的代价提供可能的机会和优化支持。
其他文献
文章首先介绍了国内工业控制系统的安全现状,接着通过工业控制系统和传统信息系统的对比,结合各类安全加固措施和工业控制系统自身的特点,提出了中国工业控制系统加强安全防
<正>核心知识梳理1.相似三角形的性质.(1)相似三角形的对应角相等,对应边成比例;(2)相似三角形的对应线段(对应高、对应中线、对应角平分线)成比例;(3)相似三角形的周长比等
本文选用了一些商务英语信函范本为语料,对其中模糊语言的定义和功能进行了描述和解释,以关联理论翻译观为切合点来分析译者如何恰当地把商务英文信函中的模糊语译成汉语,旨
认知图式作为主体对客体与事件的解释框架,对于人的社会认知有着重要作用。该文通过对现有社会认知图式理论进行考察,认为认知图式导致了社会认知的偏差与重构,并提出事先对
加强新社会组织党建工作是党的建设的重大课题。现阶段,新社会组织党的建设存在的问题主要有:一是对新社会组织党建工作的重要性和紧迫性认识不足,二是党组织职能定位不清,三
马克思的自然观蕴含着丰富的生态伦理思想,对解决当代生态环境问题具有重要现实价值。马克思的生态自然观确证了自然界永续存在的权利和价值,为当代生态伦理建设确立了基本价
为了分析动叶顶部间隙泄漏流的流场特征和涡量变化规律,以某汽轮机为研究对象,采用大涡模拟方法对无围带和有围带动叶顶部的间隙泄漏流动进行研究。结果表明:无围带时,在0.85
过去二十年是计算机行业发展的黄金时期。互联网的发展以及计算机软硬件的成熟,导致了企业的业务数据呈现爆炸性地增长。如何有效地管理与集成这些大量的异构异质的数据,以及
本文在总结软件水印及其相关技术研究现状的基础上,首先提出了一种基于常量重排的Java软件水印算法;其次,结合程序分解的思想,给出了一种Java软件特征;最后,在软件特征的基础
据调查,目前我国领导干部的心理压力普遍较大,心理健康状况需要关注。为此,领导干部要提升自我心理调适水平,改变认知图式,合理调节自己的情绪;改变行为模式,增强自身行为的