【发布时间】:2012-01-04 12:23:39
【问题描述】:
我正在尝试使用英特尔超线程计算我的机器上的进程利用率。
我在计算时遇到了一个问题:
我正在计算我的进程在物理内核上单独运行时正在执行的循环 并在另一个进程(相同的进程)在另一个逻辑核心(相同的物理核心)上运行时计算它。
我发现我的进程正在执行的循环数量存在差异。我想这与我在超线程机器上运行的事实有关。
有没有办法知道我的进程的确切运行时间是多少,以便在我尝试计算进程利用率时将其添加到我的计算中?
【问题讨论】:
-
top 即使在超线程机器上也应该可以正确使用
-
我的进程(几乎)在核心上单独运行...我想通过计算循环量来查看它的负载情况。 top 会一直显示 98%。这对我不好
-
在这种情况下你使用了 98% 的 cpu,真的没什么好说的了。可以通过 BIOS 或其他实用程序禁用超线程,因此请将其关闭并查看数字是否更改,这可能会让您更好地了解其他系统上的 cpu 使用情况。
标签: c linux multithreading utilization