- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
I am trying to profile the cost of the component in apache using vtune today. I am having some problem to generate debug information (line number and symbol link) for vtune. basically when i do the call graph activity, vtune shows "function instrument to main modules was skipped". Looks like it can't go to function level, and when i do sampling activity, if i want it to display sources for selected hotspots, then it will say " [source view] warning -Line Number information is not available for this range. only disassembly view is availalbe."
I install apache as follows, by default, the downloaded source code and installation directories are different of course as follows:
$ cd $BENCH/src/httpd-2.2.11 $ CFLAGS="-g -O3 -march=nocona" ./configure \ > --enable-ssl --enable-so --with-mpm=worker --prefix=$BENCH/apache2 $ make $ make install
i am not sure whether the configure file helps me to add debug information or not. Or vtune can't find the source code?
does anybody know whether there is a way for me to tell vtune explicity where the source code are?
another question is for big applications like apache, there are a few source code directories.
I don't know what i can do to make vtune do instrument in the function level. pls help!
コピーされたリンク
3 返答(返信)
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
I suppose you'd want to check whether your -g compile flag is being passed into all relevant generated Makefiles, if the build works that way, and also check whether it is passed to the linking commands.
Capture the log of the build to see whether the -g is present everywhere you need it.
If VTune sees that the code in question was built and linked with -g, and doesn't find the source code, it should produce a pop-up asking you to browse to it.
Capture the log of the build to see whether the -g is present everywhere you need it.
If VTune sees that the code in question was built and linked with -g, and doesn't find the source code, it should produce a pop-up asking you to browse to it.
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
It's your responsibility to check if your main module was compiled with "-g" option.
"... vtune shows "function instrument to main modules was skipped" " - You have to clean up call graph's cacheand run call graph again.
For "...vtune can't find the source code?" - please use "vtl global-options" to view current configuration, then use " vtl global-options source_search_dirs="dir" ", then run vtlec in this console.
Thanks, Peter
- 新着としてマーク
- ブックマーク
- 購読
- ミュート
- RSS フィードを購読する
- ハイライト
- 印刷
- 不適切なコンテンツを報告
BTW, "skipped" just means the VTune analyzer did not NEED to instrument these modules AGAIN. Once they are instrumented, they are saved in a cache. Unless you rebuild the modules, the cached copies can be used instead of re-instrumenting.
