Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add support for dumping and using precise debug info #61735

Merged
merged 6 commits into from
Nov 18, 2021

Commits on Nov 17, 2021

  1. Add support for dumping and using precise debug info

    * In the JIT, add support for dumping the precise debug info out through
      an environment variable `DOTNET_JitDumpPreciseDebugInfoFile` in a
      simple JSON format. This is a stopgap until we expose the extra
      information through ETW events.
    
    * In dotnet-pgo, add an argument --precise-debug-info-file which can
      point to the file produced by the JIT. When used, dotnet-pgo will get
      native<->IL mappings from this file instead of through ETW events.
    
    * In dotnet-pgo, add support for attributing samples to inlinees when
      that information is present. This changes the attribution process a
      bit: previously, we would group all LBR data/samples and then
      construct the profile from all the data. We now do it in a more
      streaming way where there is a SampleCorrelator that can handle
      individual LBR records and individual samples.
    
    * In dotnet-pgo, add an argument --dump-worst-overlap-graphs-to which
      can be used in the compare-mibc command to dump out a .dot file
      containing the flow graph of the methods with the worst overlap
      measures, and showing the relative weight count on each basic block
      and edge for the two profiles being compared. This is particular
      useful to find out where we are producing incorrect debug mappings, by
      comparing spgo.mibc and instrumented.mibc files.
    jakobbotsch committed Nov 17, 2021
    Configuration menu
    Copy the full SHA
    b403951 View commit details
    Browse the repository at this point in the history
  2. Run jit-format

    jakobbotsch committed Nov 17, 2021
    Configuration menu
    Copy the full SHA
    5ab02ec View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    4dc9fa2 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6e83c42 View commit details
    Browse the repository at this point in the history
  5. Run jit-format

    jakobbotsch committed Nov 17, 2021
    Configuration menu
    Copy the full SHA
    5e1c708 View commit details
    Browse the repository at this point in the history
  6. Rename Smoothe -> Smooth

    jakobbotsch committed Nov 17, 2021
    Configuration menu
    Copy the full SHA
    af605ad View commit details
    Browse the repository at this point in the history