2017-02-08 2 views
1

Я пытаюсь сделать профилирование с simpleperf в моем Android приложении НКА, но когда я печатаю simpleperf команды записи, система сообщает это сообщение:Simpleperf CPU-циклы не поддерживаются в Android устройств

simpleperf E 02- 08 13:34:47 15380 15380 event_selection_set.cpp: 68] Тип события 'CPU-циклы' не поддерживается ядром

Я прочитал этот учебник: https://android.googlesource.com/platform/system/extras/+/master/simpleperf/README.md

и я последовал за Thes е шаги:

Make android debuggable=true in the manifest. 

    adb shell setprop security.perf_harden 0 

    adb shell 

    [email protected]: run-as com.mysample.test 

    adb push bin/android/arm/simpleperf /data/local/tmp 

    [email protected]: cp /data/local/tmp/simpleperf . 

    [email protected]: ./simpleperf record -p 12083 --duration 30 

Является ли это означает, что связь 4 CPU-циклы не поддерживаются на аппаратном уровне или могу я не активировал конкретный флаг безопасности на ядре?

Я использую корневое устройство nexus 4.

Ndk версия 13b.

Android версия: 5.1

Версия ядра: 3.4.0-парфюм-gf75bb4f

П.Д.: Я потащился перфорация тега из-за сходства с перфорацией.

Заранее спасибо.

Unai.

ответ

2

Nexus 4 поддерживает событие cpu-cycles. Я не могу найти версию ядра f75bb4f в git-истории, поэтому я не тестировал одно и то же ядро. Я протестировал, прошив 5.1.1 (LMY48T) на nexus 4, используя simpleperf в ndk-r13b, и он работает. Поэтому я подозреваю, что используемое ядро ​​отключает первичные события, и вы можете исправить это, прошив новое изображение в https://developers.google.com/android/images#occam.

Смежные вопросы