并行计算(一)——并行计算机系统及结构模型

这篇具有很好参考价值的文章主要介绍了并行计算(一)——并行计算机系统及结构模型。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

致谢

SMP、COW、PVP、MPP计算机相关_神.秘.人的博客-CSDN博客_并行向量处理机

1 并行计算机系统及结构模型

1.1 并行计算

在下面的讲解之前,我们先看一下并行计算的量纲。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.1.1 并行计算和计算机科学

随着计算机和计算机学科的发展,所有的学科都转向定量化和精确化,因此也出现了很多计算开头的学科,如计算数学、计算物理、计算生物等。目前所有的学科可以归结为三大类:即理论科学、实验科学和计算科学。其中计算科学是一个交叉学科,用计算的方法来解决应用问题,但是其中的问题也暴露出来——很多理论模型复杂或尚未建立、实验费用昂贵或无法进行。

为此,很多模型在无法实际操作的情况下,通过超级计算机的仿真模拟,可以初步探测该模型的可行性。比较常见的应用就是气象局天气预报、原子弹爆炸模拟等。

并行计算技术是一个国家的综合国力的体现,并行计算在国民经济、国防建设和科技发展中占有重要的战略地位。在飞机设计、药物设计、全球气候预测、人类基因等巨大挑战性问题时,并行计算机发挥了巨大的作用。

国家目前正在大力发展高性能计算,在军事上,我国拥有银河、神威等超级计算机;在民用上,我国拥有曙光、联想等超级计算机。需要注意的是,在08年时,我国的国产高性能计算机就已经进入TOP500前十位,总数也在大幅增加。

1.1.2 当代科学与工程问题的计算需求

并行计算需求有很多种。一般分为计算密集型应用、数据密集型应用、通信密集型应用。

计算密集型应用应用于大型科学工程计算,数值模拟等,其应用领域通常在石油、气象、CAD、核能、制药、环境监测分析、系统仿真等。

数据密集型应用则应用于数字图书馆、数据仓库、数据挖掘、计算可视化等,应用领域通常在图书馆、银行、证券、税务、决策支持系统等。

通信密集型应用应用于协同工作、网格计算、遥控和远程诊断等。其应用领域通常在网站、信息中心、搜素引擎、电信、流媒体等。

1.2 并行计算机系统互连

1.2.1 系统互连

不同带宽和距离的互连技术有多种,比较常用是:广域网WAN、城域网MAN、局域网WAN、个人区域网PAN、总线。广域网一般跨国,城域网一般城市,局域网一般一栋楼,个人区域网一般几台设备。其中广域网使用了交换技术,而局域网使用的是广播技术。如果是使用总线的话,总线是最快的,你可以理解为总结传输时不需要网络,直接用一条USB连接的那种。

网络性能指标一般由下面的参数来衡量:

  • 节点度:射入或射出一个节点的边数。在单向网络中,入射和出射之和称为节点度。
  • 网络直径:网络中任何两个节点之间的最长距离,即最大路径数。由于网络直径过长会导致两台计算机太远,通信容易延迟,所以我们一般要求网络直径要尽可能的短。
  • 对剖宽度:对分网络各半所必须移去的最少边数。
  • 对剖带宽:每秒内,在最小的对剖平面上通过所有连线的最大消息位数

1.2.2 静态互连网络

静态互联网络是处理单元间有着固定连接的一类网络,在程序执行期间,这种点到点的连接保持不变;典型静态网络有一维线性阵列、二维网孔、树连接、超立方网络、立方环、洗牌交换网、蝶状网络等。

换而言之,静态互连网络就是用一个链路把多个处理器连接起来,构成物理意义上的并行计算机,如果某个处理器想发信息给另外一个处理器,总是能通过这条链路来干这种事。

1.2.2.1 一维线性阵列(1-D Linear Array)

一维线性阵列可以看成是单链表,即每个节点只与左右相邻相连,故其别名为二近邻连接。N个结点用N-1条边串联而成,内结点度为2,直径为N-1,对剖宽度为1。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

这种结构虽然简单方便,但是恢复性较差。而且首尾两个计算机太远了,时延也差。所以在构造并行计算机时基本不采用。

如果将上述网络拓扑收尾节点重合,即可变为。环可以是单向可以是双向,其节点度也是2,直径为N/2或N-1,对剖宽度为2。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.2.2.2 二维网孔(2-D Mesh)

二维网孔是并行计算机中较为常用的。设二维网孔为 n × n \sqrt{n}×\sqrt{n} n ×n 大小。其每个节点只与其上下左右的近邻相连,边界除外,节点度为4,网络直径为 2 N − 1 2 \sqrt{N-1} 2N1 ,对剖宽度为 N \sqrt {N} N

当然,二维网孔也有拓展类型,详见下图这里不再赘述。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.2.2.3 树结构

一般采用树的网络拓扑结构用的大多数是二叉树。除了根、叶节点以外,每个内节点只与其父节点和子节点相连。

节点度为3,对剖宽度为1,而树的直径为2[logN]-1。如果尽量增加节点度,则直径缩小为2,此时就变成了星型网络,其对剖宽度为[n/2]。

传统的二叉树的主要问题是根容易成为通信瓶颈,且时延很低可恢复性也很差。,因而出现了新型的胖二叉树

胖树的含义是:越往根部走,通信链路就越宽,这样能够有效避免根位置出现通信瓶颈的情况。

星型模式下处于中间位置的节点会成为通信瓶颈,因为所有的通信都要经由它传输。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.2.2.4 超立方

当结点按正方体的模样构建拓扑结构,每个角作为结点处,那么我们把这个拓扑结构叫做3-立方,将两个3-立方对应顶点相连,则可以构成4-立方。以此类推,n-立方也可以这么干。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

这样的超立方结构虽然性能较好但是扩展性却不好,因为每扩展一次立方,每个节点的度数变高,这样扩展起来很麻烦。

我们也可以把正方体对应的角换成三节点环,就可以将拓扑结构变成立方环。

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

如果是4-立方,那么每个角就要换成4个结点构成的环。

1.2.2.5 小结

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

对于网络拓扑结构来说,节点度数衡量其网络的复杂度,而链路数衡量其网络的代价。

1.2.3 动态互连网络

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

这种网络比较普遍的是总线上面挂交换器。我们知道同一时间段中,一条总线只允许两头的设备进行信息交换,而在交换完成后,交换器可以将总线的端口改变,使其连接另外一个设备。通过这种方法,可以根据我们应用的需求,动态地选择我们需要的设备。

1.2.4 嵌入

在互联网络中还有另外一个概念叫嵌入。其做法是将网络中的各节点映射到另一个网络中去。用膨胀系数来描述嵌入的质量,它是指被嵌入网络中的一条链路在所要嵌入的网络中对应所需的最大链路数。如果该系数为1,则称为完美嵌入。

对于环网和超立方来说,两者皆可被完美嵌入到2D环绕网中。

1.2.4 标准互连网络

常用的标准互连网络如下:

  • 光纤分布式数据接口(FDDI)
  • 快速以太网
  • Myrinet
  • SCI
  • InfiniBand

1.3 并行计算机系统结构

1.3.1 并行计算机结构模型

1.3.1.1 PVP

PVP也叫并行向量处理机(Parallel Vector Processor),其内部含有为数不多、功能强大的定制向量处理器,以及定制的高带宽纵横交叉开关和高速数据访问。其价格十分昂贵,因为其组件都需定制,一般适用于国家部门。

1.3.1.2 SMP

SMP也叫对称多处理机。其访存、IO都是对称的。其用的处理器大多数是商用处理器。

目前SMP需要解决的主要问题是Cache的一致性问题。多级高速缓存可以支持数据的局部性,而其一致性可由硬件来增强。大多数SMP系统都是基于总线连接的,占据了并行计算机市场中很大的份额。

1.3.1.3 MMP

MMP也叫大规模并行处理机(Massively Parallel Processor),其规模大,性能好。

1.3.1.4 DSM

DSM又叫分布式共享存储器(Distributed Shared Memory,DSM)。在DSM中,每个节点都有本地内存,所有的节点都有一个共享空间。

1.3.1.5 COW

COW又叫工作站机群(Cluster of Workstation)。工作站机群的结构技术起点比较低,可以自己将一些服务器/微型机通过以太网连起来,加上相应的管理和通讯软件来搭建自己的工作站机群。

在集群中,每个节点都有本地磁盘,除了没有显示器没有鼠标没有键盘之外,基本上其他普通计算机该有的它都有。每个节点用I/O总线连向专门设计的多级高速网络,如前面在标准互连网络提到的那些。

机群也是构建并行计算机一种很廉价的方案,其被称为穷人的解决方案。使用这类并行计算机跑并行程序效率很低,但是由于它的性价比和搭建的简便性,使得近几年常被用于做并行科学计算和并行商用计算。

需要注意的是,机群不适合用于国家级的计算,因为由上述可知,实际上机群可以理解为是很多廉价的机器并在一起,而如果要运行速度跟快,能处理的数据更多,就需要并一个很大的机群。而如果机群并得很大,就会导致散热有问题。我们前面说过它们通过总线互联的,你总不能一个计算机在东一个计算机在西,然后一条总线连着吧。肯定是统一放在一个地方啊。而如果要处理大型的数据,一般机群所处的机房就要三四层楼那么高,篮球场那么宽,肯定不利于散热。

1.3.1.6 小结

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

实际上上面的介绍的几类并行计算机结构模型现在已经慢慢地趋近于三类:分布共享存储计算机分布存储多计算机共享存储多处理机。刚刚讲过的那几个结构模型如下图所示:

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.3.2 并行计算机访存模型

1.3.2.1 UMA

UMA(Uniform Memory Access)模型是均匀存储访问模型的简称。其特点是:

  • 物理存储器被所有处理器均匀共享
  • 所有处理器访问任何存储字取相同的时间
  • 每台处理器可带私有高速缓存
  • 外围设备也可以一定形式共享

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.3.2.2 NUMA

与UMA与之相对的是NUMA(Nonuniform Memory Access)模型。它是非均匀存储访问模型的简称。特点是:

  • 被共享的存储器在物理上是分布在所有的处理器中的,其所有本地存储器的集合就组成了全局地址空间
  • 处理器访问存储器的时间是不一样的;访问本地存储器LM或群内共享存储器CSM较快,而访问外地的存储器或全局共享存储器GSM较慢。
  • 每台处理器照例可带私有高速缓存,外设也可以某种形式共享
1.3.2.3 COMA

COMA(Cache_Only Memory Access)模型是全高速缓存访问的简称,其特点是:

  • 各处理器节点汇总没有存储层次结构,全部高速缓存组成了全局地址空间
  • 利用分布的高速缓存目录D进行远程高速缓存的访问
  • COMA中的高速缓存容量一般都大于2级高速缓存容量
  • 使用COMA时,数据开始可任意分配,因为在运行时它最终会被迁移到要用到它们的地方
1.3.2.4 CC-NUMA

CC-NUMA(Coherent-Cache Nonuniform Memory Access)模型是高速缓存一致性非均匀访问模型的简称。其特点是:

  • 大多数使用基于目录的高速缓存一致性协议
  • 保留SMP结构易于编程的优点,也改善常规SMP的可扩放性
  • CC-NUMA实际上是一个分布共享存储的DSM多处理机系统
  • 它最显著的优点是程序员无需明确地在节点上分配数据,系统的硬件和软件开始时自动在各节点分配数据,在运行期间,高速缓存一致性硬件会自动将数据迁移到它要用的地方。
1.3.2.5 NoRMA

NoRMA(No-Remote Memory Access)模型是非远程存储访问模型的简称。NORMA的特点是:

  • 所有存储器都是私有的
  • 绝大数NUMA都不支持远程存储器的访问
  • 在DSM中,NORMA就消失了

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法

1.3.2.6 小结

并行计算机系统包括节点,互联网和什么,技术杂谈,云计算,算法文章来源地址https://www.toymoban.com/news/detail-817823.html

到了这里,关于并行计算(一)——并行计算机系统及结构模型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 计算机网络第一章——计算机网络系统结构(下)

    提示:总角之宴,言笑晏晏。信誓旦旦,不思其反。反是不思,亦已焉哉。 问题很庞大,将大问题分成小问题,对应一个层次 实体指的是每层中的活动元素,任何可以发送或者接受信息的硬件或者软件进程 只有对等的实体之间才有协议,不对等的实体之间是不存在协议的

    2024年02月07日
    浏览(51)
  • 系统架构设计专业技能 · 计算机组成与结构

    现在的一切都是为将来的梦想编织翅膀,让梦想在现实中展翅高飞。 Now everything is for the future of dream weaving wings, let the dream fly in reality. 点击进入系列文章目录 运算器 ① 算术逻辑单元ALU:数据的算术运算和逻辑运算 ② 累加寄存器AC:通用寄存器, 为ALU提供一个工作区, 用于

    2024年02月09日
    浏览(54)
  • 【计算机组成原理与体系结构】指令系统

    目录 一、指令概述 二、指令分类 三、扩展操作码 四、指令寻址 五、数据寻址 六、x86汇编指令 计算机指令 :指示计算机硬件进行某种操作的命令 机器指令 :使用二进制编码来表示的计算机指令 能被计算机硬件系统识别并执行的特殊的0/1代码串(机器码) 指定了计算机硬

    2024年02月08日
    浏览(70)
  • 计算机系统结构与操作系统实验三(6)-内存管理

    实现内存管理 这里修改makefile文件和run.sh文件 在《操作系统真相还原源码》的基础上稍加修改makefile 注意:这里要用 make all 命令来执行makefile文件了 本实验所有源码👉👉👉 计算机系统结构与操作系统实验三bochs源代码

    2024年02月15日
    浏览(45)
  • 实验4 Cache性能分析【计算机系统结构】

    2023-6-16 21:19:13 以下内容源自《【计算机系统结构】》 仅供学习交流使用 实验3 Tomasulo算法【计算机系统结构】 (1)加深对Cache的基本概念、基本组织结构以及基本工作原理的理解。 (2)掌握Cache容量、相联度、块大小对Cache性能的影响。 (3)掌握降低Cache不命中率的各种方法。 采用

    2024年02月09日
    浏览(79)
  • 深入理解计算机系统(13)_存储器层次结构

    第一章 计算机的基本组成 1. 内容概述 2. 计算机基本组成 第二章 计算机的指令和运算 3. 计算机指令 4. 程序的机器级表示 5. 计算机运算 6. 信息表示与处理 第三章 处理器设计 7. CPU 8. 处理器体系结构 9. 优化程序性能 10. 其他处理器 第四章 存储器和IO系统 11. 存储器的层次结构

    2024年02月16日
    浏览(35)
  • 2023届计算机保研面试基础专业问题(数据结构、算法、计算机语言、计算机网络、数据库、操作系统、数学)

    以下的专业相关基础问题,是在2022年暑期准备面试过程中,断断续续准备的,最终上岸厦大啦,也希望这些内容对后面准备保研的学弟学妹们有帮助。少即是多、快即是慢,希望大家也不必太焦虑,慢慢来比较快! 堆、栈、队列、链表等数据结构 树:红黑树、二叉树的各类

    2024年02月15日
    浏览(63)
  • 深度学习应用篇-计算机视觉-图像分类[2]:LeNet、AlexNet、VGG、GoogleNet、DarkNet模型结构、实现、模型特点详细介绍

    LeNet是最早的卷积神经网络之一 [1] ,其被提出用于识别手写数字和机器印刷字符。1998年,Yann LeCun第一次将LeNet卷积神经网络应用到图像分类上,在手写数字识别任务中取得了巨大成功。算法中阐述了图像中像素特征之间的相关性能够由参数共享的卷积操作所提取,同时使用

    2024年02月08日
    浏览(49)
  • 系统架构设计师-第1章计算机组成与体系结构

    计算机系统是一个硬件和软件的综合体,可以把它看成按功能划分的多级层次结构。 系统软件支持应用软件的运行,为用户开发应用软件提供平台,用户可以使用它,但不能随意修改它。常用的系统软件有操作系统、语言处理程序、连接程序、诊断程序和数据库管理系统等。

    2024年02月03日
    浏览(62)
  • 系统架构设计师---计算机基础知识之数据库系统结构与规范化

    目录 一、基本概念  二、 数据库的结构  三、常用的数据模型         概念数据模型        基本数据模型        面向对象模型 四、数据的规范化      函数依赖       范式   1. 数据库 (DataBase, DB) : 是指长期储存在计算机内的、有组织的、可共享的数据集合。   

    2024年02月12日
    浏览(54)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包