-
Notifications
You must be signed in to change notification settings - Fork 44
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Where is IttnotifyInfo
defined/declared?
#85
Comments
@iamkroot, we use iJitIttNotifyInfo functionality only for testing purposes in the llvm-jitlistener tool. To create an Intel JIT event listener for the llvm-jitlistener we provide it with the IttnotifyInfo function Could you please describe how you would you like to use these listeners? |
I have a JIT-ted program running through LLVM's MCJIT ExecutionEngine. I want to profile this using VTune (great software!), but my code is heavily inlined. From reading the LLVM PR, I assumed that this was something that we could handle out-of-the-box using
Would that handle inlined functions? I also see |
Well, since your JIT-ted program running through LLVM's MCJIT ExecutionEngine you just need to make sure that it was compiled with
MCJIT already instrumented with ITT API __itt_module_load_with_sections which dumps ELF file and provides VTune with all the necessary information during profiling. Also I would like to note, that in case of VTune attach to a launched application, we recommend to manually set INTEL_LIBITTNOTIFY64 (and INTEL_LIBITTNOTIFY32 for 32 bit) environment variable before launching the application. @iamkroot sorry for the delayed reply, I was on a vacation. |
LLVM includes the
IntelJITEventsWrapper
that was updated in Profiling the code generated by MCJIT engine using Intel VTune profiler.The commit message mentions-
And from the diff, it seems to revolve around calling the
iJitIttNotifyInfo
func with the memory region that contains the generated ELF....Except,
IttnotifyInfoFunc
is initialized to0
. And there is no mention of a similarly-named method insidejitprofiling.h
as there is foriJIT_NotifyEvent
(the older API).As a result, the default
IntelJITEventListener
in LLVM is totally non-functional. It simply ignores the events whenIttnotifyInfoFunc
is0
.So the question is- where is
IttnotifyInfoFunc
declared, and how can we use it from inside the LLVM listener?The text was updated successfully, but these errors were encountered: