计算机体系结构量化研究方法【1】并行体系结构的分类与量化原理

目录

  • 1.SISD(单指令流单数据流)
  • 2.SIMD(单指令流多数据流)
  • 3.MISD(多指令流单数据流)
  • 4.MIMD(多指令流多数据流)
  • 5.充分利用并行
  • 6.局部性原理
  • 7.重点关注常见情形
  • 8.安达尔定律(Amdahl定律)
  • 9.处理器性能公式

参考:
https://www.bilibili.com/video/BV1b3411o7st?p=3&vd_source=d7e9114bfde8b3cec9bdd6a0c26d7393
《计算机体系结构量化研究方法》第六版

1.SISD(单指令流单数据流)

类似多周期CPU,只是进行简单的状态机的执行,也叫顺序执行单处理器;一般的流程为:取指、译码、执行、存储、写回,如下图所示;
在这里插入图片描述
举个栗子,比如说加法指令,SISD的CPU对加法指令译码后,执行时先访问内存,取得第一个操作数,之后再一次访问内存,取得第二个操作数,随后才能进行求和运算。当然,加上流水线的方式可以加快CPU的运行速度,如下图所示。
计算机体系结构量化研究方法【1】并行体系结构的分类与量化原理_第1张图片

2.SIMD(单指令流多数据流)

同一指令由多个使用不同数据流的处理器执行。SIMD 计算机利用数据级并行(DLP),对多个数据项并行执行相同操作。每个处理器都有自己的数据存储器(也就是SIMD中的MD),但只有一个指令存储器和控制处理器,用来提取和分派指令。3种利用DLP的体系结构:向量体系结构、标准指令集的多媒体扩展、GPU。如下如所示,取指译码后,对某数据集合的数据进行并行计算,并存储到对应存储区中。

再举个栗子,比如说加法指令,指令译码后几个执行部件同时访问内存,一次性获得所有操作数进行运算。
计算机体系结构量化研究方法【1】并行体系结构的分类与量化原理_第2张图片

3.MISD(多指令流单数据流)

目前还没有这样的CPU,实际收益较小

4.MIMD(多指令流多数据流)

传统的顺序执行的计算机在同一时刻只能执行一条指令、处理一个数据,因此被称为单指令流单数据流计算机。而对于大多数并行计算机而言,多个处理单元都是根据不同的控制流程执行不同的操作,处理不同的数据,因此,它们被称作是多指令流多数据流计算机,即MIMD计算机,如并行向量处理机、多处理机、大规模并行处理机等。

对于MIMD计算机而言,每个处理器都提取自己的指令,对自己的数据进行操作,它针对的是任务级并行。一般来说,MIMD比SIMD更灵活,所以适用性也更强,但它比 SIMD 更贵一些。

-----------------------------------------------量化原理分割线-------------------------------------------

5.充分利用并行

充分利用并行是提高性能的重要方法之一,在单个处理器中,往往通过流水线的方法来提高并行度,其背后的基本思想就是将指令重叠起来,以缩短完成指令序列的总时间。

实例:
①流水线
②服务器带宽增加
③处理器的内核增加
④内存增加带宽 (带宽要匹配)

注意:带宽是时钟频率和数据位宽的积

6.局部性原理

①空间局部性:执行一项任务的时候顺便执行另外一项任务,顺便执行比分开单独执行效率更高。 (地址相邻近的项往往会在相近时间被用到)

举个栗子:

  • 去买菜的同时还顺便把肉给买了,不会先去超市买完菜,再回家,再去超市买肉。
  • CPU访问内存memory时,需要先把数据存到缓存cache,这时可以将需要用到的数据一次性放到缓存。

②时间局部性:对于一项任务,需要执行两次,一次性执行两次比单独执行效率更高。(最近访问过的内容很可能在短时间内被再次访问)

7.重点关注常见情形

  • 说白了就是:把有限的资源优化放在大头上

8.安达尔定律(Amdahl定律)

①加速比公式
有两个计算方法:

  • 性能比:改进后性能/未改进性能
  • 时间比:未改进执行时间/改进后执行时间

②改进比例:可改进部分所占比例。举个栗子,一个程序执行需要100s,其中40s可以改进,则改进比例为0.4

9.处理器性能公式

①CPU时间:时钟周期数*时钟周期时间

②CPI(每条指令时间周期数)

③IC (指令数)

你可能感兴趣的:(计算机体系结构量化研究方法,fpga开发)