1. 08 Nov, 2016 1 commit
  2. 18 Apr, 2016 1 commit
    • ssanfilippo's avatar
      [Interpreter] Add Ignition profile visualization tool. · 8b5d4c74
      ssanfilippo authored
      A new script is introduced, linux_perf_report.py, which reads Linux perf
      data collected when running with FLAG_perf_basic_prof enabled and
      produces an input file for flamegraph.pl, or a report of the hottest
      bytecode handlers.
      
      The bottom blocks of the produced flamegraph are bytecode handlers.
      Special bottom blocks exist as well for compile routines, time spent
      outside the interpreter and interpreter entry trampolines.
      
      Because various Stubs and other pieces of JITted code do not maintain the
      frame pointer, some sampled callchains might be incomplete even if V8 is
      compiled with no_omit_framepointer=on. The script is able to detect the
      most common anomaly where an entry trampoline appears in a chain, but not
      on top, meaning that the frame of another bytecode handler is hidden. In
      this case, the sample will be moved to a [misattributed] group to avoid
      skewing the profile of unrelated handlers.
      
      Misattributed samples and compilation routines are hidden by default.
      
      BUG=v8:4899
      LOG=N
      
      Review URL: https://codereview.chromium.org/1783503002
      
      Cr-Commit-Position: refs/heads/master@{#35574}
      8b5d4c74