2024年3月24日发(作者:)

3.3.4 Cache存储系统的加速比

 Cache存储系统的主要目标:

Cache存储系统的加速比

Cache存储系统的一致性问题

1、加速比与命中率的关系

 Cache存储系统的加速比S

P

(Speedup)为:

T

m

1T

m

S

p

T

m



)

f(H,)

TH

T

c

(1

H)

T

m

(1

H)

H

T

c

T

c

T

m

其中:T

m

为主存储器的访问周期,T

c

为Cache的访问周期,T为Cache存储

系统的等效访问周期,H为命中率。

 提高Cache存储系统加速比的最好途径是提高命中率

实际上,Cache存储系统的加速比S

P

能够接近于它的期望值

T

m

T

c

S

P

期望值

8

6

4

2

命中率 H

0

1

S

P max

=T

m

/T

c

Cache存储系统的加速比S

P

与命中率H的关系

 命中率H主要与如下几个因素有关:

程序在执行过程中的地址流分布情况

所采用的替换算法

Cache的容量

在组相联映象方式中,块的大小

在组相联映象方式中,分组的数目

所采用的Cache预取算法

2、Cache命中率与容量的关系

Cache的命中率随它的容量的增加而提高。

关系曲线可以近似地表示为H=1-S

0.5

3—1

命中率 H

1

容量 S

命中率H与它的容量S的关系

3、Cache命中率与块大小的关系

在组相联映象方式中,块的大小对命中率的影响非常敏感

块很小时,命中率很低。

随着块大小的增加,由于程序的局部性,命中率增加。

当块非常大时,进入Cache中的许多数据可能用不上。

当块大小等于Cache的容量时,命中率将趋近于零。

命中率 H

1

初始 最佳

块大小

Cache的命中率与块大小的关系

4、Cache命中率与组数的关系

在组相联映象中,分组的数目对命中率的影响很明显。

随着组数的增加,Cache的命中率要降低。

当组数不太大时(512组以下),命中率的降低相当少,

当组数超过一定数量时,命中率的下降非常快。

3.3.5 Cache的一致性问题

本节讨论的内容仅限于单处理机、单存储器。

 造成Cache与主存的不一致的原因:

(1) 由于CPU写Cache,没有立即写主存

(2) 由于IO处理机或IO设备写主存

3—2