загрузка CPU пустого цикла.
- Войдите на сайт для отправки комментариев
Пт, 29/01/2021 - 16:37
Скажите вызовет ли пустой цикл в ардуине подобие CPU overhead 100% ? как бывает на ПК ?
Скажите вызовет ли пустой цикл в ардуине подобие CPU overhead 100% ? как бывает на ПК ?
CPU может растягиваться как воздушный шарик и загружаться более 100 % ?
всё понял, ардуина всегда потребляет 100% cpu, поэтому while(1) {} уместно, но будет кушать энергию в штатном режиме. :)
он в любом случае будет кушать энергию, вне зависимости что вы там напишите - читаем спящий режим в даташите
всё понял, ардуина всегда потребляет 100% cpu
Неправильно понял. Она может спать с практически полностью выключенным процессором.
Нету idle - нету и метрики. Вот пример, где "утилизация cpu" составляет 50%:
https://github.com/chrishonson/Arduino_CPU_Usage/blob/master/Arduino_CPU...
всё понял, ардуина всегда потребляет 100% cpu
Неправильно понял. Она может спать с практически полностью выключенным процессором.
Скажите вызовет ли пустой цикл в ардуине подобие CPU overhead 100% ? как бывает на ПК ?
имелось ввиду без установки режимов сна.
А Вы представляете, как именно вычисляется этот самый процент на ПК?
Скажите вызовет ли пустой цикл в ардуине подобие CPU overhead 100% ? как бывает на ПК ?
имелось ввиду без установки режимов сна.
А Вы представляете, как именно вычисляется этот самый процент на ПК?
Видимо в тиках, как по ссылке выше. Если натикало меньше чем должно, то значит какой-то процесс загрузил процессор, то есть использовал процессорное время.
Давайте еще раз: "процент" - это отношение чего-то к чему-то. В знаменателе - понятно, общее астрономическое время, а что именно в числителе?
Видимо в тиках, как по ссылке выше. Если натикало меньше чем должно, то значит какой-то процесс загрузил процессор, то есть использовал процессорное время.
Давайте еще раз: "процент" - это отношение чего-то к чему-то. В знаменателе - понятно, общее астрономическое время, а что именно в числителе?
Алгоритм расчета чего?
В ПК процент использования ЦПУ - это отношение доли времени, в течение которого ЦПУ находится не в состоянии сна, ко всему времени. Т.е., как Вы хотите, "без сна" - всегда будет 100%. О чем Петрович Вам совершенно справедливо и написал.
А что именно считается по ссылке выше, и почему автор называл это "CPU_usage", мне, честно говоря, разбираться лень. Есть общие принципы определения тех или иных параметров. CPU usage, в частности. И если некто процессор не усыпляет, но при этом заявляет о CPU usage менее 100%, на мой взгляд, это заявление не заслуживает внимания.
andriano,
Ещё неплохо здесь расписано.
https://en.wikipedia.org/wiki/CPU_time
В ПК процент использования ЦПУ - это отношение доли времени, в течение которого ЦПУ находится не в состоянии сна, ко всему времени.
А что именно считается по ссылке выше, и почему автор называл это "CPU_usage", мне, честно говоря, разбираться лень. Есть общие принципы определения тех или иных параметров. CPU usage, в частности. И если некто процессор не усыпляет, но при этом заявляет о CPU usage менее 100%, на мой взгляд, это заявление не заслуживает внимания.
andriano,
Ещё неплохо здесь расписано.
https://en.wikipedia.org/wiki/CPU_time
Лично мне не понравилось - много воды, а как раз тот факт, что отличная от 100% загрузка CPU будет лишь при остановке процессора, как-то выпал из рассмотрения.
Собственно, что происходит в Windows и подобных многозадачных ОС. Процессор вытаскивает из очереди сообщения и обрабатывает их. Если очередь иссякла, процессор останавливается командой HLT о следующего аппаратного прерывания (от таймера, клавиатуры, звуковой карты и других периферийных устройств). Вот время, в течение которого процессор остановлен, и используется для определения загрузки процессора. (описание немного упрощено - не учитывается принудительное переключение между задачами)