Windows - статьи

Процессор


Чтобы проверить, не в процессоре ли кроется причина снижения производительности NT Server, необходимо для начала убедиться в том, что подсистема памяти работает нормально. ЦП становится критическим фактором лишь в тех случаях, когда процессор так загружен, что не может отвечать на запросы. В числе симптомов подобной ситуации – высокий коэффициент загрузки процессора, постоянные очереди и вялый отклик приложений. Как правило, нормальную работу ЦП нарушают ориентированные на интенсивное потребление ресурсов процессора приложения и драйверы, а также чрезмерное количество запросов на прерывание (из-за плохо спроектированных компонентов дисковой или сетевой подсистемы).

Отслеживать коэффициент использования процессора системы помогут следующие счетчики.

Processor: % Processor Time. Отображает время, затрачиваемое процессором на выполнение активных потоков. Если в системе установлено несколько процессоров, нужно обратиться к счетчику System: % Total Processor Time. Если коэффициент загруженности процессора стабильно превышает 80%, возможно, именно этот компонент сдерживает производительность всей системы. Чтобы выявить причину такой загруженности процессора, можно с помощью утилиты Performance Monitor проверить индивидуальные процессы. Однако нужно иметь в виду, что высокий показатель счетчика Processor: % Processor Time не всегда свидетельствует о снижении производительности. Если ЦП обрабатывает запросы от планировщика заданий NT Server, а показатели счетчиков Server Work Queues и Processor Queue Length при этом не возрастают, это значит, что ЦП обслуживает процессы максимально быстро. Говорить о том, что процессор тормозит работу системы, можно лишь в том случае, если значение счетчика System: Processor Queue Length возрастает; показатель Processor: % Processor Time тоже высок, а память системы, сетевой интерфейс и жесткие диски работают нормально. ЦП становится «узким местом» системы лишь тогда, когда он не в состоянии справиться с нагрузкой, предлагаемой NT. ЦП работает на полную мощность, но при этом очередь необработанных запросов, претендующих на его ресурсы, становится все длиннее.




Processor: % Privileged Time. Этот счетчик показывает, сколько времени ЦП затрачивает на обслуживание операционной системы.

Processor: % User Time. Время, затрачиваемое процессором на выполнение кода приложений и подсистем (например, текстового процессора или электронных таблиц). Нормальным следует считать значения 75% и ниже.

Processor: Interrupts/sec. Число прерываний от прикладных программ и аппаратных устройств, обрабатываемое процессором (за одну секунду). Этот показатель зависит от интенсивности обменов с диском, от числа операций, выполняемых за одну секунду, и от числа сетевых пакетов, передаваемых за одну секунду. Чем выше быстродействие процессора, тем большее число прерываний он способен обработать. Для большинства современных ЦП этот показатель составляет порядка 1500 прерываний в секунду.

Process: % Processor Time. Счетчик показывает, какая часть процессорного времени в процентах приходится на выполнение того или иного процесса. С его помощью можно определить, какой из процессов занимает подавляющую часть рабочих циклов процессора.

System: Processor Queue Length. Показатель отражает число задач, ожидающих обработки. Если система выполняет несколько задач, то иногда показания счетчика превышают нулевой порог. Если же значение счетчика регулярно достигает цифры 2 или превосходит этот показатель, процессор, несомненно, не справляется с нагрузкой: слишком много процессов ожидают обработки. Чтобы выяснить причину «затора», нужно запустить утилиту Performance Monitor и исследовать объект «процесс», а также провести более подробный анализ отдельных процессов, обращающихся с запросами к процессору.

Один из способов избавиться от неприятностей, связанных с низкой производительностью процессора, сводится к установке в машине центрального процессора с более высокими характеристиками. Если речь идет о системе, с которой одновременно могут работать несколько пользователей и на которой выполняются многопотоковые прикладные программы, увеличения мощности процессорной подсистемы можно добиться за счет установки дополнительного процессора.


Когда обрабатывается многопотоковый процесс, для повышения производительности можно добавить еще один процессор, а если процесс однопотоковый, для повышения быстродействия нужно заменить процессор на более производительный. Но если в сети установлена операционная система с однопроцессорным ядром NT, то, возможно, придется модернизировать ядро до многопроцессорной версии. Для этого нужно переустановить NT или воспользоваться утилитой uptomp.exe из комплекта ресурсов Resource Kit.

Еще один способ оптимизации характеристик ЦП состоит в том, чтобы с помощью диспетчера Task Manager выявить процессы, «потребляющие» основную часть рабочих циклов процессора, и назначить им соответствующие приоритеты. Изначально процесс имеет базовый (заданный администратором) приоритет, но порождаемые подпроцессы могут иметь другую очередность (диапазон колебаний – на два уровня выше или ниже базового приоритета). Если нагрузки на процессор достаточно велики, ускорить выполнение того или иного процесса можно за счет повышения его приоритета. Для этого нужно, нажав комбинацию клавиш Ctrl+Alt+Del, запустить диспетчер Task Manager и перейти к вкладке Processes. Теперь следует щелкнуть правой клавишей мыши на интересующем процессе, выбрать пункт Set Priority и установить для приоритета процесса одно из значений – High, Normal или Low, как показано на Экране 4. Новые приоритеты вступают в силу немедленно, но нужно иметь в виду, что это решение временное. После перезагрузки системы или перезапуска данного приложения все установленные значения приоритетов будут потеряны. Чтобы обеспечить заданный уровень приоритетов при всех последующих запусках прикладной программы, нужно воспользоваться командой Start, которая вводится из командной строки или включается в пакетный файл. Познакомиться с ключами команды Start можно, введя из командной строки

start /?



Экран 4. Установка приоритета процесса.


Содержание раздела