I have a function that performs a different amount of processing each time that it is called. I would like obtain a histogram of the processing time used per function call, i.e. the probability distribution of processing per call. (The function is going into a real-time system; I need to characterize its CPU utilization.) Is there a way to do this with VTune or its APIs?
Not without modifying your code. That is, the analyzer won't do this automatically. If you create a performance counter for your application, you can report this data via the performance counter subsystem in Microsoft* Windows* and the VTune analyzer can display it and correlate it with sampling data.
Call graph can display "average time per call", but not actual time per call. It also doesn't display it in a histogram.