2013-06-25 3 views
6

Я пытаюсь получить некоторые базовые данные о производительности на моем новом телефоне Galaxy S4. Я уже скомпилировал настраиваемое ядро ​​и сумел вывести его на устройство с помощью Odin. Эти модули ядра, связанные с перфорацией инструмента, который я включал:Linux perf stat tool возвращает нулевой счетчик команд. Что мне здесь не хватает?

CONFIG_HAVE_PERF_EVENTS=y 
CONFIG_PERF_USE_VMALLOC=y 
CONFIG_PERF_EVENTS=y 
CONFIG_PERF_COUNTERS=y 

Я также кросс-скомпилирован инструмент перфорации. Проблема заключается в том, что когда я запускаю следующую команду:

perf stat ls 

выход, кажется, не совсем правильно:

Performance counter stats for 'ls': 
10887392 cycles # 0.000 Ghz 
     0 instructions # 0.00 insns per cycle 
0.012448321 seconds time elapsed 

Я установил политику центрального процессора в «пользовательском пространстве» и сделал:

cpufreq-set -f 1600000 

, чтобы убедиться, что все сердечники всегда работают на максимальной частоте.

Буду признателен за любую помощь.

Вот ссылки на подобные случаи без решения: http://lists.linaro.org/pipermail/linaro-kernel/2012-December/002611.html http://forums.arm.com/index.php?/topic/15020-pmu-in-cortex-a8-omap-3530-what-am-i-doing-wrong/

Соответствующих StackOverflow тема: How to measure program execution time in ARM Cortex-A8 processor?

+0

Какова ваша модель Galaxy S4 (GT-I900x)? – amigadev

+0

Боковой вопрос: как я могу включить эти модули ядра CONFIG_? – Behnam

ответ

2

Вы можете увидеть другие HW события, как "процессорные" или "кэш-промахи"?

perf stat -e cache-misses,cycles ls 

Возможно, вы захотите установить CONFIG_HW_PERF_EVENTS.

+2

Я также думаю, что CONFIG_HW_EVENTS может отсутствовать. Сначала проверить. – amigadev