现在的位置: 首页 > 综合 > 正文

设计一个简易的处理器(10)–性能评估(完)

2013年04月17日 ⁄ 综合 ⁄ 共 810字 ⁄ 字号 评论关闭

性能评价

————

最终需要的PIPE处理器已经设置完毕了,现在要评价它的性能,采用CPI这个指标进行评价.

CPI: PIPE执行一条指令所需的平均时钟周期数.

(1). PIPECPI直观判断

PIPE采用了"加载互锁+转发"技术,转发技术不会降低流水线的吞吐量,而加载互锁是通过暂停技术来实现的,所以会降低流水线的吞吐量.这样基本上可以达到每个时钟周期发射一条新指令的目标,也就是PIPECPI1(CPI>1).

 

(2).量化

C-时钟周期数

I-需要执行的指令数

B-插入Bubble

CPI = C/I= (I + B) / I = 1.0 + B/I

B/I -惩罚因子

 

PIPE中有三种情况会插入Bubble.

-加载/使用冒险-->加载惩罚(load
penalty, lp)

-错误预测分支-->错误预测分支惩罚(mispreadictedbranch
penalty, mp)

-处理ret-->ret惩罚(return
penalty, rp)

CPI = 1.0+ lp + mp + rp

 

(3).一个计算CPI的实例

原因

名称

指令频率

满足条件频率

气泡

乘积

加载/使用

lp

0.25

0.20

1

0.25*0.20*1=0.05

预测错误

mp

0.20

0.40

2

0.20*0.40*2=0.16

返回

rp

0.02

1.00

3

0.02*1.00*3=0.06

总和

 

 

 

 

0.05+0.16+0.06=0.27

CPI = 1.271.0

 

*:本篇中的图片均来自本书的官网,我进行了改造(注释和添加),详见http://csapp.cs.cmu.edu/public/figures.html

        (Copyright© 2011, Randal E. Bryant and David R. O'Hallaron )

 

 

reference:

1. 深入理解计算机系统(原书第2版)

 

(版权所有,转载时请注明作者和出处-dennis_fan-http://blog.csdn.net/dennis_fan

【上篇】
【下篇】

抱歉!评论已关闭.