New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 714503 link

Starred by 2 users

Issue metadata

Status: Fixed
Owner:
Closed: Jun 2017
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: ----
Type: ----



Sign in to add a comment

third_party/WebKit/Tools/Scripts/webkitpy/thirdparty/wpt/wpt/manifest is slow (~50 seconds?)

Project Member Reported by tansell@chromium.org, Apr 24 2017

Issue description

When running Layout tests the following command seems to be run;

/b/s/w/ir/third_party/WebKit/Tools/Scripts/webkitpy/thirdparty/wpt/wpt/manifest --work --tests-root /b/s/w/ir/third_party/WebKit/LayoutTests/external/wpt

This command seems to take roughly ~50 seconds to complete as the log below shows;
-----------------
10:32:46.997 1872 Running command: python /b/s/w/ir/third_party/WebKit/Tools/Scripts/webkitpy/thirdparty/wpt/wpt/manifest --work --tests-root /b/s/w/ir/third_party/WebKit/LayoutTests/external/wpt
10:33:22.070 1872 chunk slice [54054:57915] of 69489 is 3861 tests
-----------------


 
Cc: mcgreevy@chromium.org
When running layout tests on swarming, the shards take roughly 3.5 minutes each. Thus this ~50 seconds is a large part of the time run time.
Cc: dpranke@chromium.org
jeffcarp@ do you know anything about this?

dpranke@ with qyearsley out until 8th of May, is there a good person to look into this?

This might be unfairly blaming wpt and there is something which isn't logging that is taking up the time.
Yes, I wrote the CL to add this functionality: https://crrev.com/c/447959/

We realized a downside is that manifest generation time would go up if WPT_BASE_MANIFEST.json got out of date. However, imports (which update that file) have been happening regularly, so it'd be good to verify on a current local checkout to see if this is the cause.

I'm currently troopering today and tomorrow but I can check this soon when I get time.
How do you decide when to do the generation?
It runs as part of WPT import at 6am PT. If an import is successful, the base manifest gets updated. The last few imports have been successful:
https://build.chromium.org/p/chromium.infra.cron/builders/wpt-importer

Today I'll try reproducing this slowness on my workstation.
On ToT on my workstation the manifest generation step takes between 2-10 seconds. On a machine with less resources I could see it taking longer, but 50 seconds is a big jump.

We could add some timing instrumentation code to manifest generation to help diagnose this problem on swarming. Does that sound like a good next step?
Let's start by putting in a log call after it finishes to see if it is actually the culprit...
Owner: jeffcarp@chromium.org
Status: Assigned (was: Untriaged)
Looking at a sample of logs of shards from recent webkit_layout_test jobs on https://luci-milo.appspot.com/buildbot/chromium.fyi/WebKit%20Linux%20-%20RandomOrder/, it seems like the manifest generation is taking about 5-10 seconds recently.

Maybe it's possible that WPT_BASE_MANIFEST.json was just out of date on April 24, and as long as it's kept up to date we can expect a time of around 5 seconds for updating the manifest?
Status: Fixed (was: Assigned)
Closing since this seems to no longer be an issue.

Sign in to add a comment