Bug 65797 - nrwt takes a long time to start on Mac
Summary: nrwt takes a long time to start on Mac
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Tools / Tests (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Nobody
URL:
Keywords:
Depends on:
Blocks: 64491 65268
  Show dependency treegraph
 
Reported: 2011-08-05 16:49 PDT by Ryosuke Niwa
Modified: 2012-06-08 17:02 PDT (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Ryosuke Niwa 2011-08-05 16:49:28 PDT
Starting new-run-webkit-tests take a really long time even if it was running one child process.  Compare the following two commands:
Tools/Scripts/old-run-webkit-tests --debug LayoutTests/editing/undo
Tools/Scripts/new-run-webkit-tests --debug LayoutTests/editing/undo

The latter spends as much as time as the former just to spin up DRT.
Comment 1 Adam Barth 2011-08-05 17:02:59 PDT
Yeah, this is an important area for us to improve.  For example, we always spin up the HTTP and WebSocket servers, even when they're not needed.
Comment 2 Eric Seidel (no email) 2011-08-08 10:08:05 PDT
Agreed.  Thank you for the report.  I'm focusing on getting the rest of the bots over to NRWT, but this is very high on my list once that's done.
Comment 3 Dirk Pranke 2011-08-08 13:15:55 PDT
(In reply to comment #1)
> Yeah, this is an important area for us to improve.  For example, we always spin up the HTTP and WebSocket servers, even when they're not needed.

Really? That didn't used to be the case. (I believe we now start the WebSocket server if we only need the HTTP server -- which is a bug -- but we shouldn't start either if we don't need either).
Comment 4 Adam Barth 2011-08-08 13:20:36 PDT
> Really?

I think I was confused.  Pls ignore me.  :)
Comment 5 Eric Seidel (no email) 2011-10-12 14:38:50 PDT
I recently profiled NRWT.  We spend all our time in the worker.  I don't yet have a good way to profile the worker processes, but will add one.  See also bug 65268.
Comment 6 Dirk Pranke 2011-10-12 14:52:06 PDT
You can start by running with --worker-model=inline. I would be surprised if there was any significant performance difference between that and --worker-model=processes (for one child, obviously), but at least with the former you can profile the whole thing.
Comment 7 Dirk Pranke 2012-06-08 17:02:31 PDT
I think this is fixed now. I don't have a debug build handy, but using a release build and running your same test (LayoutTests/editing/undo), NRWT is faster than ORWT. (I was testing repeated runs of both tools, so everything in the filesystem was cached and total time was about 4.5 seconds to run all the tests).

Please re-open if you see something different.