学习目标

  • 理解一致性问题
  • 分析数据竞争
  • 掌握一致性模型

1.1 思考:多核有什么问题?

// 核心 0
x = 1;

// 核心 1
y = x;

问题:核心 1 读到的 x 是多少?

1.2 Cache 一致性问题

核心 0 Cache: x = 1
核心 1 Cache: x = 0
内存: x = ?

这就是 Cache 一致性问题

1.3 一致性定义

一个内存系统是一致的,如果:

  1. 写传播:一个核的写对其他核可见
  2. 写串行化:所有核看到相同的写顺序

思考:如何保证一致性?

下一步

第 2 章:MESI 协议

更新时间: