Analytic comparison of two advanced C language-based parallel programming models

骈文研究 Pub Date : 2004-07-05 DOI:10.1109/ISPDC.2004.11
A. Marowka
{"title":"Analytic comparison of two advanced C language-based parallel programming models","authors":"A. Marowka","doi":"10.1109/ISPDC.2004.11","DOIUrl":null,"url":null,"abstract":"There are two main approaches for designing parallel language. The first approach states that parallel computing demands new programming concepts and radical intellectual changes regarding the way we think about programming, as compared to sequential computing. Therefore, the design of such a parallel language must present new constructs and new programming methodologies. The second approach states that there is no need to reinvent the wheel, and serial languages can be extended to support parallelism. The motivation behind this approach is to keep the language as friendly as possible for the programmer who is the main bridge toward wider acceptance of the new language. In this paper we present a qualitative evaluation of two contemporary parallel languages: OpenMP-C and Unified Parallel C (UPC). Both are explicit parallel programming languages based on the ANSI C standard. OpenMP-C was designed for shared-memory architectures and extends the base-language by using compiler directives that annotate the original source-code. On the other hand, UPC was designed for distribute-shared memory architectures and extends the base-language by new parallel constructs. We deconstruct each parallel language into its basic components, show examples, make a detailed analysis, compare them, and finally draw some conclusions.","PeriodicalId":62714,"journal":{"name":"骈文研究","volume":null,"pages":null},"PeriodicalIF":0.0000,"publicationDate":"2004-07-05","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"5","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"骈文研究","FirstCategoryId":"1092","ListUrlMain":"https://doi.org/10.1109/ISPDC.2004.11","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 5

Abstract

There are two main approaches for designing parallel language. The first approach states that parallel computing demands new programming concepts and radical intellectual changes regarding the way we think about programming, as compared to sequential computing. Therefore, the design of such a parallel language must present new constructs and new programming methodologies. The second approach states that there is no need to reinvent the wheel, and serial languages can be extended to support parallelism. The motivation behind this approach is to keep the language as friendly as possible for the programmer who is the main bridge toward wider acceptance of the new language. In this paper we present a qualitative evaluation of two contemporary parallel languages: OpenMP-C and Unified Parallel C (UPC). Both are explicit parallel programming languages based on the ANSI C standard. OpenMP-C was designed for shared-memory architectures and extends the base-language by using compiler directives that annotate the original source-code. On the other hand, UPC was designed for distribute-shared memory architectures and extends the base-language by new parallel constructs. We deconstruct each parallel language into its basic components, show examples, make a detailed analysis, compare them, and finally draw some conclusions.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
基于C语言的两种高级并行编程模型的分析比较
设计并行语言主要有两种方法。第一种方法指出,与顺序计算相比,并行计算需要新的编程概念和关于我们思考编程方式的彻底的智力改变。因此,这种并行语言的设计必须提出新的结构和新的编程方法。第二种方法指出,没有必要重新发明轮子,串行语言可以扩展以支持并行性。这种方法背后的动机是让程序员尽可能友好地使用该语言,因为程序员是使新语言得到更广泛接受的主要桥梁。在本文中,我们提出了两个当代并行语言的定性评价:OpenMP-C和统一并行C (UPC)。两者都是基于ANSI C标准的显式并行编程语言。OpenMP-C是为共享内存体系结构设计的,并通过使用注释原始源代码的编译器指令扩展了基本语言。另一方面,UPC是为分布式共享内存体系结构设计的,并通过新的并行结构扩展了基本语言。我们将每种并行语言分解为其基本组成部分,并举例说明,对它们进行详细的分析、比较,最后得出一些结论。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
104
期刊最新文献
A Java CPU calibration tool for load balancing in distributed applications Task scheduling: considering the processor involvement in communication Extending Maple to the grid: design and implementation Bridging Secure WebCom and European DataGrid security for multiple VOs over multiple grids GridAdmin: decentralising grid administration using trust management
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
现在去查看 取消
×
提示
确定
0
微信
客服QQ
Book学术公众号 扫码关注我们
反馈
×
意见反馈
请填写您的意见或建议
请填写您的手机或邮箱
已复制链接
已复制链接
快去分享给好友吧!
我知道了
×
扫码分享
扫码分享
Book学术官方微信
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术
文献互助 智能选刊 最新文献 互助须知 联系我们:info@booksci.cn
Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。
Copyright © 2023 Book学术 All rights reserved.
ghs 京公网安备 11010802042870号 京ICP备2023020795号-1