Reputation: 130
I tried to use perf on android
The android is built with userdebug mode.
The perf is built with source code under $ANDROID_SRC/external and I pushed it to the /data
Is it caused by some configs or options in kernel that I didn't enable?
Or being lack of some symbols?
Thx
root@s3gr20m6s:/data # ./perf record -p 4003
^C[ perf record: Woken up 1 times to write data ]
[perf record: Captured and wrote 0.746 MB perf.data (~32610 samples) ]
root@s3gr20m6s:/data # ./perf report
Error:
The perf.data file has no samples!
# ========
# captured on: Fri Dec 31 20:03:35 1999
# hostname : localhost
# os release : 3.14.41-i386-00011-g653e4cf
# perf version : perf.3.12_android
# arch : i686
# nrcpus online : 4
# nrcpus avail : 4
# cpudesc : Genuine Intel(R) CPU @ 728
# total memory : 948656 kB
# cmdline : /data/perf record -R -p 4003
# event : name = cycles, type = 0, config = 0x0, config1 = 0x0, config2 = 0x0, excl_usr = 0, excl_kern = 0, excl_host = 0, excl_guest = 1, precise_ip = 0, attr_mmap2 = 0, attr_mmap = 1, attr_mmap_data = 0
# HEADER_CPU_TOPOLOGY info available, use -I to display
# pmu mappings: cpu = 4, software = 1, tracepoint = 2, breakpoint = 5
The perf.data file has no samples!
Upvotes: 0
Views: 875
Reputation: 413
try adding -e cpu-clock
It's possible it doesn't have access to the hardware profiling events, and can only use soft events. I've seen this on VMs at least.
Upvotes: 1