Linux 内核101:cache组织策略

本文参考了:

简述

上篇文章 讲了 cache 的一些基本知识,提到了一种最基本的 cache 组织策略:Direct Mapped Cache。这种策略优点是实现简单,速度快(这里指的速度快是说定位 cache 位置的速度,因为一个 main memory address对应在 cache 中的位置是固定的),但是有一个严重的缺陷,就是 cache miss 率高。为什么呢?还是看下面这个图,假如 CPU 恰好依次需要0、4、8、12这四个 main memory address 的速度,之后的 block 都会把前面 block 的挤占掉!(尽管现在 cache 中还有很多空余空间)

本文将介绍另外两种 cache 组织策略:Fully Associative CacheSet Associative Cache

Fully Associative Cache

Fully Associative Cache是解决了Direct Mapped Cache cache miss 高的缺陷。它是怎么实现的呢?

对比一下Direct Mapped Cache的示意图,Fully Associative Cache中就没有 index 这个位了,main memory 中的一个block 可以被 map 到 cache 中的任意位置。这种方法,定位main memory block 在 cache 中位置是通过 tag 位来判断的。因为没有 index,所以在 cache 中定位的时候,就需要对比 cache 中每一条记录的 tag,That’s a lot of comparators!

所以,Fully Associative Cache只适用于小的 cache,比如某些 Intel CPU 中的 TLB cache就是Full Associative的。这里说的非常小,顶多也就几十个 entry。虽然这种方法应用也不是很广泛,但是给了我们一种很好的思路:Direct Mapped Cache 定位快,但是 cache miss 几率高;Fully Associative Cache 定位慢,但是 cache miss 率低。那么,可以取一个中间值,使得定位 速度足够快,同时cache miss几率足够低。

Set Associative Cache

Set Associative Cache是Direct mapped cache 和 Fully associative cache的一种取舍。cache 被分成了多个 set,每个 set 里面有多个 cache line。一个 memory block 会先被 map 到其中一个 set,然后置于此 set 中的任一cache line。

Direct mapped cache 可以看做 n * 1的矩阵(n 个set,每个 set 含有一个 entry),Fully associative cache可以看做1 * m 的矩阵,而Set Associative Cache就是 n * m 的矩阵。Direct mapped cache实质上可以看作是 1-way Associative Cache,而Fully associative cache是 m-way Associative Cache。

那么现实生活中,该采用 ?-way Associative Cache呢?一般选择8-way 就足够了,下图的数据可以得到一个直观地感觉。

总结一下

Direct Mapped Cache实现最简单,但是 cache miss 率太高,实际生产几乎不会使用。Fully Associative Cache cache miss 几率最低(理论上可以达到0),但是如何快速定位cache line 所在位置成了个大问题,所以只适用于很小的cache,比如TLB cache。Set Associative Cache是二者的权衡,普遍采用的是8-way Associative Cache。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
智慧校园信息化系统解决方案旨在通过先进的信息技术,实现教育的全方位创新和优质资源的普及共享。该方案依据国家和地方政策背景,如教育部《教育信息化“十三五”规划》和《教育信息化十年发展规划》,以信息技术的革命性影响为指导,推进教育信息化建设,实现教育思想和方法的创新。 技术发展为智慧校园建设提供了强有力的支撑。方案涵盖了互连互通、优质资源共享、宽带网络、移动APP、电子书包、电子教学白板、3D打印、VR虚拟教学等技术应用,以及大数据和云计算技术,提升了教学数据记录和分析水平。此外,教育资源公共服务平台、教育管理公共服务平台等平台建设,进一步提高了教学、管控的效率。 智慧校园系统由智慧教学、智慧管控和智慧办公三大部分组成,各自具有丰富的应用场景。智慧教学包括微课、公开课、精品课等教学资源的整合和共享,支持在线编辑、录播资源、教学分析等功能。智慧管控则通过平安校园、可视对讲、紧急求助、视频监控等手段,保障校园安全。智慧办公则利用远程视讯、无纸化会议、数字会议等技术,提高行政效率和会议质量。 教育录播系统作为智慧校园的重要组成部分,提供了一套满足学校和教育局需求的解决方案。它包括标准课室、微格课室、精品课室等,通过自动五机位方案、高保真音频采集、一键式录课等功能,实现了优质教学资源的录制和共享。此外,录播系统还包括互动教学、录播班班通、教育中控、校园广播等应用,促进了教育资源的均衡化发展。 智慧办公的另一重点是无纸化会议和数字会议系统的建设,它们通过高效的文件管理、会议文件保密处理、本地会议的音频传输和摄像跟踪等功能,实现了会议的高效化和集中管控。这些系统不仅提高了会议的效率和质量,还通过一键管控、无线管控等设计,简化了操作流程,使得会议更加便捷和环保。 总之,智慧校园信息化系统解决方案通过整合先进的信息技术和教学资源,不仅提升了教育质量和管理效率,还为实现教育均衡化和资源共享提供了有力支持,推动了教育现代化的进程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值