1. 20 Jan, 2015 1 commit
    • jkummerow's avatar
      Profiler improvements · feffccca
      jkummerow authored
      (1) --prof-cpp: Collects ticks like --prof, but ignores code creation events to reduce distortion (so all JS ticks will be "unaccounted"). Useful for profiling C++ code.
      (2) --timed-range flag for tick processor: Ignores ticks before the first and after the last call to Date.now(). Useful for focusing on the timed section of a test.
      
      Review URL: https://codereview.chromium.org/802333002
      
      Cr-Commit-Position: refs/heads/master@{#26168}
      feffccca
  2. 04 Aug, 2014 1 commit
  3. 30 Jun, 2014 1 commit
  4. 03 Jun, 2014 1 commit
  5. 06 May, 2014 1 commit
  6. 29 Apr, 2014 1 commit
  7. 25 Nov, 2013 1 commit
    • jarin@chromium.org's avatar
      Support for the Linux 'perf report' and 'perf annotate' tools. · 4e439deb
      jarin@chromium.org authored
      In this change, the support comes in two flavours:
      
      --perf_jit_prof - outputs the files in a new perf format that only works with a
      patched perf tool (patch obtained from Stephane Eranian). Both 'perf report' and
      'perf annotate' are supported (the file format also contains the machine code).
      
      --perf_basic_prof - outputs the files in a format that the existing perf tool
      can consume. Only 'perf report' is supported.
      
      In both cases, we have to disable code compaction because the perf tool does not
      understand code relocation. (We are told that code relocation should be
      supported soon.)
      
      Usage:
      
      perf record -g d8 --perf_jit_prof --no_compact_code_space my.js
      perf report
      
      The change itself is straightforward - we simply listen to code events and
      write an entry to a log file for every new piece of code.
      
      I am not yet sure whether we should keep both versions or just one (and which
      one). My hope is the reviewers can help here.
      
      R=danno@chromium.org
      BUG=
      
      Review URL: https://codereview.chromium.org/70013002
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@18034 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      4e439deb
  8. 29 Aug, 2013 1 commit
  9. 18 Jul, 2013 1 commit
  10. 15 Jul, 2013 1 commit
  11. 24 Jun, 2013 1 commit
  12. 24 Apr, 2013 1 commit
  13. 08 Sep, 2011 1 commit
  14. 05 Aug, 2011 1 commit
  15. 13 Jul, 2011 2 commits
  16. 06 May, 2011 1 commit
  17. 29 Apr, 2011 1 commit
  18. 18 Mar, 2011 3 commits
  19. 07 Dec, 2010 1 commit
  20. 19 Oct, 2010 1 commit
    • vitalyr@chromium.org's avatar
      Support profiling based on linux kernel performance events. · e6b33bd2
      vitalyr@chromium.org authored
      Since 2.6.31 perf_events interface has been available in the
      kernel. There's a nice tool called "perf" (linux-2.6/tools/perf) that
      uses this interface and provides capabilities similar to oprofile. The
      simplest form of its usage is just dumping the raw log (trace) of
      events generated by the kernel. In this patch I'm adding a script
      (tools/ll_prof.py) to build profiles based on perf trace and our code
      log. All the heavy-lifting is done by perf. Compared to oprofile agent
      this approach does not require recompilation and supports code moving
      garbage collections.
      
      Expected usage is documented in the ll_prof's help. Basically one
      should run V8 under perf passing --ll-prof flag and then the produced
      logs can be analyzed by tools/ll_prof.py.
      
      The new --ll-prof flag enables logging of generated code object
      locations and names (like --log-code), and also of their bodies, which
      can be later disassembled and annotated by the script.
      
      Review URL: http://codereview.chromium.org/3831002
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5663 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      e6b33bd2
  21. 30 Sep, 2010 1 commit
  22. 11 Mar, 2010 1 commit
  23. 18 Feb, 2010 1 commit
  24. 11 Nov, 2009 1 commit
  25. 18 Sep, 2009 1 commit
  26. 15 Jun, 2009 2 commits
  27. 11 Jun, 2009 1 commit
  28. 28 May, 2009 2 commits