Perf не добавляет до 100% - PullRequest
0 голосов
/ 03 июля 2018

Я пытаюсь измерить загрузку процессора моим мобильным телефоном Android с помощью инструмента perf. Так как мой телефон (Redmi Note 3) не имеет перфоратора. Я использовал инструмент simpleperf, предоставленный Google. Я записал использование процессора в масштабе всей системы, используя perf record -e cpu-cycles -a. Накладные расходы на использование процессора, сообщаемые perf, должны добавить до 100%, но отчет об использовании процессора, полученный мной с телефона, добавляет только 12% после 10 минут профилирования. Я профилировал в то время как мой телефон бездействовал, все приложения были убиты

А также, когда я профилировал в течение 1 минуты, он прибавил примерно к 70%.

Это ненормально? или perf не сообщает о простое процессора, поэтому у меня осталось только 12% использования процессора?

1 Ответ

0 голосов
/ 06 июля 2018

Я обнаружил, что это из-за ошибки с плавающей запятой (точности) в perf. Поскольку perf вычисляет только накладные расходы до 0.0x%, когда я выполняю запись perf достаточно долго, даже если накладные расходы накапливаются менее чем на 0,01%, а через 30 минут они прибавляются примерно до 50%, поэтому заявленные накладные расходы в сумме составляют только 50%. 50% от 0.00x%, которая округляется до 0,00%.

...