📄 2。5.htm
字号:
<p><font color="#000000" size="4"> 在许多缓存的组织中,读.写失效时间是相同的,即从存储器取块并且忽 略写缓冲等待时间,则可以归纳为一个公式:</font>
</p>
<p><font color="#000000" size="4"> 存储器等待时间周期=存储器访问次数/每个程序*失效率*失效损失时间
</font>
</p>
<p><font color="#000000" size="4"> 也可以是:<br>
存储器等待时间周期=指令数/每个程序*失效次数/每条指令*失效损失时间<br>
</font>
</p>
<p><font color="#000000" size="4"> 例1:设GCC程序中,指令缓存失效率=5,数据缓存失效率=10,某机有CPI=4,无存储器等待,总损失时间=12周期,问缓存不失效情况下,</font>
</p>
<p><font color="#000000" size="4"> 计算机运行速度?</font>
</p>
<p><font color="#000000" size="4">解答:用GCC指令频率 IC为指令数 CPI是每条指令平均时钟周期</font>
</p>
<p><font color="#000000" size="4">
指令损失周期=IC*5=0.6*IC</font>
</p>
<p><font color="#000000" size="4">
数据损失周期=IC*33 %*12=0.4*IC<br>
<br>
总存储等待周期=0.6IC+0.4IC=1.0IC即每条指令等待一个周期</font>
</p>
<p><font color="#000000" size="4"> 具有存储等待的CPI=1+4=5<br>
<br>
因此,COU的执行时间的比率是:</font>
</p>
<p><font color="#000000" size="4"> CPU(等待)时间/CPU(无等待)时间=CPIsmall/CPIperfect</font>
</p>
<p><font color="#000000" size="4">
=5/4=1.25<br>
<br>
可以使用理想缓存,机器性能提高1.25倍。</font>
</p>
<p><font color="#000000" size="4">讨论:</font>
</p>
<p><font color="#000000" size="4"> 1.加快CPU速度,情况会怎样?</font>
</p>
<p><font color="#000000" size="4"> 如上题,将相应的CPI从4提高到2,时钟频率不变,则CPI=3/2=1.5倍,性能提高1.5倍,不是2 倍。但存储器等待时间从1/5=0.20提高到1/3=0.33</font>
</p>
<p><font color="#000000" size="4"> 2.不改变存储系统,增加时钟速度,情况怎样</font>
</p>
<p><font color="#000000" size="4"> 例如:时钟速度是前例的两倍,但由于主存速度不可能改变,处理缓存失效的绝对时间不变,则时钟速度提高,机器的速度快多少?</font>
</p>
<p><font color="#000000" size="4"> 解答:失效损失时间=24周期 (主存绝对时间未变之故)</font>
</p>
<p><font color="#000000" size="4">
每条指令的总失效周期=(5)+33(10)=2<br>
<br>
更快机器的CPI=4+2=6</font>
</p>
<p><font color="#000000" size="4">
更慢机器的CPI=4+1=5<br>
<br>
则可计算机器的相对性能之比:</font>
</p>
<p><font color="#000000" size="4">
快时钟机器性能/慢时钟机器性能=执行时间(慢时钟)/执行时间(快时钟)<br>
<br>
=IC*CPI*Clock cycle/IC*CPI*Clock cycle</font>
</p>
<p><font color="#000000" size="4"> =5/(6*1/2)=5/3=1.67<br>
<br>
机器性能不是快2倍,而是1.67倍。由此可见,缓存失效时间随机器速度的提高而提高。更甚者,如果机器的时钟频率提高,CPI减少,</font>
</p>
<p><font color="#000000" size="4">
则命中率成倍提高:</font>
</p>
<p><font color="#000000" size="4"> (1) CPI越小,影响等待周期越大</font>
</p>
<p><font color="#000000" size="4"> (2) 主存速度提高没有CPU快,计算CPI时,缓存失效时间是以CPU时钟周期的
单元来度量的.假设2机器的存储器具有相同的执行时</font>
</p>
<p><font color="#000000" size="4"> 间,那么CPU时 钟速度越高,损失时间
越大。因此,CPI越低,时钟速度越高,CACHE的性能就越好。</font>
</p>
<p><font color="#000000" size="4"> </font>
</p>
<p><font color="#000000"><font size="4"> </font><br>
<br>
</font>
</p>
<p><font color="#000000"> <br>
<br>
</font>
</p>
</body>
</html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -