Multi-Queue Replacement Algorithm
2012-05-15 14:49
295 查看
维护M个LRU队列.
请求在Cache中命中时,根据请求被访问的次数计算出它应该处于的LRU队列中(例如,当计算函数为Log2(accesscount),当请求被访问2^i时,该请求则被放于第i条LRU队列中).
CacheMiss时,从第一条非空的LRU队列中替换出一个块并将其置于Qout队列中.Qout队列用于记录从缓存中替换出去的请求且只记录块的地址指针和访问次数.
每个缓存中的块有一个有效时间,每次处理请求时,检查各个队列中的第一个块的有效时间,如果超出,则将该块降至前一级LRU链中并重置块有效时间.
伪代码如下:
* YuanyuanZhou and James F. Philbin, The Multi-Queue Replacement Algorithm for SecondLevel Buffer Cache, Proceedings of the 2001 USENIX Annual TechnicalConference
请求在Cache中命中时,根据请求被访问的次数计算出它应该处于的LRU队列中(例如,当计算函数为Log2(accesscount),当请求被访问2^i时,该请求则被放于第i条LRU队列中).
CacheMiss时,从第一条非空的LRU队列中替换出一个块并将其置于Qout队列中.Qout队列用于记录从缓存中替换出去的请求且只记录块的地址指针和访问次数.
每个缓存中的块有一个有效时间,每次处理请求时,检查各个队列中的第一个块的有效时间,如果超出,则将该块降至前一级LRU链中并重置块有效时间.
伪代码如下:
* YuanyuanZhou and James F. Philbin, The Multi-Queue Replacement Algorithm for SecondLevel Buffer Cache, Proceedings of the 2001 USENIX Annual TechnicalConference
相关文章推荐
- stack-structured algorithm and queue-structured algorithm
- paper4—Multi-MPE_Trigger_Algorithm—temp
- heapq( Heap queue algorithm)
- A Fast Priority Queue Implementation of the Dijkstra Shortest Path Algorithm
- “Multithreaded Job Queue”源码阅读笔记
- Flash-aware Page Replacement Algorithm
- linux下基于SMP架构的多队列网卡的调优(Multi-queue network interfaces with SMP on Linux)
- Work Queue based multi-threading
- Multithreaded Work Queue in C++
- Opencv 多线程显示错误 [xcb] Unknown request in queue while dequeuing [xcb] Most likely this is a multi-thre
- Opencv 多线程显示错误 [xcb] Unknown request in queue while dequeuing [xcb] Most likely this is a multi-thre
- Multithreaded Algorithms[1]
- [转]linux下基于SMP架构的多队列网卡的调优(Multi-queue network interfaces with SMP on Linux)
- 论文笔记:Research and Implementation of a Multi-label Learning Algorithm for Chinese Text Classification
- Linux3.19内核block层出现新变化,增加 multi-queue block layer
- Python Intro - Multithread Queue
- cartographer源码分析(21)-sensor-ordered_multi_queue.h
- 大数据算法课程笔记8a:page replacement algorithm
- heapq( Heap queue algorithm)库
- 【存储管理】请求淘汰换页算法最优淘汰算法(optimal replacement algorithm,OPT)