百科问答小站 logo
百科问答小站 font logo



多核cpu多线程同时执行cmpxchg指令会发生什么? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

拿Intel的CPU作为例子(别的CPU不太了解),手头没有资料,全凭记忆回答:

CPU内部,多个核心之间有一条环形总线,当有某一个核心需要锁住cache的时候,这个总线会通知所有的核心,所以只要有某个核心使用了cmpxchg,那么其它的核肯定都会停下来,不会出现并发的情况。(关于环形总线的信息,看这个:zhihu.com/question/3463

这条总线的带宽非常高,相对延迟会比较小,但锁总线的开销也是很大的,我印象里好像是几十个指令周期的延迟。

所以不会有真正并发的操作,都是分开执行的。




  

相关话题

  DDR5内存和CPU速度差不多了CACHE还有什么意义? 
  CPU的一级缓存为什么不能做得大一点? 
  同样是骁龙660的处理器这两款八核手机怎么选? 
  如何评价Intel 的IDM 2.0模式? 
  有哪个高手可以解读“世界黑客编程大赛第一名的作品(97年Mekka ’97 4K Intro)”? 
  神舟zx7ct5da i59400 180w电源能能把cpu换成i79700吗? 
  12 代酷睿轻薄本开始大量铺货,综合表现有哪些提升?更适用于哪些应用场景? 
  如果 Zen 4 的 7600X 处理器多核性能无法反超 12600K,定价是否会有所降低? 
  拿下台湾得到台积电和联发科是否可以快速解决中国芯片被美卡脖子的情况? 
  麒麟处理器和骁龙处理器的优劣和差距是什么? 

前一个讨论
ARM架构怎样设计才能在指令执行性能上超越X86架构?
下一个讨论
汇编下call和ret指令是否有内存屏障的作用?





© 2025-06-28 - tinynew.org. All Rights Reserved.
© 2025-06-28 - tinynew.org. 保留所有权利