流水线的组成和体系
计算方面问题常考:
- 流水线的执行时长问题。
求流水线周期,三段中最长的时间就是一周期,2ns,最耗时的时长就是流水线周期。
100条指令全部执行要多久?
分成两段,左边流水线建立时间。
理论算法:(2 + 2 + 1) + 99 * 2 = 203ns。
实际公式:(k(几段) + n - 1 ) * ▲t(流水线周期)。
流水线吞吐率计算
单位时间内处理数据的量。
比如上面那个题,100个指令/203ns就是结果。
最大吞吐率就是1/▲t,一种理想情况。
流水线的加速比计算
加速比s:
上面的例题,不采用流水线,执行时间就是5 * 100 = 500ns
流水线是203ns,直接除就可以得到结果。
流水线的效率怎么求??
哪些时间片是有效利用的,哪些不是?
如图所示,也就是将有数字的总数/总块的总数得到效率。
5▲t * 4,就是所有带数字的面积大小。
总面积是4 * 15▲t
得20/60 = 1/3的效率。
计算机的组成与体系结构
存储:
运算器控制器中就会有相应的寄存器,巨小的容量。
Cache高速缓存
内存
外存
拿掉cache一样可以用,速度变慢。