I just verified a customer reported bug - a slowdown in the new bookmark 
manager when deleting folders containing many (~2,500) bookmarks. Deleting 
them takes over a minute. Profiling with ETW (Event Tracing for Windows -- 
this is on a Windows machine) shows that 98.6% of the CPU time (it is CPU 
bound) is 
inside chrome_child.dll!v8::internal::Isolate::get_stack_trace_line_fun.

With the old bookmark manager the deletion is virtually instantaneous. I 
have also seen get_stack_trace_line_fun consuming a huge portion of CPU 
time on slashdot.org. This feels like it might be a serious regression in 
JS performance in multiple scenarios.

I've filed a bug for 
this: https://code.google.com/p/chromium/issues/detail?id=474276

My bookmarks tests are on 32-bit canary. The slashdot tests were on stable 
(41.0.2272.101).

Here is a partial call stack. After get_stack_trace_line_fun it goes into 
unresolved addresses (generated code presumably) before popping out 
in chrome_child.dll!v8::internal::Runtime_KeyedGetProperty.

 |    |    |    chrome_child.dll!blink::Node::dispatchMouseEvent |    | 
   |    chrome_child.dll!blink::EventDispatcher::dispatchEvent |    |    | 
   chrome_child.dll!blink::MouseEventDispatchMediator::dispatchEvent |    | 
   |    chrome_child.dll!blink::EventDispatcher::dispatchEventAtTarget | 
   |    |    chrome_child.dll!blink::NodeEventContext::handleLocalEvents | 
   |    |    chrome_child.dll!blink::Node::handleLocalEvents |    |    | 
   chrome_child.dll!blink::EventTarget::fireEventListeners |    |    | 
   chrome_child.dll!blink::EventTarget::fireEventListeners |    |    | 
   chrome_child.dll!blink::V8AbstractEventListener::handleEvent |    |    | 
   chrome_child.dll!blink::V8AbstractEventListener::handleEvent |    |    | 
   chrome_child.dll!blink::V8AbstractEventListener::invokeEventHandler | 
   |    |    chrome_child.dll!blink::V8EventListener::callListenerFunction | 
   |    |    chrome_child.dll!blink::ScriptController::callFunction |    | 
   |    chrome_child.dll!blink::ScriptController::callFunction |    |    | 
   chrome_child.dll!blink::V8ScriptRunner::callFunction |    |    | 
   chrome_child.dll!v8::Function::Call |    |    | 
   chrome_child.dll!v8::Function::Call |    |    | 
   chrome_child.dll!v8::internal::Execution::Call |    |    | 
   chrome_child.dll!v8::internal::Isolate::get_stack_trace_line_fun

-- 
-- 
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev
--- 
You received this message because you are subscribed to the Google Groups 
"v8-dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to