2

Мой ПК имеет:

  • Core 2 Duo
  • 4 ГБ ОЗУ
  • ATI 5450 Radeon графика
  • Windows 7 64-битная

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

1 ответ1

8

Опция, о которой идет речь, не является тактовой частотой; Windows не манипулирует процессором, материнской платой, множителями, FSB или чем-то еще. Опция, о которой вы спрашиваете, является просто фактором, который используется во время планирования задач.

Когда процессы выполняются, планировщик задач Windows выделяет определенное количество циклов ЦП различным процессам и переключается назад и вперед для включения вытесняющей многозадачности. Обычно он назначает столько циклов ЦП, сколько доступно, чтобы выполнить все как можно быстрее. Если есть свободные циклы, это позволяет программе запускаться, если нет, она помещает процесс в очередь и проверяет, есть ли другая программа, которая использовала свое выделение для текущего «кванта» (или «временного интервала») ) и должны быть перемещены в конец строки.

Неудивительно, что при работе процессора на 100% некоторое время он нагревается, и это может быть нежелательно. Что Windows позволяет вам сделать, так это назначить ограничение на объем используемой процессорной мощности.

В этом случае, когда процессы запрашивают процессорное время, планировщик работает точно так же, как и раньше, за исключением того, что он использует предел, указанный в своих вычислениях, вместо 100%. В результате будут циклы ЦП, которые остаются неиспользованными, что позволяет ЦП оставаться при более низкой температуре.

В качестве упрощенного и надуманного примера представьте, что это был псевдокод для алгоритма планирования (с комментариями, отмеченными знаком ;):

; function to calculate total CPU cycles used by all processes
calc-total-used:
  used-total = 0                             ; initialize counter to 0
  for each program:                          ; loop through each running process
    used-total = used-total + process-used   ; add CPU cycles of each process to counter
  return used-total as percentage            ; convert to percent and return value

; main scheduling control, check if free cycles available
if (calc-total-used < max-percent)           ; calc used %, see if less than max allowed
  then run program                           ; if so, run the program
  else:                                      ; if not, try to free some up
    add program to queue                     ; if not, add it to the queue
    …                                        ; check if any process are out of cycles

Обратите внимание, как при планировании используется переменная max-percent вместо жесткого кодирования 100% . Таким образом, если вы установите значение ниже 100%, программа будет запускаться только в том случае, если текущее использование меньше 100%, что, конечно, означает, что любые циклы ЦП между max-percent выше не будут использоваться.

Следовательно, эта опция не может повредить процессор; это ничем не отличается от того, что вы просто не запускаете никаких программ и просто работаете на холостом ходу системы (вы, вероятно, уже много раз работали на холостом ходу системы около 0% загрузки процессора).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .