CPU缓存一致性
&
内存管理实战
30章
⭐ 友好色系
1
CPU缓存基础
为什么需要缓存?缓存层级结构(L1/L2/L3)与工作原理
➔
2
缓存行与局部性原理
缓存行大小、空间局部性与时间局部性、缓存命中与缺失
➔
3
MESI协议入门
MESI四种状态(Modified/Exclusive/Shared/Invalid)详解
➔
4
MESI状态转换
读请求、写请求下的状态变迁图与总线事务
➔
5
MESI实战分析
多核场景下的缓存一致性流量与性能影响
➔
6
MOESI协议
Owned状态的引入与优势,与MESI的对比
➔
7
MSI与MOSI协议
简化版协议的应用场景与取舍
➔
8
Dragon协议
基于目录的缓存一致性协议原理
➔
9
目录协议实战
目录结构、位向量与有限指针的实现
➔
10
一致性协议的性能瓶颈
无效风暴、写放大与伪共享
➔
11
伪共享(False Sharing)深度剖析
原理、检测与消除方法
➔
12
内存屏障(Memory Barrier)
为什么需要屏障?Store/Load屏障详解
➔
13
内存排序模型
TSO、PSO、RMO与x86/ARM的实际模型
➔
14
volatile与原子操作
底层实现与缓存一致性的关系
➔
15
C++内存模型
happens-before、acquire-release语义实战
➔
16
Linux内核中的缓存一致性
DMA与缓存一致性、dma_alloc_coherent
➔
17
页表与TLB
虚拟地址到物理地址的转换、TLB结构与刷新策略
➔
18
多级页表实战
x86_64四级页表、ARMv8页表遍历
➔
19
大页(Huge Pages)
透明大页、显式大页配置与性能收益
➔
20
内存分配器
Buddy系统、Slab分配器与kmalloc家族
➔
21
用户态内存管理
malloc/free底层实现、brk与mmap
➔
22
内存碎片问题
内部碎片与外部碎片、碎片整理策略
➔
23
NUMA架构
NUMA节点、内存访问延迟差异与绑定策略
➔
24
NUMA实战
numactl工具、内存策略与性能调优
➔
25
缓存感知编程
数据结构对齐、缓存行填充、循环分块
➔
26
性能分析工具
perf stat、valgrind cachegrind、火焰图
➔
27
实战案例1:多线程计数器优化
从伪共享到无锁设计
➔
28
实战案例2:内存池设计
与缓存局部性优化
➔
29
实战案例3:NUMA-aware内存分配
与线程绑定
➔
30
课程总结与展望
未来内存技术(CXL、存算一体)与一致性趋势
➔