我在 Powershell 和 C 中运行了两个简单的基准测试。我在配备 16 Gig Win 7 Pro 的配置相当不错的 i7-2600 上运行了这两个测试。
两者都使用了 8 个内核中的两个(实际上是 4 个内核,双超线程),并且运行非常高峰,在运行时间内(30 到 60 秒)的利用率超过 40% 到 70%。系统的其余部分很安静,但在域中,两个开发环境都是开放的,Firefox 也是如此。运行前后的后台活动使用了总 CPU 可用性的 1.5% 到 2.5%。
在 Windows 中发生了什么,限制这些计算密集型进程至少将 CPU 固定在它们运行的核心上。
这是我做的一个即时演示,预计 CPU 将固定在 100%。
电源外壳
$a = 1
"Starting Loop"
get-date
DO
{
$a++
} While ($a -le 50000000)
get-date
C
#include <stdio.h>
#include <time.h>
int main (void) {
long long a;
time_t mytime;
mytime = time(NULL);
printf(ctime(&mytime));
/* for loop execution */
for( a = 1; a < 100000000000; a = a + 1 ){
}
mytime = time(NULL);
printf(ctime(&mytime));
return 0;
}