_mm_mwait如何工作?
_mm_mwait
从pmmintrin.h
是如何工作的? (我的意思是不是它的ASM,但动作和这个动作是如何采取NUMA系统该store
监测是很容易实现只在与公交车的监听总线为基础的SMP系统。)_mm_mwait如何工作?
什么处理器不执行它?
它用于某些自旋锁?
每当多核芯片上的CPU尝试写入特定的内存地址时,都必须通知其缓存中具有此特定内存地址的所有其他CPU。这个通知可以用来实现从现代CPU上的MWAIT唤醒,而不管它们是具有单个还是单独的存储器总线。
什么处理器执行它?
MWAIT是SSE3的一部分。
它用于某些自旋锁吗?
这与自旋锁定义相反--CPU不忙。
我认为,通知只对处于共享状态的缓存中的数据有效(当它可以存储时在几个CPU的缓存中)。如果有任何写入的“所有其他CPU都必须通知”,则性能将被冻结(杀死);只考虑一个带NUMA的四插槽系统。 – osgx 2011-10-18 14:22:04
重写了一下 – mschneider 2011-10-18 16:01:13
我认为只有英特尔处理器有这两个指令。我记得在某处读到AMD决定在添加SSE3时不实施它们。 – Mysticial 2011-10-18 16:04:05
有没有人使用_mm_mwait&_mm_monitor? – osgx 2010-04-02 02:51:09
你的意思是它是做什么的,或者它是如何在硬件上物理实现的? – Martin 2010-05-02 21:21:38
@马丁,是的。我想像硬件组织概述一样喜欢学生。 – osgx 2010-05-03 01:58:42