|
Опрос
|
реклама
Быстрый переход
Создатель диспетчера задач Windows объяснил, почему инструмент врёт о загрузке процессора — и почему это не исправить
20.04.2026 [17:15],
Дмитрий Федоров
Бывший инженер Microsoft Дэйв Пламмер (Dave Plummer), создавший оригинальный диспетчер задач Windows, объяснил, почему этот инструмент не способен показывать загрузку процессора (CPU) в реальном времени, и как именно он считает этот показатель. По словам разработчика, архитектура диспетчера задач была намеренно упрощена, однако появление динамического масштабирования частоты CPU и Turbo Boost лишили его возможности оценивать реальную вычислительную работу.
Источник изображения: @DavesGarage / youtube.com Диспетчер задач работает по таймеру: через заданные промежутки времени он обновляет показатели и отображает интерпретацию того, что происходило с компьютером между двумя обновлениями, а не картину загрузки CPU в реальный момент времени. Очевидным решением было бы делить загрузку на время между обновлениями, однако такой подход требует, чтобы GUI-таймер срабатывал строго в нужный момент, что на практике гарантировать невозможно. Пламмер запрограммировал диспетчер иначе: инструмент запрашивает суммарное время каждого процесса — сумму времени в режиме ядра и в пользовательском режиме — с момента его запуска. Из этого значения вычитается результат предыдущего запроса для того же процесса, а полученная разность делится на суммарное процессорное время, израсходованное всеми процессами между обновлениями. Метод сложнее, зато точнее. Технический прогресс, однако, сделал и этот подход недостаточным. Поскольку учёт строится на усреднённых значениях между обновлениями, он не отражает реальную работу, выполняемую в конкретный момент времени. На современных CPU с динамическим масштабированием частоты, Turbo Boost, тепловым троттлингом и глубокими состояниями простоя связь между затраченным временем и объёмом выполненной работы существенно ослабла. По мнению разработчика, корректной метрикой была бы не доля занятого времени, а отношение реально выполненной работы к максимально возможной теоретической производительности. Однако повлиять на реализацию этой идеи Пламмер уже не может: из Microsoft он вышел на пенсию. |