- 19 Jan, 2011 3 commits
-
-
mikhail.naganov@gmail.com authored
resource from a memory mapped file for creating strings. Patch by Mark Lam from Hewlett-Packard Development Company, LP Review URL: http://codereview.chromium.org/6240002/ Relanded with Windows compilation issues fixed. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6401 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Windows compilation is broken. Will fix and reland later. This reverts commit fe13ffaa6d0c3435bfe1ae930813e456650ec980. git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6389 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
resource from a memory mapped file for creating strings. Patch by Mark Lam from Hewlett-Packard Development Company, LP Review URL: http://codereview.chromium.org/6240002/ git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6386 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 04 Jan, 2011 2 commits
-
-
sgjesse@chromium.org authored
Review URL: http://codereview.chromium.org/6046010 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6157 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
sgjesse@chromium.org authored
the only platform that it works on is linux (using the prctl API to set the names of the threads). Other platforms are setup to build properly if the flag is set, but their thread names are not currently set. Patch by Mark Lam from Hewlett-Packard Development Company, LP Review URL: http://codereview.chromium.org/6070009 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6141 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 20 Dec, 2010 1 commit
-
-
sgjesse@chromium.org authored
objectprint=on (defaults to off) option (which defines OBJECT_PRINT). 2. Added the ability to print objects to a specified file instead of just stdout. 3. Added a use_verbose_printer flag (true by default) to allow some object printouts to be less verbose when the flag is false. 4. Fixed a bug in VSNPrintF() where it can potentially write into an empty char vector. Patch by Mark Lam from Hewlett-Packard Development Company, LP Review URL: http://codereview.chromium.org/5998001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6080 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 15 Dec, 2010 1 commit
-
-
erik.corry@gmail.com authored
the distance between bleeding edge and the gc branch minimal. Review URL: http://codereview.chromium.org/5788002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@6016 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Dec, 2010 3 commits
-
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5922 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5921 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
kasperl@chromium.org authored
git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5920 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Nov, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
Instead of installing signal handler, count samples taken. Review URL: http://codereview.chromium.org/5325003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5891 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Oct, 2010 1 commit
-
-
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
-
- 18 Oct, 2010 1 commit
-
-
kasperl@chromium.org authored
sure to suspend the thread (if necessary) on mac/win32 before reading the VM state. Avoid dealing with signals delivered to non-VM threads on linux no matter if we're profiling or not. Review URL: http://codereview.chromium.org/3845006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5641 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 02 Sep, 2010 1 commit
-
-
erik.corry@gmail.com authored
Clang compatibility changes. This is a commit of http://codereview.chromium.org/3364002 for coldredlemur git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5402 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 16 Aug, 2010 1 commit
-
-
vegorov@chromium.org authored
This allows to remove special handling of GCC 4.4 (disabling of Value Range Propagation) from SConstruct. BUG=http://code.google.com/p/v8/issues/detail?id=830 Review URL: http://codereview.chromium.org/3135022 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5278 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 13 Aug, 2010 1 commit
-
-
antonm@chromium.org authored
That could allow us to understand why commit of from space sometimes fails. Another option would be start a separate structure with OS-related info, but as it's a single field, let's put it into HeapStats, at least for now. Review URL: http://codereview.chromium.org/3118013 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@5261 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 22 May, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
I changed the implementation of a queue between the VM and processor thread to be unbounded and lock-free, using Herb Sutter's example from DDJ article: http://www.ddj.com/high-performance-computing/210604448 This had brought back profiling overhead to a minimum for the page from Chromium's issue 16184. BUG=714 Review URL: http://codereview.chromium.org/2091019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4706 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 May, 2010 1 commit
-
-
erik.corry@gmail.com authored
ry (coldredlemur@gmail.com). See http://codereview.chromium.org/2092007 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4677 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 11 May, 2010 1 commit
-
-
erik.corry@gmail.com authored
Patch from ry. http://codereview.chromium.org/1990010/show git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4638 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 07 Apr, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
In browser (DevTools) mode, only non-native JS code and callbacks are reported. Also, added "(garbage collector)" entry which accumulates samples count in GC state. Trying to display "(compiler)" and "(external)" only brings confusion, because it ends up in displaying scripts code under "(compiler)" node, and DOM event handlers under "(external)" node, which looks weird. Review URL: http://codereview.chromium.org/1523015 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4357 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 06 Apr, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
If 'shell' is compiled with 'cppprofilesprocessor=on' and run with '--prof' flag, top-down and bottom-up call trees are printed on shell exit. Review URL: http://codereview.chromium.org/1582004 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4343 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Mar, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
This allows to unclutter logging-related code. I also fixed compilation issues with 'profilingsupport=off'. Review URL: http://codereview.chromium.org/1317003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4285 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 19 Mar, 2010 1 commit
-
-
mikhail.naganov@gmail.com authored
Review URL: http://codereview.chromium.org/1079006 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4189 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 17 Mar, 2010 3 commits
-
-
mikhail.naganov@gmail.com authored
TBR=sgjesse@chromium.org Review URL: http://codereview.chromium.org/979005 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4164 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
fschneider@chromium.org authored
Review URL: http://codereview.chromium.org/1049003 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4162 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
Circular queues serve as a transport for communicating between VM, stack sampler and analyzer threads. Logging requirements for VM and stack sampler are completely different, that's why I introduced two different versions of CQs. Review URL: http://codereview.chromium.org/1047002 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@4159 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Jan, 2010 1 commit
-
-
ager@chromium.org authored
Patch by Erich Ocean and Ryan Dahl. Review URL: http://codereview.chromium.org/545125 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3688 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 21 Jan, 2010 1 commit
-
-
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
-
- 13 Nov, 2009 1 commit
-
-
erik.corry@gmail.com authored
available. We use this to ensure that snapshots on MacOSX can use SSE2 instructions. Also clean up and assertify the handling of things we can't do when we are generating a snapshot. Fix a bug in the new serialization tests where they activated Snapshot::enable() too late after code had been generated that assumed no snapshots. Review URL: http://codereview.chromium.org/391051 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3301 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 12 Nov, 2009 2 commits
-
-
erik.corry@gmail.com authored
Also move a function into the macro assembler. Fix some *& placement errors that had accumulated. Review URL: http://codereview.chromium.org/385069 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3293 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/348019 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3292 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 23 Oct, 2009 1 commit
-
-
lrn@chromium.org authored
Review URL: http://codereview.chromium.org/303034 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@3116 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 31 Jul, 2009 1 commit
-
-
whesse@chromium.org authored
Review URL: http://codereview.chromium.org/160451 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2601 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 01 Jul, 2009 1 commit
-
-
mikhail.naganov@gmail.com authored
Previous implementation of sampler for OS X was copied from the Linux one. But BSD (OS X) and Linux has a very important difference in signal handling. LinuxThreads doesn't support the notion of process-directed signals. So, the SIGPROF signal was directed to the thread that installed the handler---the V8 thread. But on BSD, signal handling is implemented according to POSIX spec, where process-directed signal is to be handled by an arbitrary selected thread. By a coincidence, in V8's sample shell and in Chromium's test shell, V8's thread was picked almost every time, so sampling seemed working. But not in case of Chromium. So, I've changed the implementation of profiler sampler to use the same scheme as on Windows---a dedicated thread with high priority is used to periodically pause and sample V8's thread. Review URL: http://codereview.chromium.org/147150 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2315 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 Jun, 2009 1 commit
-
-
erik.corry@gmail.com authored
Review URL: http://codereview.chromium.org/149001 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2271 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 24 Jun, 2009 2 commits
-
-
antonm@chromium.org authored
project specific name. Review URL: http://codereview.chromium.org/146096 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2267 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
antonm@chromium.org authored
Review URL: http://codereview.chromium.org/125141 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2263 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 28 May, 2009 1 commit
-
-
mikhail.naganov@gmail.com authored
I suggest that the lack of initialization causes issue 358 to happen. In Profiler::Disengage an empty TickSample is inserted in order to wake up the Profiler thread. Issue reporter claims that crash happens in LogTickEvent function. My guess is that frames_couint receives a wild value. Review URL: http://codereview.chromium.org/113939 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2068 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
- 25 May, 2009 2 commits
-
-
mikhail.naganov@gmail.com authored
This issue was raised by Brett Wilson while reviewing my changelist for readability. Craig Silverstein (one of C++ SG maintainers) confirmed that we should declare one namespace per line. Our way of namespaces closing seems not violating style guides (there is no clear agreement on it), so I left it intact. Review URL: http://codereview.chromium.org/115756 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2038 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-
mikhail.naganov@gmail.com authored
This is intended to be used with Chromium. When in resource-saving mode, profiler doesn't consume any resources (sampler and logging is off) until resumed. Then again, when profiler is paused, sampling and logging are turned off. Tested under Linux and Windows. Also have done preliminary testing with Chromium. Review URL: http://codereview.chromium.org/113762 git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@2036 ce2b1a6d-e550-0410-aec6-3dcde31c8c00
-