Analyzers
Support for Analyzers (Intel VTune™ Profiler, Intel Advisor, Intel Inspector)
4728 Discussions

What are the differences and connections between the intel performance tools and eBPF

Xiaoqiang
Beginner
584 Views

I recently listened to a talk by a top performance engineer who mentioned that eBPF is the future of performance engineers.

He divides performance analysis tools into two categories.

  • Traditional perf, ftrace etc.
  • Observability with eBPF

As the title says, my question is,

What are the differences and connections between the intel performance tools(VTune/Advisor/Trace Analyzer and Collector) and other Linux performance tools(eBPF/perf/ftrace)?

Will intel performance tools introduce features of eBPF?

Labels (1)
0 Kudos
3 Replies
VaradJ_Intel
Moderator
520 Views

Hi,

 

Thank you for posting in Intel Communities.

 

We are checking on it internally, will get back to you soon with an update.


Thanks.

DMITRY_T_Intel
Employee
401 Views

Hi Xiaoqiang,

 

Thank you for your question and interest in performance analysis tools!

 

Short answer:

Almost all mentioned tools use different kernel interfaces and drivers to get performance data. One exception: VTune Profiler can use Perf*-based sampling if SEP driver is not available.

 

Details:

perf:

Uses perf_events interface. More details: https://perf.wiki.kernel.org/index.php/Main_Page

 

ftrace:

It is a tracing utility built directly into the Linux kernel; https://www.kernel.org/doc/Documentation/trace/ftrace.txt

 

VTune Profiler:

For PMU event-based analysis, VTune Profiler uses Intel Sampling Driver (SEP) https://www.intel.com/content/www/us/en/develop/documentation/vtune-help/top/installation/sep-driver...

If SEP driver is not available VTune Profiler uses driverless Linux* Perf*-based performance profiling: https://www.intel.com/content/www/us/en/develop/documentation/vtune-cookbook/top/configuration-recip...

 

Advisor:

For different types of analysis (perspectives) it uses different sources of performance data. https://www.intel.com/content/www/us/en/develop/documentation/advisor-user-guide/top.html

 

For GPU profiling VTune Profiler and Advisor use Intel GPU Drivers.

 

Trace Collector:

Is a tool for tracing MPI applications. It intercepts all MPI calls and generates trace files that can be analyzed with Intel(R) Trace Analyzer for understanding the application behavior. https://www.intel.com/content/www/us/en/develop/documentation/itc-user-and-reference-guide/top/intro...

 

Trace Analyzer:

Is a graphical tool that displays and analyzes event trace data generated by Trace Collector.

 

eBPF - a technology that can run programs in Linux kernel. It is used to safely and efficiently extend the capabilities of the kernel without requiring to change kernel source code or load kernel modules. You can find more info about these technologies at these links:

https://ebpf.io/what-is-ebpf

https://www.brendangregg.com/overview.html

 

>> Will intel performance tools introduce features of eBPF?

Currently Intel Performance Tools don't use eBPF technology. But we work in this direction. Depending on demand from our strategic customers we will (or will not) implement support eBPF in our performance tools.

 

Please let me know if you have other questions.

Thanks!


DMITRY_T_Intel
Employee
351 Views

Hi Xiaoqiang,

If you need any additional information, please post a new question as this thread will no longer be monitored by Intel.

Thanks!


Reply