[llvm-dev] PerfJITEventListener needs perf-<pid>.map?
Eugene Zhulenev via llvm-dev
llvm-dev at lists.llvm.org
Fri Apr 17 22:58:30 PDT 2020
I'm trying to use PerfJITEventListener with llvm::orc::LLJITBuilder:
1. perf record -o /tmp/perf.data -- <my_binary_with_event_listener>
2. perf inject -j -v -i /tmp/perf.data -o /tmp/perf.data.jit
*jit marker found: ~.debug/jit/llvm-IR-jit-20200417-3c2242/jit-149849.dump*
*injecting: ~/.debug/jit/llvm-IR-jit-20200417-3c2242/jit-149849.dump*
*write ELF image
~/.debug/jit/llvm-IR-jit-20200417-3c2242/jitted-149849-1.so*
*write ELF image
~/.debug/jit/llvm-IR-jit-20200417-3c2242/jitted-149849-2.so*
*injected: ~/.debug/jit/llvm-IR-jit-20200417-3c2242/jit-149849.dump (0)*
Generated ELF files have correct .text sections.
However perf report can't find these generated so files:
+ 69.50% 23.82% my_binary [JIT] tid 149849 [.] 0x00007f9c34d5106a
+ 51.78% 45.69% my_binary [JIT] tid 149849 [.] 0x00007f9c34d51065
+ 27.71% 6.09% my_binary [JIT] tid 149849 [.] 0x00007f9c34d51060
It seems that perf report is looking for a shared object
in /tmp/perf-149849.map, but that file doesn't exist.
Looking at examples in the original LLVM change (
https://reviews.llvm.org/D44892?), I don't see any mentions of perf.map
file.
Do I miss something? Are there any examples of how to use perf listener?
Thanks,
Eugene
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20200417/bc8499e9/attachment.html>
More information about the llvm-dev
mailing list