PTG: An Abstraction for Unhindered Parallelism

Anthony Danalis, G. Bosilca, Aurélien Bouteiller, T. Hérault, J. Dongarra
{"title":"PTG: An Abstraction for Unhindered Parallelism","authors":"Anthony Danalis, G. Bosilca, Aurélien Bouteiller, T. Hérault, J. Dongarra","doi":"10.1109/WOLFHPC.2014.8","DOIUrl":null,"url":null,"abstract":"Increased parallelism and use of heterogeneous computing resources is now an established trend in High Performance Computing (HPC), a trend that, looking forward to Exascale, seems bound to intensify. Despite the evolution of hardware over the past decade, the programming paradigm of choice was invariably derived from Coarse Grain Parallelism with explicit data movements. We argue that message passing has remained the de facto standard in HPC because, until now, the ever increasing challenges that application developers had to address to create efficient portable applications remained manageable for expert programmers.Data-flow based programming is an alternative approach with significant potential. In this paper, we discuss the Parameterized Task Graph (PTG) abstraction and present the specialized input language that we use to specify PTGs in our data-flow task-based runtime system, PaRSEC. This language and the corresponding execution model are in contrast with the execution model of explicit message passing as well as the model of alternative task based runtime systems. The Parameterized Task Graph language decouples the expression of the parallelism in the algorithm from the control-flow ordering, load balance, and data distribution. Thus, programs are more adaptable and map more efficiently on challenging hardware, as well as maintain portability across diverse architectures. To support these claims, we discuss the different challenges of HPC programming and how PaR-SEC can address them, and we demonstrate that in today's large scale supercomputers, PaRSEC can significantly outperform state-of-the-art MPI applications and libraries, a trend that will increase with future architectural evolution.","PeriodicalId":59014,"journal":{"name":"高性能计算技术","volume":"4 1","pages":"21-30"},"PeriodicalIF":0.0000,"publicationDate":"2014-11-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"52","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"高性能计算技术","FirstCategoryId":"1093","ListUrlMain":"https://doi.org/10.1109/WOLFHPC.2014.8","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 52

Abstract

Increased parallelism and use of heterogeneous computing resources is now an established trend in High Performance Computing (HPC), a trend that, looking forward to Exascale, seems bound to intensify. Despite the evolution of hardware over the past decade, the programming paradigm of choice was invariably derived from Coarse Grain Parallelism with explicit data movements. We argue that message passing has remained the de facto standard in HPC because, until now, the ever increasing challenges that application developers had to address to create efficient portable applications remained manageable for expert programmers.Data-flow based programming is an alternative approach with significant potential. In this paper, we discuss the Parameterized Task Graph (PTG) abstraction and present the specialized input language that we use to specify PTGs in our data-flow task-based runtime system, PaRSEC. This language and the corresponding execution model are in contrast with the execution model of explicit message passing as well as the model of alternative task based runtime systems. The Parameterized Task Graph language decouples the expression of the parallelism in the algorithm from the control-flow ordering, load balance, and data distribution. Thus, programs are more adaptable and map more efficiently on challenging hardware, as well as maintain portability across diverse architectures. To support these claims, we discuss the different challenges of HPC programming and how PaR-SEC can address them, and we demonstrate that in today's large scale supercomputers, PaRSEC can significantly outperform state-of-the-art MPI applications and libraries, a trend that will increase with future architectural evolution.
查看原文
分享 分享
微信好友 朋友圈 QQ好友 复制链接
本刊更多论文
PTG:无阻碍并行的抽象
增加并行性和使用异构计算资源现在是高性能计算(HPC)的既定趋势,这一趋势,展望Exascale,似乎必然会加强。尽管硬件在过去十年中不断发展,但选择的编程范式总是来自具有显式数据移动的粗粒度并行。我们认为,消息传递在HPC中一直是事实上的标准,因为直到现在,应用程序开发人员为创建高效的可移植应用程序而必须解决的不断增加的挑战仍然是专业程序员可以管理的。基于数据流的编程是一种具有巨大潜力的替代方法。在本文中,我们讨论了参数化任务图(Parameterized Task Graph, PTG)的抽象,并给出了我们在基于数据流任务的运行时系统PaRSEC中用来指定PTG的专用输入语言。这种语言和相应的执行模型与显式消息传递的执行模型以及基于备选任务的运行时系统的模型形成对比。参数化任务图语言将算法中并行度的表达与控制流排序、负载平衡和数据分布解耦。因此,程序在具有挑战性的硬件上具有更强的适应性和更有效的映射,并保持跨不同体系结构的可移植性。为了支持这些说法,我们讨论了HPC编程的不同挑战以及PaR-SEC如何解决这些挑战,并证明了在当今的大型超级计算机中,PaRSEC可以显著优于最先进的MPI应用程序和库,这一趋势将随着未来架构的发展而增强。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 去求助
来源期刊
自引率
0.00%
发文量
1121
期刊最新文献
The AHP-TOPSIS based DSS for selecting suppliers of information resources A mutual one-time password for online application Impact of Artificial Intelligence in COVID-19 Pandemic: A Comprehensive Review Structure and criteria defining business value in agile software development based on hierarchical analysis A Hybrid Collaborative Filtering Technique for Web Service Recommendation using Contextual Attributes of Web Services
×
引用
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