基于进程绑定的IBP缓存替换算法
The IBP Replacement Algorithm Based on Process Binding
DOI: 10.12677/SEA.2016.53020, PDF, HTML, XML, 下载: 1,792  浏览: 4,647 
作者: 王 冠:北京工业大学计算机学院,北京;赵涵宇:北京工业大学计算机学院,北京;可信计算北京市重点实验室,北京;孙 亮:中电科技(北京)有限公司,北京
关键词: IBP替换算法进程绑定缓存抖动IBP Replacement Algorithm Process Binding Cache Jitter
摘要: LRU作为末级缓存的替换算法造成的缓存“抖动”现象严重的影响了缓存的效率,为此本文提出了基于进程绑定的IBP替换算法,通过将进程数据绑定到缓存中,并根据数据源的不同选取不同的替换策略,从替换策略的角度粗粒度的实现了缓存的划分,并与其他Cache划分方案相比硬件依赖明显减弱。在相同环境下提高了工作负载7%的运行速度,Cache缺失率下降了14%,并且随着核数的增多,对缓存效率的提升也更加明显。
Abstract: LRU as the last level Cache replacement algorithm will cause the Cache “jitter” phenomenon which influences the Cache efficiency. This paper, based on the binding process of IBP replacement algorithm, binds the process of data to the Cache, chooses the different replacement algorithm accord- ing to different situations, and achieves the division of the Cache. And compared with other Cache partitioning schemes, the hardware dependence is obviously weakened. The running speed of the work load increased by 7% in the same environment; the loss rate of Cache decreased by 14%, and the efficiency of the Cache increased significantly with the increase of the number of cores.
文章引用:王冠, 赵涵宇, 孙亮. 基于进程绑定的IBP缓存替换算法[J]. 软件工程与应用, 2016, 5(3): 181-189. http://dx.doi.org/10.12677/SEA.2016.53020

参考文献

[1] Xiang, L.-X., Chen, T.-Z., Shi, Q.-S., et al. (2009) Less Reused Filter: Improving L2 Cache Performance via Filtering Less Reused Lines. Proceedings of the 23rd International Conference on Supercomputing, New York, 68-79.
http://dx.doi.org/10.1145/1542275.1542290
[2] Patterson, D.A. and Hennessy, J.L. (2005) Computer Architecture: A Quantitative Approach. 3rd Edition, In: Kaufmann, M., Ed., China Machine Press, Beijing.
[3] Hennessy, J.L. and Patterson, D.A. (2009) Computer Organization & Design. The Hardware/Software Interface. In: Kaufmann, M., Ed., China Machine Press, Beijing.
[4] Xu, X. and Peng, M. (2013) Critical Thread Guided Fine-Grained Adaptive Capacity Management for Shared CMP Caches. Information Technology Journal, 12, 1366-1372.
http://dx.doi.org/10.3923/itj.2013.1366.1372
[5] Yeh, T.Y. and Reinman, G. (2005) Fast and Fair: Data-Stream Quality of Service. Proceedings of the 2005 International Conference on Compilers, Architectures and Synthesis for Embedded Systems, 237-248.
http://dx.doi.org/10.1145/1086297.1086328
[6] Bitirgen, R., Ipek, E. and Martinez, J.F. (2008) Coordinated Man-agement of Multiple Interacting Resources in Chip Multiprocessors: A Machine Learning Approach. Proceedings of the 41st Annual IEEE/ACM International Symposium on Microarchitecture, IEEE Computer Society, 318-329.
http://dx.doi.org/10.1109/micro.2008.4771801
[7] Qureshi, M.K. and Patt, Y.N. (2006) Utility-Based Cache Parti-tioning: A Low-Overhead, High-Performance, Runtime Mechanism to Partition Shared Caches. Proceedings of the 39th Annual IEEE/ACM International Symposium on Microarchitecture, IEEE Computer Society, 423-432.
http://dx.doi.org/10.1109/micro.2006.49
[8] van der Aalst, W. and van Hee, K. 工作流管理——模型方法和系统[M]. 王建民, 译. 北京: 清华大学出版社, 2010.
[9] Sejong, O.H. and Seog, P. (2013) Task-Role-Based Access Control Model. Information System, 28, 533-562.