第 109 期 2021-01-28 Don’t be clever - understand memory ordering

YouTube 视频回看

第 109 期 Don’t be clever - understand memory ordering

在这次分享,我们会讨论一下不太被人注意的内存访问顺序的问题。内存访问顺序导致的问题,通常非常有害。一个简单的错误,有时候得花数个人年来修复。我们会从系统架构的角度来了解一下其背后的复杂性。这和 Go 的实现无关。但或许可以帮助我们理解 Go 语言设计中引入 channel 的原因。

大纲

  • 关于内存访问顺序的一些说法
  • 编译器的行为
  • CPU 的行为 - Dekker’s algorithm
  • Litmus test
  • 大致的硬件原理
  • 安全的跨 CPU 发布数据
  • 避免踩坑的一些建议

分享者自我介绍

徐拯,Arm,软件开发总监,主要负责Arm服务器上各种开发语言工具链的实现。

计划分享时间

2011-01-28 22:00:00 UTC+8

分享地址

Bilibili 直播:To be updated

https://live.bilibili.com/h5/11171965

Slides

参考资料

  • Slides里的链接
1 个赞