不再能够最大CPU

时间:2012-01-09 10:11:45

标签: c++ windows-7 parallel-processing

我使用AMD 1100 6核心芯片正常编程。以前(使用相同的代码)我能够最大化所有CPU(6个线程)

现在,相同的代码正在执行此操作(仍为6个线程):

low cpu usage

之前,我能够将它们调到100%(所有6个内核都会直接向上并在顶部绘制直线。现在我无法理解为什么应用程序没有最大化CPU核心,即使有6个并行线程,并且一天前用于最大化CPU的相同代码。

我没有运行任何额外的流程,而且我什么都不做。

我在CPU上也运行了一个额外的风扇,CPU风扇保持平静(这表明它没有过热)。

1 个答案:

答案 0 :(得分:3)

首先我们需要查看代码。如果没有它,我会想看看你是否有任何同步机制(例如互斥),I / O或共享资源的使用可能会给CPU一些喘息空间。如果存在任何I / O,例如磁盘,网络或其他外部设备,则访问速度可能会在运行之间发生变化,并且程序可能受I / O限制而非CPU限制。