Информация об изменениях

Сообщение Re: Как возможна загрузка CPU под 100%? от 09.10.2019 11:52

Изменено 09.10.2019 12:06 Буравчик

Re: Как возможна загрузка CPU под 100%?
Здравствуйте, Sharov, Вы писали:

S>Да, в системе появился новый процесс, который выжирает весь квант и cpu bound. Ну так и до этого процессор все время был занят.


Да, процессор всегда что-то делает. Когда какие-то процессы хотят выполнения, он выполняет их. Когда "полезных" процессов для выполнения нет, он переключается на специальный системный процесс — процесс "бездействия" (system idle process).

В этом процессе бездействия процессору подается специальная команда, чтобы он "уснул" (команда HLT, например) и ждал когда его разбудят. В спящем режиме процессор отключает свои подсистемы и потребляет меньше энергии (меньше нагревается).
Re: Как возможна загрузка CPU под 100%?
Здравствуйте, Sharov, Вы писали:

S>Да, в системе появился новый процесс, который выжирает весь квант и cpu bound. Ну так и до этого процессор все время был занят.


Да, процессор всегда что-то делает. Когда какие-то процессы хотят выполнения, он выполняет их. Когда "полезных" процессов для выполнения нет, он переключается на специальный системный процесс — процесс "бездействия" (system idle process).

В этом процессе бездействия процессору подается специальная команда, чтобы он "уснул" (команда HLT, например) и ждал когда его разбудят. В спящем режиме процессор отключает свои подсистемы и потребляет меньше энергии (меньше нагревается).

S>Судите сами, состоянии когда конвейер пуст и процессор вообще ничего не делает невозможно. Т.е. проц. постоянно что-то делает, переключается между процессами и тд.

S>Т.е. постоянно загружен. Одна procexp показывает никакую загрузку cpu(1,2%). Подрубаю свою программу -- несколько минут под 100%, соотв. вой куллеров и т.д. Что изменилось?

Система перестала выполнять idle process, разбудила процессор и сказала ему, чтобы он стал выполнять твой процесс.
Потребление увеличилось, температура увеличилась, кулеры включились.