1. 15 Apr, 2010 1 commit
  2. 14 Apr, 2010 1 commit
  3. 12 Apr, 2010 1 commit
  4. 08 Apr, 2010 1 commit
  5. 07 Apr, 2010 1 commit
  6. 06 Apr, 2010 1 commit
  7. 01 Mar, 2010 1 commit
  8. 18 Feb, 2010 1 commit
  9. 17 Feb, 2010 1 commit
  10. 04 Feb, 2010 1 commit
  11. 21 Jan, 2010 1 commit
    • mikhail.naganov@gmail.com's avatar
      Fix issue 553: function frame is skipped in profile when compare stub is called. · 999e3fca
      mikhail.naganov@gmail.com authored
      The problem appeared due to a fact that stubs doesn't create a stack
      frame, reusing the stack frame of the caller function. When building
      stack traces, the current function is retrieved from PC, and its
      callees are retrieved by traversing the stack backwards. Thus, for
      stubs, the stub itself was discovered via PC, and then stub's caller's
      caller was retrieved from stack.
      
      To fix this problem, a pointer to JSFunction object is now captured
      from the topmost stack frame, and is saved into stack trace log
      record. Then a simple heuristics is applied whether a referred
      function should be added to decoded stack, or not, to avoid reporting
      the same function twice (from PC and from the pointer.)
      
      BUG=553
      TEST=added to mjsunit/tools/tickprocessor
      
      Review URL: http://codereview.chromium.org/546089
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3673 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      999e3fca
  12. 18 Jan, 2010 1 commit
    • mikhail.naganov@gmail.com's avatar
      Fix issue 571: display descriptive names for code objects from snapshot. · 37d39724
      mikhail.naganov@gmail.com authored
      As this is only needed for internal profiling (not for DevTools),
      the following approach had been chosen:
      
       - during snapshot creation, positions of serialized objects inside
         a snapshot are logged;
      
       - then during V8 initialization, positions of deserealized objects
         are logged;
      
       - those positions are used for retrieving code objects names from
         snapshot creation log, which needs to be supplied to tick processor
         script.
      
      Positions logging is controlled with the new flag: --log_snapshot_positions.
      This flag is turned off by default, and this adds no startup penalty.
      
      To plug this fix to Golem, the following actions are needed:
      
       - logs created using 'mksnapshot' need to be stored along with VM images;
      
       - tick processor script needs to be run with '--snapshot-log=...' cmdline
         argument.
      
      BUG=571
      
      Review URL: http://codereview.chromium.org/551062
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3635 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      37d39724
  13. 25 Nov, 2009 1 commit
  14. 23 Nov, 2009 2 commits
  15. 20 Nov, 2009 1 commit
  16. 11 Nov, 2009 1 commit
  17. 15 Oct, 2009 1 commit
  18. 18 Sep, 2009 1 commit
  19. 16 Sep, 2009 1 commit
    • mikhail.naganov@gmail.com's avatar
      Add initial version of retainers heap profile. · abc0bd46
      mikhail.naganov@gmail.com authored
      The profile is taken together with constructors profile. In theory, it
      should represent a complete heap graph. However, this takes a lot of memory,
      so it is reduced to a more compact, but still useful form. Namely:
      
       - objects are aggregated by their constructors, except for Array and Object
         instances, that are too hetereogeneous;
      
       - for Arrays and Objects, initially every instance is concerned, but then
         they are grouped together based on their retainer graph paths similarity (e.g.
         if two objects has the same retainer, they are considered equal);
      
      Review URL: http://codereview.chromium.org/200132
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2903 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      abc0bd46
  20. 04 Aug, 2009 1 commit
  21. 29 Jul, 2009 1 commit
  22. 20 Jul, 2009 1 commit
  23. 24 Jun, 2009 1 commit
  24. 16 Jun, 2009 1 commit
  25. 15 Jun, 2009 1 commit
    • mikhail.naganov@gmail.com's avatar
      Involve more log compression techniques. · 3a3a6924
      mikhail.naganov@gmail.com authored
      Code addresses are now written as an offset from the previous address for ticks, code move and delete events. Employed backreference and RLE compression for code move and delete events. This gives additional 30% log size reduction for benchmarks run w/o snapshot.
      
      Overall compression results (compared with the revision of V8 having no compression):
       - V8: 70% size reduction for benchmarks run w/o snapshot (for reference, gzip gives 87%)
       - Chromium: 65% size reduction for public html version of benchmarks (v4) (for reference, gzip gives 90%)
      
      The one obvious opportunity for improving compression results in Chromium is to compress URLs of scripts.
      
      Review URL: http://codereview.chromium.org/125114
      
      
      git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2162 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
      3a3a6924
  26. 11 Jun, 2009 1 commit
  27. 08 Jun, 2009 1 commit
  28. 02 Jun, 2009 1 commit
  29. 29 May, 2009 1 commit
  30. 28 May, 2009 1 commit
  31. 25 May, 2009 3 commits
  32. 20 May, 2009 1 commit
  33. 07 May, 2009 1 commit
  34. 05 May, 2009 1 commit
  35. 16 Apr, 2009 1 commit
  36. 31 Mar, 2009 1 commit
  37. 27 Mar, 2009 1 commit