分布式与并行计算报告

上传人:m**** 文档编号:509831380 上传时间:2023-03-27 格式:DOCX 页数:9 大小:98.51KB
返回 下载 相关 举报
分布式与并行计算报告_第1页
第1页 / 共9页
分布式与并行计算报告_第2页
第2页 / 共9页
分布式与并行计算报告_第3页
第3页 / 共9页
分布式与并行计算报告_第4页
第4页 / 共9页
分布式与并行计算报告_第5页
第5页 / 共9页
点击查看更多>>
资源描述

《分布式与并行计算报告》由会员分享,可在线阅读,更多相关《分布式与并行计算报告(9页珍藏版)》请在金锄头文库上搜索。

1、并行计算技术及其应用简介XX(XXX, XX, XXX)摘要:并行计算是实现高性能计算的主要技术手段。在本文中从并行计算的发展历程开始介绍,总 结了并行计算在发展过程中所面临的问题以及其发展历程中出现的重要技术。通过分析在当前比较常用的实 现并行计算的框架和技术,来对并行计算的现状进行阐述。常用的并行架构分为SMP(多处理系统)、NUMA (非统一内存存储)、MPP (巨型并行处理)以及集群。涉及并行计算的编程模型有MPI、PVM、OpenMP、 TBB及Cilk+等。并结合当前研究比较多的云计算和大数据来探讨并行计算的应用。最后通过MPI编程模型, 进行了并行编程的简单实验。关键词:并行计算

2、;框架;编写模型;应用;实验A Succinct Survey about Parallel Computing Technology and ItsApplicationAbstract: Parallel computing is the main technology to implement high performance computing. This paper starts from the history of the development of Parallel Computing. It summarizes the problems faced in the deve

3、lopment of parallel computing and the important technologies in the course of its development. Through the analysis of framework and technology commonly used in parallel computing currently,to explain the current situation of parallel computing.Framework commonly used in parallel are SMP(multi proce

4、ssing system),NUMA(non uniform memory storage),MPP(massively parallel processing) and cluster.The programming models of parallel computing are MPI, PVM, OpenMP, TBB and Cilk+, etc.Explored the application of parallel computing combined with cloud computing and big data which are very popular in curr

5、ent research.Finally ,through the MPI programming model,a simple experiment of parallel programming is carried out.Key words: parallel computing; framework; programming model; application; experiment1引言近年来多核处理器的快速发展,使得当前软件技术面临巨大的挑战。单纯的提高单机性能,巳经不能满 足软件发展的需求,特别是在处理一些大的计算问题上,单机性能越发显得不足。在最近AlphaGo与李世石 的

6、围棋大战中,AlphaGo就使用了分布式并行计算技术,才能获得强大的搜索计算能力。并行计算正是在这 种背景下,应运而生。并行计算或称平行计算时相对于串行计算来说的。它是一种一次可执行多个指令的算 法,目的是提高计算速度,及通过扩大问题求解规模,解决大型而复杂的计算问题。可分为时间上的并行和 空间上的并行。时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。其 中空间上的并行,也是本文主要的关注点。并行计算(Parallel Computing)是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计 算速度和处理能力的一种有效手段。它的基本思想是用多个处理器来协

7、同求解同一问题,即将被求解的问题 分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的,含有多 个处理器的超级计算机,也可以是以某种方式互联的若干台的独立计算机构成的集群。通过并行计算集群完 成数据的处理,再将处理的结果返回给用户。目前常用的并行计算技术中,有调用系统函数启动多线程以及利用多种并行编程语言开发并行程序,常 用的并行模型有MPI、PVM、OpenMP、TBB、Cilk+等。利用这些并行技术可以充分利用多核资源适应目前 快速发展的社会需求。并行技术不仅要提高并行效率,也要在一定程度上减轻软件开发人员负担,如近年来 的TBB、Cilk+并行模型就在一

8、定程度上减少了开发难度,提高了开发效率,使得并行软件开发人员把更多 精力专注于如何提高算法本身效率,而非把时间和精力放在如何去并行一个算法。文献1回顾了并行计算技术六十多年的发展历史,并分析了其发展的未来趋势和所面临的可拓展性“墙”。 文献2对大规模MPI计算中,当前常用的容错机制和多模冗余带来的开销进行了分析,提出了一种可拓展三 模冗余容错机制。文献3则阐述了并行计算和云计算之间的关系,并介绍了并行计算在云计算中运用的一些 指导原则。文献4 分析了在大数据时代,并行计算面临的挑战和基于,综述了面向批处理、面向流处理、面 向图数据以及面向内存等几类并行计算模型的相关研究。文献5 对并行计算模型

9、进行了概述,介绍了理想计 算模型的特征,讨论了一些典型的计算模型,综述了目前并行计算模型在异构计算环境的发展情况。文献6 针对传统单一的并行计算模型变得越来越复杂,对并行计算个阶段针对性不强,提出了一种分层并行计算模 型的思想。文献7 针对在专业集群中进行并行计算的处理,存在费用高、管理困难和操作复杂等问题,利用 PC和以太网相连的实验环境,采用集群工作框架和并行计算的关键技术,提出基于Linux集群的并行计算系 统环境,并在该环境上对系统性能进行了测试。文献8在CPU/GPU协同并行计算这一新兴领域,对当前的 研究工作进行了综述。根据所用计算资源的规模将CPU/GPU协同并行计算研究划分为三

10、类,尔后从立项依据、 研究内容和研究方法等方面重点介绍了几个混合计算项目,并指出了可进一步研究的方向,以期为领域科学 家进行协同并行计算研究提供一定参考。文献9中对图形处理器中的相关问题进行研究。提出了统一计算架 构(CUDA)为实现GPU通用计算提供了高效、简便的方法.因此,建立了基于GPU通用计算平台的中心 差分格式的显式有限元并行计算方法.该方法针对GPU计算的特点,对串行算法的流程进行了优化和调 整,通过采用线程与单元或节点的一一映射策略,实现了迭代过程的完全并行化。2并行计算发展的三个重要阶段并行计算是实现超高计算性能的主要技术手段,回顾其发展的历史进程,可以看出并行计算的发展从整

11、体上跨越了三个阶段。2. 1 Amdahl公式与适度并行早在二十世纪四十年代中后期,现代电子计算机的鼻祖冯诺依曼就提出了用并行计算提高计算机性能 的技术途径。所谓并行计算,就是采用多个运算部件或多台计算机共同开展计算任务。理论上,并行多少台 计算机就可以获得多少倍的运算速度,但实际加速能力往往和应用特征密切相关。1967年,Amdahl提出了著 名的计算性能加速比公式(也称Amdahl定律):T nSA = T = 1 + f (n -1)n公式(1)中的Ts表示应用的串行版本程序的执行时间,f表示应用中不能被并行化部分的工作量占整个 程序工作量的比率,n表示并行系统的处理器数目。T表示应用的

12、并行版本程序和n个处理器上的执行时间。 这些概念和理论方面的基础研究极大地推动了适度并行计算技术的实用化。2. 2 Gustafson公式与大规模并行80年代后期学术界展开了一次很大的讨论,大家对并行是否有前途众说纷坛,问题的焦点是能不能 通过并行规模增大来持续提高计算机性能。1988年,美国科学家Gustafson在大量实际物理问题并行计算过程中总结了一个著名公式,发表在 Communication of ACM上。这篇论文只有两页,但它揭示了一个规律,即Gustafson通过他的应用实践发 现,很多程序随着应用规模的扩大,程序中不能被并行化部分工作量的绝对量基本保持不变。而不能被并行 化部

13、分工作量占总工作量的相对比例f会相应减小。基于这个规律,他提出了著名的Gustafson加速比公式:S = Ts = f + n(1-f)G Tn(2)从公式可以得出,当f随着计算规模扩大而不断缩小时,处理器数如果增多,一个程序的加速比还是可 以随着处理器的增多而提升的。这个公式不是一个精细的性能评估公式,而是一个思想性的公式,它揭示了 大规模并行的要旨:并行计算机的实际性能和它所运行的并行程序特征密切相关。在大规模并行计算机上要 取得高实用计算性能,在其上运行的并行程序必须具有串行计算负载保持不变,并行计算负载随着计算机规 模的扩大而扩大的特点,这样的程序通常成为可扩展并行程序。在提高大规模

14、并行计算使用效率的过程中,能否设计出可扩展并行算法和可扩展并行程序,与大规模并行计算机系统的研制同等重要。2. 3效能评价模型与高效能并行高性能计算机应该向什么方向发展,2002年美国国防部(DARPA)提出的“高效能计算系统(HPCS)” 计划,着眼于高性能向高效能的转变,认为高效能计算机系统不仅要关注很高的计算性能,还要关注系统的 实用性能、可编程性、可移植性、系统鲁棒性和经济可行性。于是基于经济学中产生率的概念和效用理论逐 渐取代了以往单一的计算性能评价模型。效能模型框架如下:(3)U (P, T)C( P, M ,T)其中,T为问题P解决的时间(Time-to-solution),M是

15、并行计算机系统,U为效用函数,C为在系统M 上T时间内解决问题P所投入的最小成本函数。该效能度量模型综合考虑了并行系统开发(Development)和 运行(Execution)两种状态,将开发的时间和系统运行的时间统一到问题解决时间T中。虽然,围绕这一公 式标志着高性能计算机学术界、产业界对大规模并行计算机发展趋势产生了新的认识。3并行编程模型并行编程可以调用系统函数启动多线程,也可以利用并行编程模型,如常用的并行模型有MPI、PVM、 OpenMP、TBB 及 Cilk+等。3.1 MPI简介MPI (Message Passing Interface)是基于消息传递的并行编程模型。消息传

16、递指的是并行执行的各个 进程具有自己独立的堆栈和代码段,作为互补相关的多个程序独立执行,进程之间的通信通过显式地调用通 信函数来完成。(1) MPI程序基本函数 MPI_Init用来初始化MPI执行环境,建立多个MPI进程之间的联系,为后续通信做准备MPI_Finalize 则是结束MPI执行环境。这两个函数之间定义MPI程序的并行区域。 MPI_Comm_rank来表示各个MPI进程。 MPI_Comn_size用来表示进程组中有多少个进程,返回整型的错误值,同时有两个函数参数,MPI_Comn 类型的通信域,标识参与计算的MPI进程组,如MPI_COMM_WORLD;整数指标,返回相应进程组中的进程数。(2) MPI性能分析与优化举例MPI消息传递开销由两部分组成:一部分是通信固有的延迟;另一部分是消息传递开销,与消息的数据 量和网络带宽

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文 > 其它学术论文

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号