Community
cancel
Showing results for 
Search instead for 
Did you mean: 
Hodara__Joachim
Beginner
104 Views

Recursive Filter In by Selection

Hi,

When profiling my code with VTune, I often need to find out when a given function gets executed (start elapsed time -> end elapsed time). To do so, I usually do the following:

  1. I go to the top-down tree view.
  2. I select a range in the elapsed time graph at the bottom, and "Filter In by Selection"
  3. I observe the new tree view, and check if the CPU time for that function is close to 100%. If it is not, I need to move my range around -> go back to step 2 and iterate.

This is a rather tedious process. In the top-down tree, there is an option "Filter In by Selection", which almost does what I want. It shows the function in the elapsed time graph, but it does not show its callees.

Basically, what I am looking for is an option in the top-down tree that would be "Filter In by Selection (Recursive)". Is there anything like that in VTune?

Thank you for your help,

Joachim

0 Kudos
6 Replies
ArunJ_Intel
Moderator
104 Views

Hey Joachim,

When you filter  in by selection the filter applies to the whole vtune report and all vtune  windows ie bottom up, top down  ,caller callee etc. All these panes show data only for the filtered time. So once you have applied the filter and get to know the function to get its callees you can hover over to the caller callee tab which shows all the callees of this function in the filtered time

 

Thanks 

Arun Jose

 

 

Hodara__Joachim
Beginner
104 Views

Thank you for your reply Arun Jose. I think I probably wasn't clear enough in my question. I already know how to find out the callees of a given function. What I would like is to do is visualize my function, as well as all of its callees and the callees of its callees in the timeline at the bottom of the screen (which is green when there is no CPU activity and brown otherwise). Right now, if I filter in by some functions, it will only show in brown the cpu of these functions, not including their callees.

ArunJ_Intel
Moderator
104 Views

Hey Joachim,

 

We are checking with the concerned team regarding your query.

 

Arun Jose

Vitaly_S_Intel
Employee
104 Views

Well, there is no direct ability to filter by particular function and all its callees in the top-down tree. However, you can manually expand all its callees, do multiple selection and filter-in (though this might not be doable if amount of callees is too huge).

Although if you wish to know top function execution time boundaries, it might be more effective to instrument your application with Task or Frame API. As result, you'll see exact function boundaries in the overtime view and will be able to group performance data by tasks or frames with or without applying filters.

ArunJ_Intel
Moderator
104 Views

Hey Joachim,

Does the solution provided answer your query.

 

Thanks

Arun Jose

ArunJ_Intel
Moderator
104 Views

We are closing the case assuming the solution provided helps. Please feel free to raise a new thread in case  of further issues

Reply