WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
103765
run-perf-tests --profile should use iprofiler instead of instruments on Mac
https://bugs.webkit.org/show_bug.cgi?id=103765
Summary
run-perf-tests --profile should use iprofiler instead of instruments on Mac
Eric Seidel (no email)
Reported
2012-11-30 12:56:08 PST
run-perf-tests --profile should use iprofile instead of instruments on Mac
Attachments
Patch
(3.65 KB, patch)
2012-11-30 13:00 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Made IProfiler.profile_after_exit wait for iprofiler to complete before continuing
(4.26 KB, patch)
2012-11-30 13:23 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Patch for landing
(4.27 KB, patch)
2012-11-30 14:05 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Fix test-webkitpy
(1.89 KB, patch)
2012-12-02 12:23 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Patch for landing
(1.89 KB, patch)
2012-12-02 12:26 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Show Obsolete
(4)
View All
Add attachment
proposed patch, testcase, etc.
Eric Seidel (no email)
Comment 1
2012-11-30 13:00:10 PST
Created
attachment 177015
[details]
Patch
Eric Seidel (no email)
Comment 2
2012-11-30 13:03:10 PST
CCing folks who likely have opinions about Mac profiling tools. I will caution all that --profile is rather new and not the perfect experience on Mac. "iprofiler" runs asynchronously from the tests, does its own printing to stderr, and doesn't provide us a way to dump any sort of perf summary from the commandline. These combine to make it slightly at-odds with the --profile design (which was originally written for linux-command-line-profilers). In any case, I think --profile will grow to be more useful, and with some help will work cleaner on Mac than it does.
Eric Seidel (no email)
Comment 3
2012-11-30 13:03:53 PST
Forgot to CC folks who have reviewed past --profile patches, sorry.
Eric Seidel (no email)
Comment 4
2012-11-30 13:04:55 PST
One final note: As I alluded to in the ChangeLog, this is not a strict improvement from /usr/bin/instruments, but I figure that since /usr/bin/instruments seems "deprecated" it's best to move to the newer tool and iterate from there.
Eric Seidel (no email)
Comment 5
2012-11-30 13:23:49 PST
Created
attachment 177018
[details]
Made IProfiler.profile_after_exit wait for iprofiler to complete before continuing
Ryosuke Niwa
Comment 6
2012-11-30 13:33:05 PST
Comment on
attachment 177018
[details]
Made IProfiler.profile_after_exit wait for iprofiler to complete before continuing rs=me.
Adam Barth
Comment 7
2012-11-30 13:55:26 PST
Comment on
attachment 177018
[details]
Made IProfiler.profile_after_exit wait for iprofiler to complete before continuing View in context:
https://bugs.webkit.org/attachment.cgi?id=177018&action=review
> Tools/Scripts/webkitpy/common/system/profiler.py:101 > + # FIXME: Consider capturing instead of letting instruments spam to stderr directly. > + self._profiler_process = self._host.executive.popen(cmd)
I guess I can try it, but what does it spam to stderr? Capturing the output and post-processing it like we do for pprof sounds like it might be a good next step.
Eric Seidel (no email)
Comment 8
2012-11-30 14:01:17 PST
Comment on
attachment 177018
[details]
Made IProfiler.profile_after_exit wait for iprofiler to complete before continuing View in context:
https://bugs.webkit.org/attachment.cgi?id=177018&action=review
>> Tools/Scripts/webkitpy/common/system/profiler.py:101 >> + self._profiler_process = self._host.executive.popen(cmd) > > I guess I can try it, but what does it spam to stderr? Capturing the output and post-processing it like we do for pprof sounds like it might be a good next step.
iprofiler: Profiling process 7271 (DumpRenderTree) for 10 seconds iprofiler: Profiling completed... iprofiler: Session saved at /Users/eseidel/Projects/WebKit/WebKitBuild/Release/layout-test-results//Users/eseidel/Projects/WebKit/WebKitBuild/Release/layout-test-results/test.dtps The output is really nice. :) But since we don't control it is makes some things more complicated (like changing the name of the to-save-test-file-after Profiler initialization -- which I want to do so I can save these files at test/file/path.trace instead of just test.trace). One complexity in trying to capture the output is that iprofiler will prompt the user for their password if necessary. We'd have to make sure to route input to the iprofiler process as well.
Eric Seidel (no email)
Comment 9
2012-11-30 14:02:35 PST
Comment on
attachment 177018
[details]
Made IProfiler.profile_after_exit wait for iprofiler to complete before continuing I now realize I think its splitting out the profile in the wrong place. Will upload a fix.
Eric Seidel (no email)
Comment 10
2012-11-30 14:05:13 PST
Created
attachment 177022
[details]
Patch for landing
Eric Seidel (no email)
Comment 11
2012-11-30 14:05:48 PST
Yup. Missed a fs.basename() call. Fixed.
WebKit Review Bot
Comment 12
2012-12-02 03:01:05 PST
Comment on
attachment 177022
[details]
Patch for landing Clearing flags on attachment: 177022 Committed
r136327
: <
http://trac.webkit.org/changeset/136327
>
WebKit Review Bot
Comment 13
2012-12-02 03:01:10 PST
All reviewed patches have been landed. Closing bug.
Glenn Adams
Comment 14
2012-12-02 11:35:56 PST
revision
http://trac.webkit.org/changeset/136327
broke test-webkitpy (on mac-mountainlion): sn-ga-02:webkitsvn glenn$ Tools/Scripts/test-webkitpy Suppressing most webkitpy logging while running unit tests. Skipping tests in the following modules or packages because they are really, really, slow: webkitpy.common.checkout.scm.scm_unittest (
https://bugs.webkit.org/show_bug.cgi?id=31818
; use --all to include) Checking imports ...Failed to import webkitpy.common.system.profiler_unittest: Traceback (most recent call last): File "/Users/glenn/work/webkitsvn/Tools/Scripts/webkitpy/test/main.py", line 176, in _check_imports __import__(name) File "/Users/glenn/work/webkitsvn/Tools/Scripts/webkitpy/common/system/profiler_unittest.py", line 33, in <module> from .profiler import ProfilerFactory, Instruments, GooglePProf ImportError: cannot import name Instruments
Eric Seidel (no email)
Comment 15
2012-12-02 12:19:54 PST
Sorry. Easy fix. Will fix shortly.
Eric Seidel (no email)
Comment 16
2012-12-02 12:23:50 PST
Reopening to attach new patch.
Eric Seidel (no email)
Comment 17
2012-12-02 12:23:52 PST
Created
attachment 177144
[details]
Fix test-webkitpy
Eric Seidel (no email)
Comment 18
2012-12-02 12:24:26 PST
Comment on
attachment 177144
[details]
Fix test-webkitpy Sorry. the Commit-queue doesn't run test-webkitpy at the moment. I think Dirk said he's working on fixing that.
WebKit Review Bot
Comment 19
2012-12-02 12:25:50 PST
Comment on
attachment 177144
[details]
Fix test-webkitpy Rejecting
attachment 177144
[details]
from commit-queue. Failed to run "['/mnt/git/webkit-commit-queue/Tools/Scripts/webkit-patch', '--status-host=queues.webkit.org', '-..." exit_code: 1 /mnt/git/webkit-commit-queue/Tools/ChangeLog neither lists a valid reviewer nor contains the string "Unreviewed" or "Rubber stamp" (case insensitive). Full output:
http://queues.webkit.org/results/15120063
Eric Seidel (no email)
Comment 20
2012-12-02 12:26:25 PST
Created
attachment 177146
[details]
Patch for landing
Adam Barth
Comment 21
2012-12-02 12:26:44 PST
Comment on
attachment 177144
[details]
Fix test-webkitpy View in context:
https://bugs.webkit.org/attachment.cgi?id=177144&action=review
> Tools/ChangeLog:6 > + Unreviwed. Updating the unittests after my previous change.
Unreviwed -> Unreviewed.
WebKit Review Bot
Comment 22
2012-12-02 12:49:02 PST
Comment on
attachment 177146
[details]
Patch for landing Clearing flags on attachment: 177146 Committed
r136351
: <
http://trac.webkit.org/changeset/136351
>
WebKit Review Bot
Comment 23
2012-12-02 12:49:06 PST
All reviewed patches have been landed. Closing bug.
Glenn Adams
Comment 24
2012-12-02 12:51:40 PST
thanks, that fixed it (
comment #14
)
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