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里的链接