Time each CPU core spends in C0 power state(每个CPU内核处于C0电源状态的时间)
本文介绍了每个CPU内核处于C0电源状态的时间的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如果有人帮我弄清楚如何做到这一点,那就更好了:过去一秒内每个CPU核心处于C0电源状态的时间。
这是针对Mac应用程序的,因此需要使用Objective-C、Cocoa和C。
推荐答案
OS X没有任何公开cpuc状态的API。然而,您似乎可以使用英特尔CPU上的MWAIT/MONITOR指令来实现这一点。英特尔在参考手册的第14.4节中提到,您可以使用此技术跟踪C状态驻留情况:
软件应使用CPUID来发现目标处理器是否支持MWAIT扩展的枚举。如果CPUID.05H.ECX[位0]=1,则目标处理器支持MWAIT扩展及其枚举(请参阅英特尔®64与IA-32体系结构软件开发人员手册第2A卷的第3章,《指令集参考,A-M》)。 如果CPUID.05H.ECX[位1]=1,则目标处理器支持将中断用作MWAIT的中断事件,即使中断被禁用。使用此功能测量C状态驻留情况,如下所示:当发出MWAIT以进入处理器特定的C状态或子C状态时,软件可以写入MWAIT扩展寄存器(ECX)的位0。 当处理器退出非活动C状态或子C状态时,软件可以在潜在地执行中断服务例程(ISR)之前读取时间戳。
您可以在同一手册中找到有关MWAIT说明的更多信息。祝你好运!
Intel's Reference Manual
这篇关于每个CPU内核处于C0电源状态的时间的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
织梦狗教程
本文标题为:每个CPU内核处于C0电源状态的时间
基础教程推荐
猜你喜欢
- NSString intValue 不能用于检索电话号码 2022-01-01
- navigator.geolocation.getCurrentPosition 在 Android 浏览器上 2022-01-01
- Cocos2d iPhone 非矩形精灵触摸检测 2022-01-01
- iPhone - 获取给定地点/时区的当前日期和时间并将其与同一地点的另一个日期/时间进行比较的正确方法 2022-01-01
- iOS4 创建后台定时器 2022-01-01
- AdMob 广告未在模拟器中显示 2022-01-01
- Android:getLastKnownLocation(LocationManager.NETWORK_PROVIDER 2022-01-01
- 通过重定向链接在 Google Play 中打开应用 2022-01-01
- 如何从 logcat 中删除旧数据? 2022-01-01
- libGDX 从精灵或纹理中获取像素颜色 2022-01-01
