Bug 104971

Summary: Use 'perf' to profile on linux instead of google-pprof by default
Product: WebKit Reporter: Eric Seidel (no email) <eric>
Component: New BugsAssignee: Eric Seidel (no email) <eric>
Status: RESOLVED FIXED    
Severity: Normal CC: abarth, dpranke, pdr, tony, webkit.review.bot, willchan
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch none

Eric Seidel (no email)
Reported 2012-12-13 16:02:42 PST
Use 'perf' to profile on linux instead of google-pprof by default
Attachments
Patch (6.57 KB, patch)
2012-12-13 16:07 PST, Eric Seidel (no email)
no flags
Patch (6.50 KB, patch)
2012-12-13 18:44 PST, Eric Seidel (no email)
no flags
Eric Seidel (no email)
Comment 1 2012-12-13 16:07:52 PST
Dirk Pranke
Comment 2 2012-12-13 16:41:05 PST
Comment on attachment 179364 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=179364&action=review > Tools/Scripts/webkitpy/common/system/executive.py:313 > + while seconds_left > 0: this could be just 'while seconds_left > 0 and self.check_running_pid(pid):' > Tools/Scripts/webkitpy/common/system/profiler.py:104 > + self._target_pid = None Given that you're passing the pids to the executive, this isn't a target_pid, this is either a host_pid or just a pid (I'd use just a pid)
Eric Seidel (no email)
Comment 3 2012-12-13 16:43:40 PST
Comment on attachment 179364 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=179364&action=review >> Tools/Scripts/webkitpy/common/system/executive.py:313 >> + while seconds_left > 0: > > this could be just 'while seconds_left > 0 and self.check_running_pid(pid):' Yes, sorry, this was more complicated originally. Will fix. >> Tools/Scripts/webkitpy/common/system/profiler.py:104 >> + self._target_pid = None > > Given that you're passing the pids to the executive, this isn't a target_pid, this is either a host_pid or just a pid (I'd use just a pid) Oh, I was trying to differentiate it from the perf pid. I'm open to other names. I wasn't trying to make the host/target distinction, but I can see how that's confusing here. Suggestions?
Eric Seidel (no email)
Comment 4 2012-12-13 18:43:44 PST
updated. Works: %run-perf-tests --chromium --profile [/src/WebKit] Running 113 tests Running Animation/balls.html (1 of 113) WARNING: Kernel address maps (/proc/{kallsyms,modules}) are restricted, check /proc/sys/kernel/kptr_restrict. Samples in kernel functions may not be resolved if a suitable vmlinux file is not found in the buildid cache or in the vmlinux path. Samples in kernel modules won't be resolved at all. If some relocation was applied (e.g. kexec) symbols may be misresolved even with a suitable vmlinux or kallsyms file. Finished: 3.059183 s [ perf record: Woken up 3 times to write data ] [ perf record: Captured and wrote 0.661 MB /src/WebKit/Source/WebKit/chromium/webkit/Release/layout-test-results/test-41.data (~28895 samples) ] perf report -g none -i /src/WebKit/Source/WebKit/chromium/webkit/Release/layout-test-results/test-41.data 5.04% DumpRenderTree perf-6532.map [.] 0x29bc5a44b1e7 2.19% DumpRenderTree DumpRenderTree [.] v8::internal::FastDtoa(double, v8::internal::FastDtoaMode, int, v8::internal::Vector<char>, int*, int*) 2.18% DumpRenderTree DumpRenderTree [.] WebCore::Length::initFromLength(WebCore::Length const&) 1.95% DumpRenderTree libfreetype.so.6.8.0 [.] 0x248db 1.64% DumpRenderTree DumpRenderTree [.] tc_free 1.64% DumpRenderTree DumpRenderTree [.] WebCore::RenderStyle::diff(WebCore::RenderStyle const*, unsigned int&) const 1.47% DumpRenderTree [kernel.kallsyms] [k] 0xffffffff8103b51a 1.46% DumpRenderTree DumpRenderTree [.] tc_malloc 1.28% DumpRenderTree DumpRenderTree [.] v8::internal::JSObject::SetPropertyWithInterceptor(v8::internal::String*, v8::internal::Object*, PropertyAttributes, v8::internal::StrictModeFlag) 1.26% DumpRenderTree DumpRenderTree [.] WebCore::RenderStyle::create() To view the full profile, run: perf report -i /src/WebKit/Source/WebKit/chromium/webkit/Release/layout-test-results/test-41.data
Eric Seidel (no email)
Comment 5 2012-12-13 18:44:20 PST
WebKit Review Bot
Comment 6 2012-12-13 20:31:22 PST
Comment on attachment 179399 [details] Patch Clearing flags on attachment: 179399 Committed r137706: <http://trac.webkit.org/changeset/137706>
WebKit Review Bot
Comment 7 2012-12-13 20:31:25 PST
All reviewed patches have been landed. Closing bug.
Eric Seidel (no email)
Comment 8 2012-12-13 20:54:47 PST
This caused a test-webkitpy failure, but I fixed in http://trac.webkit.org/changeset/137711
Eric Seidel (no email)
Comment 9 2012-12-17 16:32:17 PST
*** Bug 104609 has been marked as a duplicate of this bug. ***
Note You need to log in before you can comment on or make changes to this bug.