- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hey.
I am using Vtune from my Windows computer and the target is on a Linux remote machine.
The Vtune version is: 2024.2.1
The OS version on the machine is: Linux 3.10.0-1160.119.1.el7.x86_64 x86_64 (I'm using Centos 7)
When trying to analyze a process with Vtune's "attach to process", the process aborts shortly after the attachment. The collection log presents the following message:
Only user space will be profiled due to credentials lack. Consider changing /proc/sys/kernel/perf_event_paranoid file for enabling kernel space profiling.
Assertion failed: object_impl:23: (((const struct tpss_object*)obj)->magic == 0xFACEECAF) : . Please contact the technical support.
Assertion failed: object_impl:23: (((const struct tpss_object*)obj)->magic == 0xFACEECAF) : . Please contact the technical support.
As for the warning in lines 1, I changed the setting of perf_event_paranoid but that did not help.
This error happens when using the "Hotspot" analysis type. In "Performance Snapshot" everything works well.
What am I missing?
Link Copied
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
What kind of workload are you attaching to? Does it work if you run the hotspots collection with hardware event-based sampling instead of user-mode sampling?
TPSS is the underlying process which does the user-mode sampling. If you use hardware event-based sampling, it will use perf instead of tpss. TPSS works with most languages, but might run into issues with managed languages like golang.
User-mode hotspots does use perf to collect some HW events when the "Show additional performance insights" box is checked, which is why you see the recommendation about perf_event_paranoid, but it doesn't seem to be causing a problem in this case.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Thanks for the quick response!
First of all, I noticed I did not install the drivers properly. After doing that, I tried using "hardware event-based sampling" as you said, and it worked. For some reason, "user-mode sampling" still causes the same assertion error even though my program is C++ and C only (not any managed language).
Anyways, the hw-sampling is totally enough for my use case. If you do have any idea why user-mode is not working, pls let me know.
Thanks again!
Nitai
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Did you try to echo '0' to 'perf_event_paranoid' like below? And if your driver is ready?
# echo 0 > /proc/sys/kernel/perf_event_paranoid
From the fetal message, VTune can't profile data in kernel space. You can see a similar issue was discussed in the following post:
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Did you try to profile the data in kernel space? User mode sampling mode only profiles the data in user space.
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page