I am trying to get callgraph information on my application. The application runs for almost 1hour. There is a startup phase which takes around 2-3 minutes. The steady state for this application only starts after 10 minutes or so. I launch the application through vtune in the callgraph mode. However the callgraph process stops indicating "Updating call graph database" followed by "Done" in 2 minutes. As a result the data I see in the viewer is all functions pertaining to startup which I am really not interested in.
So what I would like to know is, what is the best way for me to collect callgraph information during steady state. Any amount of tweaking the
following parameters don't help
1. Changed the duration from 20 seconds [ no effect ]
2. Chose a list of functions to be instrumented [still callgraph ends in 2 minutes]
3. Uncheck the "Limit collection buffer size"
i am using Vtune Performance Analyzer 7.2 and using the remote data collector on Linux.
I will try it out and let you know how it goes. It would be nice if this option is made part of the GUI and not requiring the user to have to do any code changes. The Callgraph tool is exteremely useful and what would be nice is to have a start and stop option to it similar to sampling.
The GUI provides for delaying the start of sampling by a fixed time interval. If your application is in a steady state by expiration of delay, that may be good enough. Using the API to trigger the sampling at a repeatable point in your application should be more accurate, but it's difficult to see how that could be done in the GUI.
If not, open a premier case on this, and pack up the data: attache the .vxp file to the case to speed things up. Wouldn't hurt to indicate that you got the advice to open a premier case from IDS forum.
Most probably the problem is not in Pause/Resume API. The problem is that CG data collection stops when application is starting up. So when application gets to a step where Resume() call is invoked no active collectors are in the system. Girish, could you pleasespecify how many times and how many instances of your module of interest are started during application work? Does CG collectionfinish before your module of interest is started or after?