Analyzers
Talk to fellow users of Intel Analyzer tools (Intel VTune™ Profiler, Intel Advisor)
4992 Discussions

VTune Hotspot Profiler, No Function Names in Release mode

Lamb__Tripp
Novice
2,808 Views

I just started using the hotspot analysis from the VTune Performance Profiler for a Fortran Project. Is there a way to get the function names to show up in Release mode?

 

I've messed around with several project settings, but I can't seem to find what I need to change. They are showing up fine in Debug mode.

0 Kudos
1 Solution
Lamb__Tripp
Novice
2,511 Views

I found the answer to my question after some subsequent work.

 

In order for the executable to build with Debug Info intact by changing settings in the Visual Studio project settings, you need to also change the Linker->Debugging->"Generate Debug Info" setting to Yes. Only changing the Fortran->Debugging->"Debug Information Format" to Full isn't enough on it's own.

 

Hopefully this will help someone else one day.

View solution in original post

10 Replies
Vladimir_T_Intel
Moderator
2,791 Views

Hello,

 

Are you compiling Fortran code on Windows or Linux?

 

Anyway, on Windows you might want to try compiling with, for example: -debug:full -O2

Using -O2 is overriding cancelling optimization and still preserving debug symbols.

I found a nice detailed thread on this topic with Steve Lionel answering here: https://community.intel.com/t5/Intel-Fortran-Compiler/compiler-flags-for-release-with-debug-symbols/td-p/1150779

On Linux it should also work, as well as -g option.

Hope it helps.

0 Kudos
Lamb__Tripp
Novice
2,776 Views

Compiling on Windows.

 

I've tried -debug:full. It didn't seem to make a difference, but I hadn't tried -O2. Thank you.

 

EDIT: Changing those two settings in the Visual Studio Project settings didn't change anything. I also added the arguments to the command line setting also to no avail. I'm still only getting names like func@0x4b2e72b2 when I use the release mode build in the Performance Profiler.

0 Kudos
Vladimir_T_Intel
Moderator
2,764 Views

Are you sure that the func@0x4b2e72b2  belongs to a binary you've compiled? (not to some system module)

0 Kudos
Lamb__Tripp
Novice
2,762 Views

That one specifically? No. But every function in the list has a name in that form.

0 Kudos
Vladimir_T_Intel
Moderator
2,747 Views

Do you observe .pdb files created in your project when using those options?  If not, would you try /Zi then?

0 Kudos
Lamb__Tripp
Novice
2,701 Views

Using /debug:full or /Zi will build a vc160.pdb file but it will not create a pdb file with the same name as the executable.

0 Kudos
Vladimir_T_Intel
Moderator
2,683 Views

Then I'd recommend to submitting a question on the Fortran compiler forum. I suppose you will find an answer on .pdb files much faster there. 

0 Kudos
Lamb__Tripp
Novice
2,654 Views

Will do! Thank you for the help.

It seems like I must have some option somewhere overriding the debug information being generated. I'll ask that forum.

0 Kudos
AlekhyaV_Intel
Moderator
2,580 Views

Hi,


Thank you for accepting our solution. If you need any further assistance, please post a new question as this thread will no longer be monitored by Intel.


Regards,

Alekhya


0 Kudos
Lamb__Tripp
Novice
2,512 Views

I found the answer to my question after some subsequent work.

 

In order for the executable to build with Debug Info intact by changing settings in the Visual Studio project settings, you need to also change the Linker->Debugging->"Generate Debug Info" setting to Yes. Only changing the Fortran->Debugging->"Debug Information Format" to Full isn't enough on it's own.

 

Hopefully this will help someone else one day.

Reply