论文部分内容阅读
高速缓冲存储器技术可以有效地弥补处理器和内存之间的速度差异。但是随着待处理的数据规模越来越大,顺序数据访问越来越多,例如文件读写、网络数据收发等,当前的高速缓冲存储器在面临这类没有太多时间局部性、会造成大量高速缓冲存储器污染的顺序数据时并不是很有效。
本文针对此问题提出了分离式高速顺序缓冲存储器(SSDC),它是通过给当前主流的高速缓冲存储器添加一个并列的小容量的子顺序高速缓冲存储器(scache),专门缓存通过顺序数据流检测器(s-detector)检测出来的顺序数据。此种设计可以减少顺序数据造成的主高速缓冲存储器污染,并且由于scache针对顺序数据采用顺序预取技术和写不分配策略,可以有效地降低高速缓冲存储器的失效率。在SSDC的基础上,本文还提出了缓存型分离式高速顺序缓冲存储器(cSSDC),它将从顺序数据流检测器淘汰出来的检测结果保存在一个缓冲存储器中,以此来减少顺序数据流检测的启动代价,从而进一步提高SSDC的性能。
实验表明SSDC可以将IO-Zone、Netperf、MPEG和RDP客户端的失效率降低23﹪~44﹪,同时不影响或者稍微降低了SPEC2000中的6个评测程序的失效率;考虑到失效代价因素后,消耗在内存子系统上的时间减少14﹪~32﹪。SSDC在以较小的硬件代价提高命中率的同时,访存带宽的使用量平均只增加了11﹪。在保持SSDC的优势的同时,cSSDC在SPEC2000的评测中请求失效率降低4.8﹪~18.4﹪,带宽需求降低4﹪~17.8﹪。SSDC和cSSDC的设计适合于对硬件资源有较多限制的高性能的嵌入式芯片设计。