精华内容
下载资源
问答
  • 并行体系结构

    2020-11-16 21:41:23
    2、体系结构的分类(Flynn分类法) 1、基本概念 名称 概念 并行并行性是指计算机系统具有可以同时进行运算或者操作的特性,它包括同时性与并发性两种含义;同时性是指两个或两个以上的事件在同一时刻发生;并发性...

    重点内容
    1、基本概念
    2、体系结构的分类(Flynn分类法)
    1、基本概念
    名称 概念
    并行性 并行性是指计算机系统具有可以同时进行运算或者操作的特性,它包括同时性与并发性两种含义;同时性是指两个或两个以上的事件在同一时刻发生;并发性是指两个或两个以上的事件在同一时间间隔发生(如分时交替执行、重叠执行等)。
    VLIW处理机 由编译程序在编译时找出指令间潜在的并行性,进行适当调度安排,把多个能并行执行的操作组合在一起,成为一条具有多个操作段的超长指令。由这条超长指令去控制VLIW处理机中多个互相独立工作的功能部件,每个操作段控制一个功能部件,相当于同时执行多条指令。
    超线程技术 同时调度多个线程执行,即多条指令流,按一定的策略往超标量流水线中交替/混合发射指令。流水线处理机可以同时处理来自不同线程的多条指令,可有效避免单指令流中的相关问题。
    向量处理机 采用流水线技术实现向量处理,向量的分量源源不断地进入流水线,各个分量的处理时间重叠,整体上提高向量的处理速度。流水线满载以后,每个时钟周期向流水线发射一组分量,每个时钟周期输出一组分量的运算结果。
    对称多处理机SMP 结构与功能相同的多处理机通过总线或专用网络连接在一起,共享主存和I/O设施,由集中操作系统统一管理,提供各处理机的作业/任务调度、以及处理机间的同步,使得多个处理机的存在对用户是透明的,感觉就是一个处理机。
    机群系统 是由一组完整的计算机(指离开机群系统仍能独立运行自己任务,有自己的操作系统、内存、I/O设施,一般称为节点),通过标准通信协议、商品化网络(易于连接应用)连接在一起,在机群软件(中间件)统一管理调度下,可作为一个统一的计算资源协同工作,使用户感觉就是一个计算机系统
    2、体系结构的分类(Flynn分类法)
    (1)单指令流单数据流SISD:传统单处理机系统
    (2)单指令流多数据流SIMD:向量处理机
    (3)多指令流单数据流MISD:没意义
    (4)多指令流多数据流MIMD:多处理机系统、机群系统

    展开全文
  • 哈工程,研究生,并行体系结构,期末考试,并行体系结构11.docx
  • 介绍了计算机主流并行体系结构的发展,采用个人高性能计算机(personal high performance computer, PHPC)系统技术,研制了一种并行体系结构实验平台,介绍了其设计方案以及基于该实验平台的教学思路。该实验平台...
  • 解决N个线性方程组Ax = b(其中A是已知的N x N矩阵,b和x分别是已知和未知的N x 1向量)的系统的... 我们的目标是分析Hypercube上高斯消除算法的复杂性,提出一种高斯消除算法,并分析其在网格并行体系结构上的复杂性。
  • 并行计算机体系结构中最近最令人兴奋的开发是传统上完全不同的方法(即共享内存、消息传递、SIMD和数据流)在一个公共机器结构上的聚合。 这部分是由于共同的技术和经济力量,部分是由于更好地理解并行软件。 ...
  • 哈工程,研究生,期末总结并行体系结构哈工程,研究生,期末总结并行体系结构
  • 阐述了传统的IPsec体系结构性能上的不足之处,提出了一种基于CompactPCI的多机多卡(加密卡)的IPSec并行体系结构。在分析了CompactPCI的并行体系结构、多卡并行加密算法和多机并行负载均衡算法的基础上,给出了...
  • 并行计算 陈国良编著 呵呵 大家来下载 是第三版《并行计算:结构•算法•编程(第3版)》是并行计算系列丛书之开篇,它以并行计算为主题,围绕并行计算机、并行算法和并行程序设计展开讨论,强调融并行计算机体系结构、...
  • 并行计算和并行计算机体系结构

    千次阅读 2017-12-27 09:39:59
    冯诺依曼计算机体系结构 什么是并行计算 为什么用并行计算 谁在用并行计算 硬件提供了哪些支持 软件提供了哪些支持 总结 参考资料关于并行,你知道多少?思考多少?听到“并行”这个词汇,我最先想到的是在多车道上...

    关于并行,你知道多少?思考多少?

    听到“并行”这个词汇,我最先想到的是在多车道上飞驰的汽车,它们是并行运行的。它们之间完全独立吗?并不见得,当一个车道上的车要变道时要打开方向灯,相邻车道的车都会减速避让。可见,并行是发生在大部分时间,有时候有串行的成分在里面。从更宏观的层面来看,一般的问题都有“并行”和“串行”两种特性同时存在。其实,再说的直白点,任何一件事情都有独立性的部分,也有相关性的部分。哦,对了。我得解释一下“并行”的英文:parallelism。很相关的一个概念是“并发”,其英文:concurrency。顺便解释一下这两个概念,并行侧重于同时处理多个任务的能力,并发则侧重于并发的关键是你有处理多个任务的能力,不一定要同时。并发是一种设计理念,让一件事情完成的效率最高,并发设计的好的话,并行占比高,整个事情完成的效率就高。详细的见参考资料3Concurrency is not parallelism
    说实话,这个话题太大,网上资料也很丰富。我写这篇文章的目的是激发大家关于“并行”的思考,然后做一个概况性质的介绍,让大家对“并行”有一个正确的感性认识。

    并行这个概念太大,我们下面把范围缩小,重点讨论并行计算的话题。

    冯诺依曼计算机体系结构

    冯诺依曼计算机体系结构

    什么是并行计算?

    我们都知道计算实际上是一系列确定的步骤。聊并行计算哪能少了串行计算,直接上图:
    串行计算
    并行计算也得看图说话:
    并行计算

    这里我们假定了要解决的问题完全可分为4个独立运行的部分,由4个processors来独立运行。实际问题中,独立性和关联性是一个“太极”关系,就涉及到划分的粒度和通讯的频率等等问题。

    为什么用并行计算?

    1. 现实世界中存在大量并行
      . 自然社会中,每时每刻都在发生大量的有相互关联的事件。
      . 相比于串行计算模型,并行计算模型更有利于我们为现实世界建模。
      . 下面有好多并行的例子。
      自然社会中的并行例子

      更直接的原因

    2. 使用并行技术可以节约大量的时间&金钱
      并行节约时间和成本
      tag:大规模的运算集群可以由比较廉价的计算机组成用于完成大规模的计算任务,比如阿里巴巴的双十一。利用的通用的便宜的X86服务器组成超大规模nodes运算集群。

    3. 可以用来解决超大规模的问题
      Grand Challenge Problems
    4. 提供高并发性
      想想阿里,百度,腾讯可以同时为多少人提供服务吧。
    5. 可以充分利用网络上的计算资源(非本地计算资源)
      SETI@home
      Folding@home
      了解下这两个开源项目,你就明白啥意思了。

    6. 让你更了解你所使用的并行计算机硬件架构,充分发挥它的性能
      intel SMP

    7. 目前,随着网络数据量越来越大,大数据下所需要的计算力会更大
      全球对计算力的需求一直在成上升趋势,且大规模计算机集群提供的运算力也在逐年提升。
      大规模集群运算力
      数据来源:top500.org

      有了上面这些原因,相信你也对高并发程序设计感兴趣了吧。

    谁在用并行计算?

    1. 科学、工程领域
      科学和工程
    2. 工业、商业
      工业、商业
    3. 全球各种各样的APP
      各种APP

    硬件提供了哪些支持?

    其实,硬件从下面这些方面都提供了并行支持。
    1. 片内级
    . 片内级并行
    . 片内多线程
    . 单片多处理器
    2. CPU级
    . UMA对称多处理器系统
    . NUMA多处理器系统
    . COMA多处理器系统
    3. 计算机级
    . MPP—大规模并行处理器
    . 集群计算

    上个图,一目了然。
    并行计算机分类

    硬件上来说,我们现在使用的手机和笔记本实际上都是单CPU多核心的,比如我的笔记本是4核8线程的,就是说我的电脑有一个CPU,这个CPU有4个core,每个core上还提供了intel的超线程技术。那从操作系统这一级来看我拥有8个独立的cpu可以同时使用。
    4核8线程CPU

    这种架构就是标准的SMP系统,所有的核平等共享Cache,interrupt,和硬件资源。
    UMA
    PowerPC CPU硬件架构图
    这个是PowerPC结构的CPU结构图。
    看懂套路了吗?提高性能的方式也就两个:1,增强当个core的频率(每秒执行指令的次数)2,增加core的数量。
    单个CPU增加核心也是有瓶颈限制的,因为SMP中共享总线需要很高的bindwidth,还需要解决总线竞争问题。
    那咋继续提升性能呢?哦,你可能也想到了,解耦,然后增加CPU的个数,CPU之间也建立bus。intel有一种技术叫QPI,就是互联CPU用的。那CPU之间共享内存,读取自己CPU的内存不用通过QPI总线,肯定比读取挂在另一个CPU上的内存要快,所以叫NUMA。
    NUMA
    NUMA往细了分还可以分为CC-NUMA、NC-NUMA等。
    那这种耦合度的扩展限制在CPU互联bus上,可扩展性差一些,那要接着增强计算能力,咋办?老办法,解耦,把多个机器利用bus互联。这就产生了MPP(Massively Parallel Processors)、COW(Cluster of
    Workstations)。
    MPP

    但是,目前超大规模的集群运算,一般单个节点都是SMP的,或者是NUMA的,然后用高性能BUS将不同的机器再互联起来。

    我们目前市面上见到的4路服务器、16路服务器,一般是NUMA架构的服务器,见到的8单元服务器,一般是指COW架构的服务器。

    软件提供了哪些支持?

    通过上面关于硬件并行的介绍,我们也了解到要想合理的发挥这些机器的性能,还是需要了解这些机器的硬件架构,主要是要理解耦合性和内聚性,以及在软件设计时充分考虑如何利用这些硬件特性,才能设计出高效、经济的软件系统。
    等会,什么时候软件设计人员开始需要了解硬件细节了?其实,大部分硬件细节都通过OS,系统库给封装了,对软件开发人员透明。这个其实也是个很有争议的话题:能否在不了解底层细节的情况下,开发出好的软件?
    我的想法是,计算机体系结构是分层的,我们必须站在中间这一层看问题,比如你是做OS的,你往上要看应用,往下要看硬件。要想把一个工具发挥到极值,还是需要了解你所使用的工具的,所谓人剑合一就是这个意思。
    扯远了,在我们常见的SMP系统上,单个机器是符合冯诺依曼计算机体系结构的,各个core的抽象是在OS这一层做的。os+开发库,可以让软件开发人员透明地使用并行开发方法,比如我们常用的并发库—POSIX Threads。当然还有其他的一些线程库。这个我们很熟悉,但是到了NUMA架构的机器上,是谁做的抽象呐?答案还是OS,因为到目前为止的体系架构仍然还是硬件级共享内存的。你想linux kernel就可以识别NUMA架构的计算机,安装多个CPU,比如说安装2个16核的CPU,OS起来后,你可以看到你可以直接利用的cpu是32个。也就是说基于这种架构硬件的软件开发和在普通的PC机上无太大区别。
    但是到了COW或者MPP时,由于是多个独立的主机通过高速bus互联的架构,是一种非共享内存的模型,每个主机运行独立的OS,读取另外主机的内存只能通过Message方式,需要定义read、write原语。实现这种的有一个开源库叫OpenMPI。当然其他的也有很多,只是原来在SMP、NUMA上的程序要想移植到非硬件共享的平台上来,一般有两个方法:1,修改原有的软件,让其适应在非硬件共享内存的平台上运行。2,针对非硬件共享内存的平台做软件抽象,使应用程序看起来像是在共享内存环境下运行—就是使用虚拟机技术。使用虚拟机技术可以在不同层次中做共享内存抽象。
    shared memory模型

    总结

    说了这么多,感觉说明白了。其实说白了,并行计算机架构就是在解决一个事情:如何利用多个core来实现更高的运算能力。这和这一个问题是等价的:利用什么组织架构来管理很多人,让这些人发挥更大的改造自然的能力。
    在摩尔定律失效的当下,在不同层次研究并行计算的架构就显得很重要了,我个人感觉在传统IC的基础上有以下两个方向可以继续保持摩尔定律:1,研究更专用,更高效的并行架构,包括微指令层、指令层、IC层、CPU层、整机层。2,研究如何编写更高效的软件。目前,因为原来摩尔定律带来的诟病,有太多的不合格程序员在写着不合格的程序,其中就包括我在内。

    参考资料

    链接打不开的话,请注意开车方式。

    Introduction to Parallel Computing
    Structured Computer Organization(Andrew S.Tanenbaum)
    Concurrency is not parallelism

    展开全文
  • 第九章 并行体系结构

    2020-08-02 20:41:27
    文章目录1、基本概念2、体系结构的分类(Flynn分类法) 1、基本概念 并行性:并行性是指计算机系统具有可以同时进行运算或者操作的特性,它包括同时性与并发性两种含义;同时性是指两个或两个以上的事件在同一时刻...

    1、基本概念

    名称概念
    并行性并行性是指计算机系统具有可以同时进行运算或者操作的特性,它包括同时性与并发性两种含义;同时性是指两个或两个以上的事件在同一时刻发生;并发性是指两个或两个以上的事件在同一时间间隔发生(如分时交替执行、重叠执行等)。
    VLIW处理机由编译程序在编译时找出指令间潜在的并行性,进行适当调度安排,把多个能并行执行的操作组合在一起,成为一条具有多个操作段的超长指令。由这条超长指令去控制VLIW处理机中多个互相独立工作的功能部件,每个操作段控制一个功能部件,相当于同时执行多条指令。
    超线程技术同时调度多个线程执行,即多条指令流,按一定的策略往超标量流水线中交替/混合发射指令。流水线处理机可以同时处理来自不同线程的多条指令,可有效避免单指令流中的相关问题。
    向量处理机采用流水线技术实现向量处理,向量的分量源源不断地进入流水线,各个分量的处理时间重叠,整体上提高向量的处理速度。流水线满载以后,每个时钟周期向流水线发射一组分量,每个时钟周期输出一组分量的运算结果。
    对称多处理机SMP结构与功能相同的多处理机通过总线或专用网络连接在一起,共享主存和I/O设施,由集中操作系统统一管理,提供各处理机的作业/任务调度、以及处理机间的同步,使得多个处理机的存在对用户是透明的,感觉就是一个处理机。
    机群系统是由一组完整的计算机(指离开机群系统仍能独立运行自己任务,有自己的操作系统、内存、I/O设施,一般称为节点),通过标准通信协议、商品化网络(易于连接应用)连接在一起,在机群软件(中间件)统一管理调度下,可作为一个统一的计算资源协同工作,使用户感觉就是一个计算机系统

    2、体系结构的分类(Flynn分类法)

    • (1)单指令流单数据流SISD:传统单处理机系统
    • (2)单指令流多数据流SIMD:向量处理机
    • (3)多指令流单数据流MISD:没意义
    • (4)多指令流多数据流MIMD:多处理机系统、机群系统

    在这里插入图片描述

    展开全文
  • 本书的内容对多方面的读者都是很重要的,包括计算机体系结构系统软件和应用领域工作的研究人员、学生和工程技术人员。
  • 并行计算机体系结构文章,描述什么是并行计算机体系结构,分类,特点等等。
  • 并行计算体系结构答案,希望大家多多下载
  • 并行计算机体系结构.zip
  • 在分析 SIMD 体系结构的基础上,从体系结构系统设计到处理单元 PE 内部电路设计,给出一种多核处理器体系结构,在处理单元中能够实现指令级并行(Instruction-level Parallelism,ILP)和数据级并行(Data-level ...
  • 系统极性码的并行级联结构的实用设计和解码
  • 高级计算机体系结构笔记: 一、应用程序的并行分类:   1数据级并行(DLP):同时操作多数据  2任务级并行(TLP):创建了一些能够独立处理但... 2向量体系结构和图像处理器:将单条指令并行应用于一个数...

    高级计算机体系结构笔记:

     

    一、应用程序的并行分类: 

      1数据级并行(DLP):同时操作多数据

      2任务级并行(TLP):创建了一些能够独立处理但大量采用并行方式执行的工作任务

    二、硬件的体系结构:

      1指令并行:在编译器帮助下。利用流水线的思想开发数据级并行,利用推理执行的思想以中等水平开发数据集并行。

      2向量体系结构和图像处理器:将单条指令并行应用于一个数据集,来达到数据集并行

           3线程级并行:在紧耦合硬件模型中开发数据集并行或任务及并行,这种模型允许在线程之间进行交互。

      4请求级并行:在程序员或操作系统制定的大量去耦合任务之间开发并行

    三、硬件支持数据疾病和任务级并行的四种方式:

      1单指令流、单数据流(SISD):单处理器,把它看作标准的顺序计算机,但可以利用指令集并行。ILP(超标量和推理执行)的SISD体系结构。

      2单指令流、多数据流(SIMD):同一指令由多个使用不同数据流的处理器执行。SIMD计算机开发数据级并行,但是对多个数据项并行执行相同操作。每个处理器都有自己的数据存储器(也就是MIMD中的MD),但只有一个指令存储器和控制处理器。用来提取和分派指令。三种开发DLP的不同体系结构:向量体系结构、标准指令集的多媒体扩展、GPU。

      3多指令流、单数据流:很少见不介绍。

      4多指令流、多数据流(MIMD)每个处理器都提取自己的指令,对自己的数据进行操作,它针对的是任务级并行。一般来说,MIMD要比SIMD灵活,它用来开发线程级并行,常见体系结构是:集群、仓库级计算机。因为可以很自然并行执行多独立任务,几乎不要通信和同步。

     

    转载于:https://www.cnblogs.com/smartwhite/p/8316457.html

    展开全文
  • 目前,由于系统传输速度的要求,提高RS译码速度变得非常重要,采用得比较多的设计方法是并行处理和流水线设计。影响译码速度最关键的模块是求解关键方程模块。  近年来,关于RS(255,223)码译码器实现的算法得到...
  • 并行计算 陈国良编著 呵呵 大家来下载 是第三版《并行计算:结构•算法•编程(第3版)》是并行计算系列丛书之开篇,它以并行计算为主题,围绕并行计算机、并行算法和并行程序设计展开讨论,强调融并行计算机体系结构、...
  • 并行数据库体系结构

    2019-05-03 16:09:36
    并行数据库体系结构
  • 并行处理机pvp: 并行向量处理机最大的特点是系统中的CPU是专门定制的向量处理器(VP)。系统还提供共享存储器以及与VP相连的高速交叉开关。 对称多处理机(SMP): 对称多处理机(Symmetric Multiprocessor)最主要的...
  • 实时图像处理;DSP并行系统;互联网络;结构可重构
  • 并行数据库的基本体系结构
  • 陈国良并行计算机体系结构

    热门讨论 2011-03-07 15:33:34
    国防科技大学陈国良并行计算机体系结构书籍 超经典
  • 21161构成的新型的多DSP并行处理结构,它具有运算能力强、I/O带宽宽、通信手段多样、能灵活地改变拓扑结构、可扩展性和通用性强等特点,并且以此并行计算结构为核心设计实现了通用高速实时雷达信号处理系统。...
  • 中科大-高级计算机体系结构课程ppt-并行计算机-包括课程作业答案
  • 高级计算机体系结构2020,吴俊敏老师,中科大研究生课程
  • 并行处理技术已经成为现代计算机科研与发展的关键技术。其推动力来自实际应用对高性能、低价格和持续生产力日益增长的要求 。
  • 非常经典的斯坦福大学关于并行计算机的教材,现已绝版。包括并行计算机设计的方法和实例。 太经典了,不敢私藏,必须共享!

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 285,146
精华内容 114,058
关键字:

并行系统结构