locked
Load symbols for profiling?

    Question

  • Hi, similar question to this (I tried the suggested fix, but didn't work):

    When profiling my VB Windows Store app, the usual .Net library symbols are not being loaded, here is some example output:

    Loaded symbols for C:\WINDOWS\System32\wow64cpu.dll
    Loaded symbols for C:\WINDOWS\System32\wow64win.dll
    Failed to load symbols for C:\WINDOWS\assembly\NativeImages_v4.0.30319_32\System.Core\9587421a7c7653b171bc5a2e5a1fffab\System.Core.ni.dll
    Failed to load symbols for C:\WINDOWS\assembly\NativeImages_v4.0.30319_32\Microsoft.V9921e851#\eb91e0891b767a1606b099a4a64c46fd\Microsoft.VisualBasic.ni.dll

    This makes it near impossible to work out exactly where the problem areas in my code are, without breaking the code into a million little methods just so I can profile it...

    Any help gratefully appreciated.

    Lachlan


    Thursday, December 27, 2012 1:11 AM

Answers

All replies

  • Usually you would only need symbols for your own assemblies and not the core .NET library symbols. Ie. when profiling it might be that the overhead looks like it's in the built-in libraries, but it's where your code is calling these libraries that you need to attack any performance problems (you won't be able to modify the .NET assemblies anyway). So look at your the hotpath stack and stop where you're leaving your code.

    /Morten
    twitter: http://www.twitter.com/dotMorten
    blog: http://www.sharpgis.net

    Thursday, December 27, 2012 2:59 AM
  • Usually you would only need symbols for your own assemblies and not the core .NET library symbols. Ie. when profiling it might be that the overhead looks like it's in the built-in libraries, but it's where your code is calling these libraries that you need to attack any performance problems (you won't be able to modify the .NET assemblies anyway). So look at your the hotpath stack and stop where you're leaving your code.

    /Morten
    twitter: http://www.twitter.com/dotMorten
    blog: http://www.sharpgis.net

    Can anyone actually answer my question??

    Anyone who has done much profiling will realise how useful this info is.

    Lachlan

    Thursday, December 27, 2012 5:25 AM
  • Got a reply back from MS after lodging bug on Connect, this blog post describes how to generate the PDBs yourself (the very last comment at bottom includes a link to a Powershell script that does it all for you).

    http://blogs.msdn.com/b/visualstudioalm/archive/2012/12/10/creating-ngen-pdbs-for-profiling-reports.aspx

    Works perfectly.

    • Marked as answer by LMKz Wednesday, January 30, 2013 12:51 AM
    Wednesday, January 30, 2013 12:51 AM