资源描述
单击此处编辑母版标题样式,*,8,5.5 减少命中时间,2.应使Cache足够小,以便可以与CPU,一起放 在同一块芯片上。,命中时间直接影响到处理器的时钟频率。在当今的许多计算机中,往往是Cache的访问时间限制了处理器的时钟频率。,1.硬件越简单,速度就越快;,5.5.1 容量小、结构简单的Cache,第五章 存储层次,1.虚拟Cache,访问Cache的索引以及Cache中的标识都 是虚拟地址(一部分)。,2.并非都采用虚拟Cache(为什么?),3.虚拟Cache的清空问题,5.5.2 虚拟Cache,解决方法:,在地址标识中增加PID字段,(,进程标识符,),三种情况下失效率的比较,单进程,PIDs,清空,PIDs与单进程相比:,0.30.6,PIDs与清空相比,:,0.64.3%,5.5 减少命中时间,4.同义和别名,解决方法:,反别名法,页着色,5.虚拟索引物理标识,优点:,兼得虚拟Cache和物理Cache的好处,局限性:,Cache容量受到限制 (页内位移),Cache容量页大小相联度,6,.举例:IBM3033的Cache,页大小4KB 相联度16,5.5 减少命中时间,5.5.3 写操作流水化,(图 5.22),Cache容量164KB64KB,7.另一种方法:硬件散列变换,页地址地址标识,页内位移,索 引,块内位移,31,12 11,0,5.5.4 Cache优化技术总结,(表 5-9),5.5 减少命中时间,优化技术,失效率,失效开销,命中时间,硬件复杂度,评价,增加块大小,+,-,0,实现容易;RS/6000 550采用了128字节,提高相联度,+,-,1,MIPS R10000为4路组相联,Victim Cache,+,2,HP7200中采用了类似的技术,伪相联Cache,+,2,已应用于MIPS R10000的第二级Cache,硬件预取指令,和数据,+,2,数据预取比较困难;仅被几台机器采用,如:Alpha 21064,编译器控制的预取,+,3,需采用非阻塞cache;有几种机器支持它,用编译技术减少Cache失效次数,+,0,向软件提出了新要求;有些机器提供了编译器选项,使读失效优先级高于写,+,1,在单处理机上实现容易,被广泛使用,子块调入,+,1,主要用于减少标识的数目,尽早重启动和关键字优先,+,2,已应用于MIPS R10000和IBM 620,非阻塞Cache,+,3,已应用于Alpha 21064和R10000中,第二级Cache,+,2,硬件代价大;两级Cache的块大小不同时实现困难;被广泛采用,容量小且结构简单的Cache,-,+,0,实现容易,被广泛使用,避免在对Cache进行索引时进行地址转换,+,2,对于小容量Cache来说实现容易,已应用于Alpha 21064,流水化写,+,1,已应用于Alpha 21064,
展开阅读全文