2012-01-09 2 views
0

Я нормально программировал, используя чип AMD 1100 6. Ранее (с использованием же код) Я был в состоянии максимальной из всех процессоров (6 потоков)Больше не в состоянии до максимума CPU

Теперь тот же код делает это (все еще 6 нитей):

low cpu usage

Раньше я был в состоянии получить их до 100% (все 6 ядер будут идти прямо вверх и прятать прямые линии сверху. Теперь я не могу понять, почему приложение не максимизирует ядра процессора, даже хотя есть 6 параллельных потоков, и один и тот же код используется для максимального выгрузки процессора всего за день назад.

У меня нет никаких дополнительных процессов, и я ничего не делаю вообще иначе.

Я также запускаю дополнительный вентилятор на процессоре, а вентилятор процессора остается спокойным (что указывает на то, что он не перегревается).

+0

Я думаю, что показанный код поможет в том, что может быть какая-то ошибка, которая вчера не появилась, но она появилась сегодня :) – Arunmu

+0

Что именно вы ожидаете от нас? Расскажите, где ваш код ведет себя неправильно, не видя этого? Листинг gazillions причин, почему это может происходить? – PlasmaHH

+0

@PlasmaHH Просто шучу. Я не знаю, чего ожидать. Если вы знаете/видели это раньше, вы могли бы предоставить комментарий. Кроме этого, вы должны просто двигаться дальше. – bobobobo

ответ

3

Прежде всего, нам нужно увидеть код. Без этого я бы посмотрел, есть ли у вас какие-либо механизмы синхронизации (например, мьютексы), ввод-вывод или использование общих ресурсов, которые могут дать процессору некоторое передышку. Если есть какие-либо операции ввода-вывода, такие как работа с дисками, сетью или другими внешними устройствами, скорость доступа может измениться с момента запуска до запуска, а программа может быть связана с привязкой ввода-вывода, а не с привязкой к ЦП.

Смежные вопросы