X10语言机制研究和实现优化

X10语言机制研究和实现优化

论文摘要

随着多核处理器越来越成为微处理器发展的主流,并行编程越来越受到人们的关注。如何在目前的多核处理器上进行简单高效的并行程序设计以利用多核所带来的性能优势成为了研究的热点。传统的并行编程语言(如OpenMP、MPI、多线程库等)都只是用于解决某一些领域的问题,并且多数并行编程语言编程复杂,描述层次相对较低,致使并行应用的开发效率低下,不适合于进行并行开发的推广。为了更好地利用和推广并行,新型的并行编程模型和并行编程语言相继出现。本文选择IBM开发的X10语言作为研究对象。X10语言是IBM在美国DARPA的HPCS(High Productivity Computing Systems)项目中开发的一种新型的面向对象的并行编程语言。它的主要目的是降低并行编程的难度,提高应用开发的效率,并提供高性能、可移植和健壮性的支持。本文的主要工作如下:1、研究X10的语言机制。将X10语言与主流的并行编程语言(OpenMP、MPI等)、其他HPCS语言和新型的Go语言进行了比较分析,指出X10语言存在的部分问题。2、X10语言的运用。运用X10语言实现跟踪界面活动网格法YGX程序,对实现的程序进行正确性的验证,并将X10语言实现的YGX程序与OpenMP版本的YGX程序进行实现及性能上的比较。3、对X10语言的优化。设计并实现基于程序特性的循环展开因子确定算法,实现了循环展开的循环优化。实验表明:经过优化后的X10语言的YGX程序性能提高大约10%。4、针对X10语言的并行递归程序,在并行度较高时,X10派生的activity过多致使程序的并行性得不到很好实现的问题,通过限制activity的派生来降低activity的派生开销对程序性能的影响,并通过计算斐波那契数的程序进行了模拟。实验表明:限制activity的派生数目确实能够提高程序性能。

论文目录

  • 摘要
  • ABSTRACT
  • 第一章 绪论
  • 1.1 课题背景
  • 1.2 相关研究介绍
  • 1.2.1 并行语言的现状
  • 1.2.2 并行编程模型
  • 1.3 本文研究内容
  • 1.4 论文结构
  • 第二章 X10 的语言机制研究
  • 2.1 X10 语言介绍
  • 2.1.1 X10 的编程模型
  • 2.1.2 X10 的并发与分布机制
  • 2.2 与现有语言的比较
  • 2.2.1 与当前主流语言的比较
  • 2.2.2 与其它HPCS 语言的比较
  • 2.2.3 与新型Go 语言的比较
  • 2.2.4 X10 语言的问题
  • 2.3 X10 语言的实现
  • 第三章 X10 语言的运用
  • 3.1 跟踪界面活动网格法
  • 3.1.1 跟踪界面活动网格法简介
  • 3.1.2 计算算法
  • 3.2 算法实现
  • 3.2.1 程序分析
  • 3.2.2 X10 实现算法
  • 3.3 实验验证
  • 3.3.1 正确性验证
  • 3.3.2 实现的比较以及性能测试
  • 第四章 X10 语言实现优化
  • 4.1 循环优化
  • 4.1.1 循环展开简介
  • 4.1.2 循环展开的设计实现
  • 4.2 并行递归优化技术的研究
  • 4.2.1 并行递归程序分析
  • 4.2.2 优化技术研究
  • 4.2.3 总结
  • 第五章 测试与分析
  • 5.1 测试环境
  • 5.2 正确性验证
  • 5.2.1 测试结果
  • 5.2.2 测试结果分析
  • 5.3 性能测试
  • 结束语
  • 工作总结
  • 工作展望
  • 致谢
  • 参考文献
  • 作者在学期间取得的学术成果
  • 相关论文文献

    • [1].多核并行编程技术在中文分词程序优化中的应用[J]. 计算机工程与设计 2010(24)
    • [2].并行编程,大势所趋[J]. 程序员 2010(05)
    • [3].一种跨平台的并行编程框架设计与实现[J]. 计算机工程 2014(08)
    • [4].组合CC++并行编程并行块研究[J]. 河南科技 2012(06)
    • [5].基于标记语言的跨平台并行编程框架设计[J]. 计算机系统应用 2020(10)
    • [6].基于对象的隐式并行编程众核体系结构研究[J]. 计算机工程与设计 2013(02)
    • [7].基于Linux并行编程模式的研究与实现[J]. 电脑开发与应用 2008(08)
    • [8].新书点评[J]. 电脑编程技巧与维护 2014(01)
    • [9].基于模式的CPPVM并行编程方法[J]. 计算机工程 2008(03)
    • [10].基于CMP多核集群的混合并行编程技术研究[J]. 计算机科学 2014(02)
    • [11].基于CMP系统的并行编程模式研究[J]. 计算机技术与发展 2014(07)
    • [12].Win32平台基于通信的多核并行编程方法[J]. 计算机应用与软件 2014(04)
    • [13].Altera发布面向FPGA的OpenCL计划[J]. 电视技术 2011(23)
    • [14].一种基于循环并行模式的多核优化方法[J]. 厦门大学学报(自然科学版) 2010(06)
    • [15].MPJ并行编程框架的实现及安装配置[J]. 计算机与现代化 2009(08)
    • [16].Altera发布面向FPGA的OpenCL计划[J]. 单片机与嵌入式系统应用 2012(01)
    • [17].多核SMP集群混合并行编程技术的研究[J]. 微型机与应用 2017(04)
    • [18].MIC商用并行编程性能优化分析[J]. 深圳信息职业技术学院学报 2013(01)
    • [19].UPPA:面向异构众核系统的统一并行编程架构[J]. 计算机学报 2020(06)
    • [20].CUDA平台下多核GPU高性能并行编程研究[J]. 河南机电高等专科学校学报 2011(01)
    • [21].共享内存并行编程最优同步方法的研究[J]. 科学技术与工程 2015(08)
    • [22].消除有扰射频:基于LabVIEW和NI USRP进行射频/通信物理层研究[J]. 国外电子测量技术 2012(09)
    • [23].3D_EW在MIC并行编程中的移植与实现研究[J]. 实验室研究与探索 2017(04)
    • [24].多核SMP集群Hybrid并行编程模式的研究与分析[J]. 电子技术 2016(02)
    • [25].多核时代下的并行编程架构[J]. 国外电子测量技术 2009(08)
    • [26].多核时代下的并行编程架构[J]. 电子测试 2009(10)
    • [27].基于Python的并行编程技术在批量气象规范报表入库处理中的应用[J]. 软件 2018(07)
    • [28].多核多线程并行编程模型研究及应用[J]. 阴山学刊(自然科学) 2012(02)
    • [29].C语言开发者使用NI Lab Windows/CVI 2013提升硬件速度[J]. 国外电子测量技术 2013(10)
    • [30].MPI并行编程及集群构建[J]. 内江科技 2012(02)

    标签:;  ;  ;  

    X10语言机制研究和实现优化
    下载Doc文档

    猜你喜欢