Cache 的替换算法中,(LFU)算法计数器位数多,实现困难。
Cache替换算法用于缓存空间不足时筛选待淘汰的缓存块,常见类型包括FIFO、LRU、LFU及随机置换(RAND)。其中FIFO按缓存块进入顺序淘汰,实现简单无需额外计数器,但存在可能导致缓存命中率下降的Belady异常;LRU依据最近访问情况淘汰最近最少使用的块,可通过堆栈或链表结构实现,无需长期统计访问次数,实现复杂度适中;RAND随机选择淘汰块,几乎无额外性能开销,是实现最简单的一类;LFU则统计每个缓存块在整个使用周期内的访问次数,以此为依据淘汰访问频率最低的块,随着系统运行时间增加,其记录访问次数的计数器所需位数会持续增长,因此是这几种算法中实现难度最高的,该算法更适配访问模式稳定、高频数据持续被访问的场景。
本题考察的是高速缓存存储器(Cache)的替换算法特点。
Cache替换算法用于缓存空间不足时筛选待淘汰的缓存块,常见类型包括FIFO、LRU、LFU及随机置换(RAND)。其中FIFO按缓存块进入顺序淘汰,实现简单无需额外计数器,但存在可能导致缓存命中率下降的Belady异常。LFU则统计每个缓存块在整个使用周期内的访问次数,以此为依据淘汰访问频率最低的块,随着系统运行时间增加,其记录访问次数的计数器所需位数会持续增长,因此是这几种算法中实现难度最高的,该算法更适配访问模式稳定、高频数据持续被访问的场景。LRU依据最近访问情况淘汰最近最少使用的块,可通过堆栈或链表结构实现,无需长期统计访问次数,实现复杂度适中。RAND随机选择淘汰块,几乎无额外性能开销,是实现最简单的一类。
本小问答案是 LFU。题干中的“Cache 的替换算法中LFU算法计数器位数多,实现困难”对应LFU。
因此,选项 B 正确。
