WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
98203
Force GC between PageLoad tests
https://bugs.webkit.org/show_bug.cgi?id=98203
Summary
Force GC between PageLoad tests
Philip Rogers
Reported
2012-10-02 14:39:12 PDT
Our pageload tests are multi-modal, typically with a small cluster at 1-2x the median.
Attachments
Force GC between PageLoad tests.
(3.31 KB, patch)
2012-10-02 14:48 PDT
,
Philip Rogers
rniwa
: review+
Details
Formatted Diff
Diff
Update per reviewer comments
(3.22 KB, patch)
2012-10-02 15:47 PDT
,
Philip Rogers
eric
: review-
Details
Formatted Diff
Diff
Update per reviewer comments
(10.62 KB, patch)
2012-10-03 22:30 PDT
,
Philip Rogers
rniwa
: review+
Details
Formatted Diff
Diff
Updated to use filesystem.join for joining paths
(10.69 KB, patch)
2012-10-03 22:48 PDT
,
Philip Rogers
no flags
Details
Formatted Diff
Diff
Remove unnecessary perf_tests_dir definition.
(10.62 KB, patch)
2012-10-03 23:05 PDT
,
Philip Rogers
no flags
Details
Formatted Diff
Diff
Show Obsolete
(4)
View All
Add attachment
proposed patch, testcase, etc.
Philip Rogers
Comment 1
2012-10-02 14:48:58 PDT
Created
attachment 166755
[details]
Force GC between PageLoad tests.
Philip Rogers
Comment 2
2012-10-02 14:51:11 PDT
You can see an example of this multi-modal distribution here:
http://webkit-perf.appspot.com/graph.html#tests=[[1610801,2001,7288486],[1610801,2001,32196]]&sel=1349148472736.8853,1349214037661,0,422.22222222222223&displayrange=90&datatype=running
The light blue area represents the "spikes" once every ~10 tests where DRT ran a GC.
Ryosuke Niwa
Comment 3
2012-10-02 14:57:58 PDT
Comment on
attachment 166755
[details]
Force GC between PageLoad tests. View in context:
https://bugs.webkit.org/attachment.cgi?id=166755&action=review
> Tools/Scripts/webkitpy/performance_tests/perftest.py:210 > + driver.run_test(DriverInput("resources/forceGC.html", time_out_ms, image_hash=None, should_run_pixel_test=should_run_pixel_test), stop_when_done=False)
You can just pass False to should_run_pixel_test.
> Tools/Scripts/webkitpy/performance_tests/perftest.py:211 > + return driver.run_test(DriverInput(path_or_url, time_out_ms, image_hash=None, should_run_pixel_test=should_run_pixel_test), stop_when_done=False)
Maybe we should call super(ReplayPerfTest, self).run_single instead?
> LayoutTests/ChangeLog:16 > + * resources/forceGC.html: Added.
How about force-gc.html? or ForceGC.html. I don't think we use camelCase for file names.
Philip Rogers
Comment 4
2012-10-02 15:47:13 PDT
Created
attachment 166766
[details]
Update per reviewer comments
Eric Seidel (no email)
Comment 5
2012-10-03 15:59:40 PDT
Comment on
attachment 166766
[details]
Update per reviewer comments Seems odd that this is in LayoutTests instead of PerformanceTests...
Ryosuke Niwa
Comment 6
2012-10-03 16:38:53 PDT
Comment on
attachment 166766
[details]
Update per reviewer comments View in context:
https://bugs.webkit.org/attachment.cgi?id=166766&action=review
> Tools/Scripts/webkitpy/performance_tests/perftest.py:210 > + super(PageLoadingPerfTest, self).run_single(driver, "resources/force-gc.html", time_out_ms, False)
I'm surprised that this works given it's located in LayoutTests. You probably need to give a full path. See the code in perftestrunner.py
> LayoutTests/ChangeLog:16 > + * resources/forceGC.html: Added.
Oh yeah, this should be in PerformanceTests/resource.
Philip Rogers
Comment 7
2012-10-03 22:30:46 PDT
Created
attachment 167032
[details]
Update per reviewer comments
Ryosuke Niwa
Comment 8
2012-10-03 22:33:30 PDT
Comment on
attachment 167032
[details]
Update per reviewer comments View in context:
https://bugs.webkit.org/attachment.cgi?id=167032&action=review
> Tools/Scripts/webkitpy/performance_tests/perftest.py:207 > + self.force_gc_file = port.perf_tests_dir() + "/resources/force-gc.html"
There's port.host.filesystem.join. Use that instead of +.
Philip Rogers
Comment 9
2012-10-03 22:48:13 PDT
Created
attachment 167034
[details]
Updated to use filesystem.join for joining paths
Philip Rogers
Comment 10
2012-10-03 22:53:10 PDT
Thank you both for the reviews. (In reply to
comment #5
)
> (From update of
attachment 166766
[details]
) > Seems odd that this is in LayoutTests instead of PerformanceTests...
This worked since DRT pulls from LayoutTests, but it was a sloppy approach. Moved to PerformanceTests. (In reply to
comment #6
)
> (From update of
attachment 166766
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=166766&action=review
> > > Tools/Scripts/webkitpy/performance_tests/perftest.py:210 > > + super(PageLoadingPerfTest, self).run_single(driver, "resources/force-gc.html", time_out_ms, False) > > I'm surprised that this works given it's located in LayoutTests. > You probably need to give a full path. See the code in perftestrunner.py
Great catch. This probably would have broken on other ports. Fixed! (In reply to
comment #8
)
> (From update of
attachment 167032
[details]
) > View in context:
https://bugs.webkit.org/attachment.cgi?id=167032&action=review
> > > Tools/Scripts/webkitpy/performance_tests/perftest.py:207 > > + self.force_gc_file = port.perf_tests_dir() + "/resources/force-gc.html" > > There's port.host.filesystem.join. Use that instead of +.
Done.
Philip Rogers
Comment 11
2012-10-03 23:05:34 PDT
Created
attachment 167037
[details]
Remove unnecessary perf_tests_dir definition.
WebKit Review Bot
Comment 12
2012-10-03 23:29:34 PDT
Comment on
attachment 167037
[details]
Remove unnecessary perf_tests_dir definition. Clearing flags on attachment: 167037 Committed
r130366
: <
http://trac.webkit.org/changeset/130366
>
WebKit Review Bot
Comment 13
2012-10-03 23:29:38 PDT
All reviewed patches have been landed. Closing bug.
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