基于任务的并行编程模型-论文.pdf

基于任务的并行编程模型-论文.pdf

ID:53029535

大小:109.55 KB

页数:1页

时间:2020-04-14

基于任务的并行编程模型-论文.pdf_第1页
资源描述:

《基于任务的并行编程模型-论文.pdf》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、2015年第6期信息通信2015(总第150期)INFORMATION&COMMUNICAT10NS(Sum.No150)基于任务的并行编程模型王松(山东科技大学,山东青岛266510)摘要:通过现阶段的并行编程情况,介绍了几种常用的并行编程模型,每种模型的适用情况各不一样,通过介绍基于任务的并行编程模型,能够看出任务并行的优点,程序员的工作不再繁重,而且其效率和性能更高。关键词:任务并行;任务窃取;多核中图分类号:TP332文献标识码:A文章编号:1673.1131(2015)06.0070—01由于效能墙和存储墙的原因,通过提高CPU主频来提高3基于任务并行的编程模型性能的方法已经不再

2、可行。进而各个处理器厂商开始研发多这里以IntelTBB为主介绍一下基于任务并行的编程模核芯片,到目前为止,多核或者多处理器已经成为了主流。型。任务并行编程模型把任务作为并行的基本单位,提供任务传统的串行编程方式已经无法开发出满足多核、多处理划分和同步的编程接口,把任务划分和同步工作交给程序员完器平台的程序。伴随着多核、多处理器更新换代,多核并行编成,用户可以把应用程序划分出大量细粒度任务[3】。TBB运程技术也处于不断发展和完善中。各种多核、多处理器平台行时需要将这些任务分配到不同的线程上去,调度器根据任务的出现,也促进了多核编程的进一步发展。目前并行编程技形成的依赖关系图进行调度执行。

3、并且采用任务窃取的调度术的发展要落后于多核的发展。这对发展并行而言是一种制算法实现负载平衡。至于程序分成的若干任务块,在底层如何约,这需要我们开发一种新的并行编程技术来实现并行。被调度执行,这不需要程序员去关注。因此,程序员的主要任1多核并行编程概述务就变成了关注于程序本身的并行化,确定程序中的依赖关系。传统的串行代码是顺序执行的,并不能充分利用多核的任务窃取调度使得父子任务是否并行执行变得不确定。优势,因为这些串行执行的指令仅仅能够用到这些核中的一每次执行的顺序并不一定完全相同。但是程序最终的执行结个。当CPU是多核时,以前的程序不但不能充分利用这种优果必须保证一致。势,反而会造成性能下

4、降。出现这种情况后,就促进了多核并TBB给用户提供了一套并行算法和模板,在并行编程方行编程的发展,怎样利用现有的多核或者多处理器的优势,成面提供了适当的抽象,加入了task概念,抽象层仅需很少的接为了研究的一个重点。口代码,但是性能上确实有很大的提升。同时提出了parallelforparallelwhile等针对控制流进行并行化。同时TBB将多_并行程序的设计目的是找到程序中的并行性,寻求程序、与体系结构的匹配,合理调度执行任务,降低程序由于并行化核处理器的多个核心抽象为可以同时运行的模块,这样程序带来的性能开销。在多核并行编程中,需要将应用程序划分员可以通过简单的方式来开发应用程序,而

5、不用担心多核的成不同的任务块,确定这些任务块之间的依赖关系Ⅲ。增加所带来的编程的困难,还能优化多核心处理器的多线程。多核并行编程追求的理想情况是当采用N个线程参与程IntelTBB还具有良好的跨平台优势,编写一次应用程序序执行时,希望程序的性能提升N倍,但是现实很难达到这个可以移植到多个平台中,而不需要修改代码和针对平台的特理想值,因为在并行执行过程中,会有线程间的通信、多核调殊配置。为32位和64位的Linux、Windows等平台提供了一度等开销。同时程序由串行执行改成并行执行,在互斥访问种很好的解决方案。的变量前需要加锁控制,锁的性能开销同样是很大的。如果4结论和未来的挑战没有一个很

6、好的解决办法,那么这些开销会对程序的性能有基于任务的并行编程模型是在多处理器、多核出现后为很大的影响,因此需要关注于并行编程模型的发展,以此来降了方便并行化编程而研究发展起来的一种并行化编程模型。低开销,提高程序的并行度,充分利用多线程的优势。在这种模型中,程序员只需要关注应用程序的划分,不需要关2并行编程模型注底层的实现细节。并行编程模型作为应用程序和底层系统并行编程模型和计算机体系结构密切相关。共享存储体的桥梁,起到了一个重要的作用。随着计算机硬件和软件的不断发展,基于多处理器、多核系结构下的并行编程模型主要是共享内存模式,以OpenMP的并行编程是未来编程的主流。硬件方面,基于NUM

7、A结构为代表。分布式存储体系结构下并行编程模型主要是消息传的多路多核处理器的快速发展。。软件方面,分布式计算和网递模型和分布式共享编程模型。以MPI为代表。OpenMP应用于共享内存的体系结构,基于线程,它提供络的兴起。这些因素的增加,使得并行编程模型更加重要。总之,随着多处理器、多核的发展以及一些新兴事物的出了一套与平台无关的编译指导语句、库函数和环境变量,能够现,并行编程模型也会紧跟新平台的发展。以线程为基础对串行程

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。