- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Hi,
While analyzing mixed managed/unmanaged code via call graph a , functions in the unamanged code parts do not appear in the results. Application X we would like to analyze, appears only as "X.jit", and contain only the managed functions.
All seems to work well for the "sampling" analyze.
Thanks
Amit
While analyzing mixed managed/unmanaged code via call graph a , functions in the unamanged code parts do not appear in the results. Application X we would like to analyze, appears only as "X.jit", and contain only the managed functions.
All seems to work well for the "sampling" analyze.
Thanks
Amit
Link Copied
5 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - amitm02
Hi,
While analyzing mixed managed/unmanaged code via call graph a , functions in the unamanged code parts do not appear in the results. Application X we would like to analyze, appears only as "X.jit", and contain only the managed functions.
All seems to work well for the "sampling" analyze.
Thanks
Amit
While analyzing mixed managed/unmanaged code via call graph a , functions in the unamanged code parts do not appear in the results. Application X we would like to analyze, appears only as "X.jit", and contain only the managed functions.
All seems to work well for the "sampling" analyze.
Thanks
Amit
Did you use Call Graph Wizard->.NET* profiling->Executable->Application to Launch->All .NET* classes and all native modules?
The call graph report should display your.exe.jitas well asother native modules (such as kernel32.dll, gdi32.dll, etc). Can't you find your interest of DLL modules in the result?
You can verify this problem with vtune example first - Vtuneexamplesc#2003binreleasevtune_csharp_example.exe, and compare results with your program's.
If the problem persists on, please submit an issue with test case (your private data, modules with PDB files) to https://premier.intel.com for investigating.
Thanks, Peter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Peter Wang (Intel)
Did you use Call Graph Wizard->.NET* profiling->Executable->Application to Launch->All .NET* classes and all native modules?
The call graph report should display your.exe.jitas well asother native modules (such as kernel32.dll, gdi32.dll, etc). Can't you find your interest of DLL modules in the result?
You can verify this problem with vtune example first - Vtuneexamplesc#2003binreleasevtune_csharp_example.exe, and compare results with your program's.
If the problem persists on, please submit an issue with test case (your private data, modules with PDB files) to https://premier.intel.com for investigating.
Thanks, Peter
Hi Peter,
Thanks for replaying.
Yes, i use the use call graph wizard as you indicated.
To be more clear, the call graph shows all the application .NET managed functions. It also show the native unmanged functions of other DLL's the applications use. What it does not shows, is the native unmanged functions that at staticly linked into the application executable.
Yours
Amit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - amitm02
Hi Peter,
Thanks for replaying.
Yes, i use the use call graph wizard as you indicated.
To be more clear, the call graph shows all the application .NET managed functions. It also show the native unmanged functions of other DLL's the applications use. What it does not shows, is the native unmanged functions that at staticly linked into the application executable.
Yours
Amit
Hi Amit:
Thanks for more detail info!
It seems that call graph result displays the native unmanaged functions of other DLL's the application use. For your application executable, it should be built with "/Zi" compiler option, with "/DEBUG", "/Fixed:no" linker options. Thus, the binary has debug info, and it is relocatable.
You can use Call Graph Configure to check if your interest of functions has beinstrumented successfully (try to change instrumentation type from "Full functions" to "Custom" then look into...not really want to change it, you can cancel it after verifying!)
You can use "Reply is Private"and use"AddFiles", attach application/PDB filesand tell me your interest of functions- if you wantme to help verifying.
Regards, Peter
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Peter Wang (Intel)
Hi Amit:
Thanks for more detail info!
It seems that call graph result displays the native unmanaged functions of other DLL's the application use. For your application executable, it should be built with "/Zi" compiler option, with "/DEBUG", "/Fixed:no" linker options. Thus, the binary has debug info, and it is relocatable.
You can use Call Graph Configure to check if your interest of functions has beinstrumented successfully (try to change instrumentation type from "Full functions" to "Custom" then look into...not really want to change it, you can cancel it after verifying!)
You can use "Reply is Private"and use"AddFiles", attach application/PDB filesand tell me your interest of functions- if you wantme to help verifying.
Regards, Peter
I'm using all the compiler options you've mention. also in the "Custom" menu you've mention i can see the native functions and it's state that they will be instrumented OK. Alas, they do not appear in the analysis results.
p.s i could not find the "Reply is Private" option. attaching applications files is problematic due to company policy. I'm aware that it make it harder to help me, but i would hope for any suggestions...
Yours,
amit
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - amitm02
H Peter,
I'm using all the compiler options you've mention. also in the "Custom" menu you've mention i can see the native functions and it's state that they will be instrumented OK. Alas, they do not appear in the analysis results.
p.s i could not find the "Reply is Private" option. attaching applications files is problematic due to company policy. I'm aware that it make it harder to help me, but i would hope for any suggestions...
Yours,
amit
I'm using all the compiler options you've mention. also in the "Custom" menu you've mention i can see the native functions and it's state that they will be instrumented OK. Alas, they do not appear in the analysis results.
p.s i could not find the "Reply is Private" option. attaching applications files is problematic due to company policy. I'm aware that it make it harder to help me, but i would hope for any suggestions...
Yours,
amit
Hi Amit,
Unfortunately I realizedit could bea limitation in the product. Call graph.NET profiling in a mixed module can't display the results for native code, only display the results for jit code.
As a workaround, the user can move native code into a separated DLL, you know that call graph can display performance data inyour all native DLLs:-)
Regards, Peter

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page