• 并行计算


    并行计算或称平行计算是相对于串行计算来说的。它是一种一次可执行多个指令的算法,目的是提高计算速度,及通过扩大问题求解规模,解决大型而复杂的计算问题。所谓并行计算可分为时间上的并行和空间上的并行。 时间上的并行就是指流水线技术,而空间上的并行则是指用多个处理器并发的执行计算。
     
     

     

    定义

     播报
    并行计算(Parallel Computing)是指同时使用多种计算资源解决计算问题的过程,是提高计算机系统计算速度和处理能力的一种有效手段。它的基本思想是用多个处理器来协同求解同一问题,即将被求解的问题分解成若干个部分,各部分均由一个独立的处理机来并行计算。并行计算系统既可以是专门设计的、含有多个处理器的超级计算机,也可以是以某种方式互连的若干台的独立计算机构成的集群。通过并行计算集群完成数据的处理,再将处理的结果返回给用户。
    并行计算可分为时间上的并行和空间上的并行。
    时间上的并行:是指流水线技术,比如说工厂生产食品的时候步骤分为:
    1. 清洗:将食品冲洗干净。
    2. 消毒:将食品进行消毒处理。
    3. 切割:将食品切成小块。
    4. 包装:将食品装入包装袋。
    如果不采用流水线,一个食品完成上述四个步骤后,下一个食品才进行处理,耗时且影响效率。但是采用流水线技术,就可以同时处理四个食品。这就是并行算法中的时间并行,在同一时间启动两个或两个以上的操作,大大提高计算性能。
    空间上的并行:是指多个处理机并发的执行计算,即通过网络将两个以上的处理机连接起来,达到同时计算同一个任务的不同部分,或者单个处理机无法解决的大型问题。
    比如小李准备在植树节种三棵树,如果小李1个人需要6个小时才能完成任务,植树节当天他叫来了好朋友小红、小王,三个人同时开始挖坑植树,2个小时后每个人都完成了一颗植树任务,这就是并行算法中的空间并行,将一个大任务分割成多个相同的子任务,来加快问题解决速度。

    特征

     播报
    为利用并行计算,通常计算问题表现为以下特征:
    (1)将工作分离成离散部分,有助于同时解决;
    (2)随时并及时地执行多个程序指令;
    (3)多计算资源下解决问题的耗时要少于单个计算资源下的耗时。

    基本体系结构

     播报
    并行计算科学中主要研究的是空间上的并行问题。从程序和算法设计人员的角度来看,并行计算又可分为数据并行和任务并行。一般来说,因为数据并行主要是将一个大任务化解成相同的各个子任务,比任务并行要容易处理。
    空间上的并行导致了两类并行机的产生,按照Flynn的说法分为:单指令流多数据流(SIMD)和多指令流多数据流(MIMD)。我们常用的串行机也叫做单指令流单数据流(SISD)。MIMD类的机器又可分为以下常见的五类:并行向量处理机(PVP)、对称多处理机(SMP)、大规模并行处理机(MPP)、工作站机群(COW)、分布式共享存储处理机(DSM)。

    访存模型

    并行计算机有以下五种访存模型:
    均匀访存模型(UMA)
    全高速缓存访存模型(COMA)
    一致性高速缓存非均匀存储访问模型(CC-NUMA)

    计算模型

    并行求解过程示意图并行求解过程示意图
    不像串行计算机那样,全世界基本上都在使用冯·诺伊曼的计算模型;并行计算机没有一个统一的计算模型。不过,人们已经提出了几种有价值的参考模型:PRAM模型BSP模型LogP模型,C^3模型等。

    网络设置

     播报
    并行计算机是靠网络将各个处理机或处理器连接起来的,一般来说有以下几种方式:处理单元间有着固定连接的一类网络,在程序执行期间,这种点到点的链接保持不变;典型的静态网络有一维线性阵列、二维网孔、树连接、超立方网络、立方环、洗牌交换网、蝶形网络等。静态连接

    动态连接

     播报
    用交换开关构成的,可按应用程序的要求动态地改变连接组态;典型的动态网络包括总线、交叉开关和多级互连网络等。

    基本术语

     播报
    节点度:射入或射出一个节点的边数。在单向网络中,入射和出射边之和称为节点度。
    网络直径:网络中任何两个节点之间的最长距离,即最大路径数。
    对剖宽度:对分网络各半所必须移去的最少边数。
    对剖带宽:每秒钟内,在最小的对剖平面上通过所有连线的最大信息位(或字节)。

    性能度量

     播报

    基本指标

    执行时间
    工作负载
    存储性能

    加速比评测

    Amdahl定理
    Gastofson定理
    Sun-Ni定理

    可扩放性标准

    等效率标准
    等速度标准
    并行计算与云计算
    云计算是在并行计算之后产生的概念,是由并行计算发展而来, 两者在很多方面有着共性。学习并行计算对于理解云计算有很大的帮助。并行计算是学习云计算必须要学习的基础课程。
    但并行计算不等于云计算,云计算也不等同并行计算。两者区别如下。
    (1)云计算萌芽于并行计算
    云计算的萌芽应该从计算机的并行化开始,并行机的出现是人们不满足于CPU摩尔定率的增长速度,希望把多个计算机并联起来,从而获得更快的计算速度。这是一种很简单也很朴素的实现高速计算的方法,这种方法后来被证明是相当成功的。
    (2)并行计算、网格计算只用于特定的科学领域,专业的用户
    并行计算、网格计算的提出主要是为了满足科学和技术领域的专业需要,其应用领域也基本限于科学领域。传统并行计算机的使用是一个相当专业的工作,需要使用者有较高的专业素质,多数是命令行的操作,这是很多专业人士的噩梦,更不用说普通的业余级用户了。
    (3)并行计算追求的高性能
    在并行计算的时代,人们极力追求的是高速的计算、采用昂贵的服务器,各国不惜代价在计算速度上超越他国,因此,并行计算时代的高性能机群是一个“快速消费品”,世界TOP500高性能计算机地排名不断地在刷新,一台大型机群如果在3年左右不能得到有效的利用就远远的落后了,巨额投资无法收回。
    (4)云计算对于单节点的计算能力要求低
    云计算时代我们并不去追求使用昂贵的服务器,我们也不用去考虑TOP500的排名,云中心的计算力和存储力可随着需要逐步增加,云计算的基础架构支持这一动态增加的方式,高性能计算将在云计算时代成为“耐用消费品”。
     
     
    转载至:https://baike.baidu.com/item/%E5%B9%B6%E8%A1%8C%E8%AE%A1%E7%AE%97
  • 相关阅读:
    EL
    Cookie & Session
    JSP !
    Request & response
    The use of servlet
    Details about HTTP
    About Tomcat!
    idea提升效率的高频快捷键!(持续更新中)
    Mysql数据库的使用经验总结
    Myeclipse以及Genymotion工具的使用以及java后台开发小结
  • 原文地址:https://www.cnblogs.com/dingdingyiyi/p/15900552.html
Copyright © 2020-2023  润新知