On Sat, Apr 11, 2015 at 2:25 AM, <[email protected]> wrote: > > 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
Is that perhaps a case of tracing gone bad? I believe only v8::Message::PrintCurrentStackTrace() (indirectly) calls 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.
