WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED WONTFIX
76324
[chromium] Add TRACE_EVENT instrumentation to AnimationController timer tick
https://bugs.webkit.org/show_bug.cgi?id=76324
Summary
[chromium] Add TRACE_EVENT instrumentation to AnimationController timer tick
Nat Duca
Reported
2012-01-13 17:20:11 PST
[chromium] Add TRACE_EVENT instrumentation to AnimationController timer tick
Attachments
Patch
(1.82 KB, patch)
2012-01-13 17:20 PST
,
Nat Duca
no flags
Details
Formatted Diff
Diff
Patch
(1.79 KB, patch)
2012-01-13 17:23 PST
,
Nat Duca
no flags
Details
Formatted Diff
Diff
Show Obsolete
(1)
View All
Add attachment
proposed patch, testcase, etc.
Nat Duca
Comment 1
2012-01-13 17:20:26 PST
Created
attachment 122520
[details]
Patch
Nat Duca
Comment 2
2012-01-13 17:23:55 PST
Created
attachment 122523
[details]
Patch
Nat Duca
Comment 3
2012-01-13 17:24:34 PST
I'd like to get animation controller ticks showing up in traces so we can triage when software path animation is biting us.
Hajime Morrita
Comment 4
2012-01-25 18:05:53 PST
Wow, we finally going to have instrumentations in WebKit! It's exciting! I love to see this. 1. How about to make TraceEvent not chrome specific? For other platform, we can just give an inline empty implementation for the tracing function. Minimizing platform ifdefs in WebCore is generally good idea. And this can be used for hooking up other modern profilers like Shark. 2. These instrumentations are always next to InspectorInstrumentation call. THen why not put the instrumentation inside the inspector code? Or maybe we can make generic InstrumentationBackend class which calls both Inspector and the new platform specific code. In my feeling, it would be great if we have a centralized point for the set of instrumentations like dom/InstrumentationBackend.h or something like that. Same comments would be applicable for
Bug 76325
.
Nat Duca
Comment 5
2012-01-26 20:49:03 PST
I totally agree. A lot of these are in fact paired with inspector probes, and it looks so ugly. I'd love to know what other platforms have in terms of instrumentation/tracing APIs. I've heard dtrace has an instrumentation API, but I havent' had a chance to really study it in detail. Do you know anything? Thanks!
Hajime Morrita
Comment 6
2012-01-27 10:28:51 PST
> I'd love to know what other platforms have in terms of instrumentation/tracing APIs. I've heard dtrace has an instrumentation API, but I havent' had a chance to really study it in detail. Do you know anything?
Yeah, Dtrace has tracing API as you mentioned. And actually Mac port is using it in JavaScriptCore. It looks these instrumentations aren't enabled in production build though.
http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/runtime/Tracing.h
http://trac.webkit.org/browser/trunk/Source/JavaScriptCore/runtime/Tracing.d
FYI, here is a generated probe (should be same as TracingDtrace.h:
https://gist.github.com/1690154
According to the tutorial, actual probe code is injected during the build process.
https://wikis.oracle.com/display/DTrace/Statically+Defined+Tracing+for+User+Applications
I think it is possible to do this for WebCore.
Hajime Morrita
Comment 7
2012-01-27 10:31:52 PST
And of course windows has ETW:
http://msdn.microsoft.com/en-us/magazine/cc163437.aspx
I'm not an expert in this area. But I bet our team has some great experts ;-)
Eric Seidel (no email)
Comment 8
2012-02-16 13:20:57 PST
Comment on
attachment 122523
[details]
Patch Nat suggested in person that there was ongoing discussion about whether we wanted to add all these #if CHROMIUM blocks or not, or if there were better (more universal) ways to add these features. Clearing the review bit for now per his request.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug