并发编程(四)CPU缓存一致性协议MESI
2021/7/10 17:12:01
本文主要是介绍并发编程(四)CPU缓存一致性协议MESI,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
一、MESI概念
定义:MESI 是指缓存行的四种状态的首字母。
PS:每个缓存行有4个状态,可用2个bit【2位】表示,它们分别是:
二、多核缓存协同操作流程分析
假设有三个CPU A、B、C;对应三个缓存分别是缓存A、B、 C;并在主内存中定义了x的引用值为0。
1、单核读取
2、双核读取
3、修改数据
4、同步数据
三、缓存行伪共享
什么是伪共享?
CPU缓存系统中是以缓存行为单位存储的,目前主流的CPU Cache 的缓存行大小都是64Bytes。
定义:在多线程情况下,如果需要修改共享同一个缓存行的变量,就会无意中影响彼此的性能,这就是伪共享。
举个
这篇关于并发编程(四)CPU缓存一致性协议MESI的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-11-02在 Objective-C 中strong 和 retain有什么区别-icode9专业技术文章分享
- 2024-11-02NSString 中的 hasPrefix 有什么作用-icode9专业技术文章分享
- 2024-11-02在 C 和 Objective-C 中inline的用法是什么-icode9专业技术文章分享
- 2024-11-02文件掩码什么意思?-icode9专业技术文章分享
- 2024-11-02在 Git 提交之前运行 composer cs-fix 命令怎么实现-icode9专业技术文章分享
- 2024-11-02为 Composer 的 cs-fix 命令指定一个目录怎么实现-icode9专业技术文章分享
- 2024-11-02微信公众号开发中怎么获取用户的 unionid-icode9专业技术文章分享
- 2024-11-01lip-sync公司指南:一文读懂主要玩家和技术
- 2024-11-01Anthropic的新RAG方法——提升大型语言模型在特定领域的表现
- 2024-11-01UniApp 中组件的生命周期是多少-icode9专业技术文章分享