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:
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,
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
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.
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.