Title: [118606] trunk/Source/WebCore
Revision
118606
Author
[email protected]
Date
2012-05-25 23:39:29 -0700 (Fri, 25 May 2012)

Log Message

[chromium] Instrument V8 GC with TraceEvent
https://bugs.webkit.org/show_bug.cgi?id=87530

Reviewed by Kentaro Hara.

We sometimes get performance issues where performance stalls can
be attributed to badly timed GC operations, especially ones that
happen just before a frame running. This adds tracing calls around
GC so that we can better understand these kinds of hangs.

* bindings/v8/V8GCController.cpp:
(WebCore::V8GCController::gcPrologue):
(WebCore::V8GCController::gcEpilogue):

Modified Paths

Diff

Modified: trunk/Source/WebCore/ChangeLog (118605 => 118606)


--- trunk/Source/WebCore/ChangeLog	2012-05-26 06:09:17 UTC (rev 118605)
+++ trunk/Source/WebCore/ChangeLog	2012-05-26 06:39:29 UTC (rev 118606)
@@ -1,3 +1,19 @@
+2012-05-25  Nat Duca  <[email protected]>
+
+        [chromium] Instrument V8 GC with TraceEvent
+        https://bugs.webkit.org/show_bug.cgi?id=87530
+
+        Reviewed by Kentaro Hara.
+
+        We sometimes get performance issues where performance stalls can
+        be attributed to badly timed GC operations, especially ones that
+        happen just before a frame running. This adds tracing calls around
+        GC so that we can better understand these kinds of hangs.
+
+        * bindings/v8/V8GCController.cpp:
+        (WebCore::V8GCController::gcPrologue):
+        (WebCore::V8GCController::gcEpilogue):
+
 2012-05-25  Garrett Casto  <[email protected]>
 
         Allow WebTextFieldDecoratorClient to see applied decorations.

Modified: trunk/Source/WebCore/bindings/v8/V8GCController.cpp (118605 => 118606)


--- trunk/Source/WebCore/bindings/v8/V8GCController.cpp	2012-05-26 06:09:17 UTC (rev 118605)
+++ trunk/Source/WebCore/bindings/v8/V8GCController.cpp	2012-05-26 06:39:29 UTC (rev 118606)
@@ -59,6 +59,10 @@
 #include <wtf/StdLibExtras.h>
 #include <wtf/UnusedParam.h>
 
+#if PLATFORM(CHROMIUM)
+#include "TraceEvent.h"
+#endif
+
 namespace WebCore {
 
 #ifndef NDEBUG
@@ -389,6 +393,10 @@
 {
     v8::HandleScope scope;
 
+#if PLATFORM(CHROMIUM)
+    TRACE_EVENT_BEGIN0("v8", "GC");
+#endif
+
 #ifndef NDEBUG
     DOMObjectVisitor domObjectVisitor;
     visitDOMObjects(&domObjectVisitor);
@@ -509,6 +517,10 @@
 
     enumerateGlobalHandles();
 #endif
+
+#if PLATFORM(CHROMIUM)
+    TRACE_EVENT_END0("v8", "GC");
+#endif
 }
 
 void V8GCController::checkMemoryUsage()
_______________________________________________
webkit-changes mailing list
[email protected]
http://lists.webkit.org/mailman/listinfo.cgi/webkit-changes

Reply via email to