- 1、本文档共30页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《并行amp;分布式计算》的30页提纲.ppt
提纲 一、概念辨析 二、并行计算 三、分布式计算 四、基于GPU的高性能计算 五、分布式应用框架Hadoop 一、概念辨析 并行计算 分布式计算 并行计算vs分布式计算 网格计算 云计算 云计算vs效用计算 云计算vs网格计算 普适计算 二、并行计算 1 并行计算概述 2 并行计算理论基础 3 多线程编程 4 OpenMP编程 5 MPI编程 1 并行计算概述 1.1 并行计算定义 1.2 为什么需要并行计算 1.3 超级计算机的世界格局 1.4 并行计算机系统结构 1.5 并行计算机系统结构分类 1.6 并行程序的开发途径 1.7 四种并行程序设计技术 1.8 并行算法 2 并行计算概述 2.1 并行处理概述 2.2 加速比性能定律 2.3 并行程序性能优化的一般原则 3 多线程编程 3.1线程的基本概念 3.2 线程的层次 3.3 线程的同步 3.4 多线程编程模型 3.5 多线程编程若干问题的讨论 3.6 多线程编程的方法 信号量 锁 条件变量 消息 4 OpenMP编程 4.1 OpenMP简介 4.2 OpenMP编程技术 4.3 OpenMP程序性能分析 4.4 OpenMP编程实例 5 MPI编程 5.1 MPI简介 5.2 MPI编程基础 5.3 MPI集群通信 5.3 MPI性能优化 5.4 MPI编程实例 5.5 MPI与OpenMP对比 5.6 MPI与OpenMP混合编程 MPI是一种消息传递编程模型,并成为这种编程模型的代表和事实上的标准; MPI是一种标准或规范的代表,而不特指某一个对它的具体实现; MPI是一个库,而不是一门语言; MPI库可以被FORTRAN77/C/Fortran90/C++调用。从语法上说它遵守所有对库函数/过程的调用规则,和一般的函数/过程没有什么区别。 最终目的是服务于进程间通信这一目标。 目前已经有MPI1和MPI2的标准。 三、分布式计算 1、分布式计算简介 2、主流的分布式计算技术及规范 2、主流的分布式计算技术及规范 2.1 消息传递 2.2 客户-服务器模型 2.3 peer-to-peer模型 2.4 消息系统模式 2.5 远程过程调用 2.6 分布式对象 2.7 网络服务模型 2.8 移动Agent模型 Web Service: 四、基于GPU的高性能计算 1 GPU的产生背景及前景 2 GPU工作原理与作用 3 GPU与CPU的区别 4 GPU的优势 5 GPU的应用行业 6 CUDA 五、分布式应用框架Hadoop 1当前面临的数据爆炸问题 2 Hadoop的来源和组成 3 HDFS文件系统 4 MapReduce框架 5 Hadoop的应用场合 6 ZooKeeper MapReduce 是一个编程模型,处理和产生大数据集。使用这个模型写出的程序自动在一个大集群上并行执行。运行时系统负责分割输入数据/分配程序在不同的机器上运行/处理机器出错/管理机器间的通信。mapreduce可以让没有任何分布式和并行经验的程序员很容易地利用大分布式系统的资源。 MapReduce将RPC编程细节与分布式处理过程隐藏起来 在Mapper或者Reducer中,用户只需指定一对key/value的处理逻辑,Hadoop框架会自动顺序迭代解析所有key/value,并将每对key/value交给Mapper或者Reducer处理。 * 并行计算: 并行计算或称平行计算是相对于串行计算来说的;所谓并行计算可分为时间上的并行和空间上的并行。 时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。并行计算科学中主要研究的是空间上的并行问题。? 并行计算通常是针对计算量的科学计算问题。 分为:单机的多核多处理器的并行 多机(集群)的并行 集群计算集群服务 高性能计算,超级计算 分布式计算: 是计算机科学的一个重要分支,它主要研究如何把一个需要巨大的计算能力才能解决的问题分解成许多小的部分,然后把这些部分再分配给许多志愿者计算机进行处理,最后把这些计算结果综合起来得到最终的结果。? 目前常见的分布式计算项目通常使用世界各地上千万志愿者计算机的闲置计算能力,通过互联网进行数据传输。 可以帮助一些缺乏研究资金的、公益性质的科学研究,加速人类的科学进程。有效利用全世界联网机器的闲置处理能力,向大众普及科学意识。 1.2 为什么需要并行计算 1)特殊行业的需求: 2)现代科学方法 3)多核处理器 “从某种程度上说,对于软件开发者而言,CPU主频提升就像是免费的午餐,此前所有的程序很自然地会从主频的提升中受益,而如今多核出现了,这种免费的午餐没有了。我们必须针对多核重新进行软件设计” 。 多核技术是处理器发展
文档评论(0)