- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
1000-9825/2002/13(01)0118-07 ©2002 Journal of Software 软 件 学 报 Vol.13, No.1
并行程序设计模型和语言
安 虹, 陈国良
( 中国科学技术大学 计算机科学技术系,安徽 合肥 230027);
( 国家高性能计算中心(合肥),安徽 合肥 230027)
E-mail: han@
摘要: 并行计算技术的发展已有20 多年的历史了.时至今日,高性能并行计算仍然缺乏有效的并行程序设计方法和
工具,使得编写并行程序、理解并行程序的行为、调试和优化并行程序的性能都很困难.从分析并行程序设计困难
的原因入手,指出了当前各种高性能并行机系统支持的并行程序设计方法存在的诸多问题,综述了并行程序设计模
型和语言的研究现状,给出了并行程序设计模型的评价标准,并提出了这一研究领域所面临的挑战性问题,指出了一
些未来可能的发展方向.
关 键 词: 并行程序设计;模型;语言;可移植性;可扩放性;局部性
中图法分类号: TP312 文献标识码: A
并行计算技术的发展已有 20 多年的历史了,高性能并行计算机系统正在进入越来越多的应用领域.与硬
件的发展相比,并行软件的发展则显得更加滞后,影响了硬件效率的发挥, 限制了并行机系统的广泛应用.并行
程序设计理论和技术的研究已成为发展并行处理技术当务之急的课题.并行程序设计方法经历了多年的发展
和实践检验,进一步的发展面临着诸多挑战性问题,现在应该是很好地进行总结的时候了.
1 并行程序设计困难的原因
时至今日,高性能并行计算机上至今仍然缺乏有效的并行程序设计方法和工具,使得编写并行程序、理解
并行程序的行为、调试和优化并行程序的性能都很困难.并行程序设计困难的深层原因在于,高性能并行计算
技术在发展过程中存在着以下问题:
(1) 迄今为止,并行计算所需的理论仍然是不成熟的,没有理论或很少有理论为技术的发展指明方向.我们
还不知道更多的表示并行计算的方法,也不知道逻辑上如何推理它们,甚至不知道在实际的体系结构上,什么样
的并行算法才是有效的.
(2) 人们花了很长时间才理解并行计算机的不同部分的性能需要平衡以及这个平衡是如何影响性能的.要
获得好的性能,则需要仔细控制处理器速度和互连通信性能的关系, 同时也需要与存储器层次的性能取得平衡.
许多并行系统无法很好地支持实现这种平衡,甚至把这个艰难的工作交给用户去做.
(3) 人们已经习惯于以串行的方式来理解、设计和调试程序, 因而感到并行程序设计有些困难.从另一方面
来说,与串行程序设计相比,并行程序设计更具挑战性,这有 3 个方面的原因:第一,并行程序必须包含在处理器
间交换数据和处理互斥区的机制,这就增加了程序的语义复杂性和语法复杂性;第二,对一个有效的并行程序来
说,必须在处理器之间均匀地分配任务,这种对并行程序设计在算法方面的挑战是串行程序设计中所没有的;第
收稿日期: 2000-04-20; 修改日期: 2000-07-12
基金项目: 国家863 高科技发展计划资助项目(863-306-ZD01-02-3); 中国科学技术大学青年科学基金(KA 1109)
作者简介: 安虹(1963 -),女, 山东胶州人,博士,副教授,主要研究领域为并行计算机体系结构,并行程序设计环境与工具,高性
能计算;陈国良(1938 -),男,安徽颍上人,教授,博士生导师,主要研究领域为并行分布计算,并行计算机体系结构,并行算法.
安虹 等:并行程序设计模型和语言 119
三,数据也必须在处理器间进行划分, 以保持数据的局部性,因为移动数据是要开销的.
(4) 与串行程序设计相比,并行程序设计中存在的可移植性问题更加严重. 由于至今还没有哪个并行体系
结构家族是独立于技术变化的,当需要将一个软件系统从一个并行平台移植到另一个上时,则可能意味着要完
全重建这个软件.许多用户至今还未能从高性能并行计算中得到实际的好处,就是因为重写代码的难度太大.并
行软件用户期望在他们所使用的并行计算平台上能获得平滑的过渡,这样可以平滑地重新设计和重建软件.
(5) 长期以来,并行系统的设计目标只面向市场较小的科学和工程计算,而忽视了大的工业和商用市场,使
得并行机十分昂贵,增加了制造商和用户的投资风险,减小了用户使用并行机的热情,从而势必造成其上的软件
技术发展缓慢.并行程
原创力文档


文档评论(0)