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

Issue 713357 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Last visit > 30 days ago
Closed: Sep 4
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Linux
Pri: 2
Type: Bug

Blocked on:
issue 849541

Blocking:
issue 713345



Sign in to add a comment

Per story benchmark sharding

Project Member Reported by martiniss@chromium.org, Apr 19 2017

Issue description

Currently, benchmarks are not sharded optimally, which leads to longer cycle times than are necessary.

Attached is a picture of the current sharding for desktop bots. It's slightly inefficient right now.

There are also old legacy sharding algorithms being used right now. I'm getting rid of those as well.
 
sharding.png
17.5 KB View Download
Blocking: 713345
Cc: dpranke@chromium.org
Owner: martiniss@chromium.org
Status: Fixed (was: Available)
martiniss@ landed the CL in https://chromium-review.googlesource.com/c/481907/

This has helped reduce cycle time of:
'Win Zenbook Perf': 9.1h --> 8.4h
'Win 10 High-DPI Perf': 8.2h --> 6.4h.

Reducing the cycle time & clean up the code at once, very nice work Stephen! 


Status: Assigned (was: Fixed)
There is more work to do here.

We're introducing a json file in the //tools/perf/core directory which lists how we're sharding benchmarks. This can be edited manually, so that we can reshard tests as needed to reduce cycle time.

Eventually, this file would be purely auto generated. We need a better sharding algorithm which knows how to minimize cycle time, but with minimal swaps from an existing sharding configuration.
Project Member

Comment 5 by bugdroid1@chromium.org, May 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/ce159dee32a6cf18669950198af0efd9218393e8

commit ce159dee32a6cf18669950198af0efd9218393e8
Author: nednguyen <nednguyen@google.com>
Date: Wed May 03 18:22:15 2017

Remove usage of bot_utils.GetDeviceAffinity in perf_data_generator

|benchmark_sharding_map| is always non None, hence the branching to use
|bot_utils.GetDeviceAffinity| when it's None is now dead code.

BUG= 713357 
TBR=eyaich@chromium.org

Review-Url: https://codereview.chromium.org/2854413002
Cr-Commit-Position: refs/heads/master@{#469037}

[modify] https://crrev.com/ce159dee32a6cf18669950198af0efd9218393e8/tools/perf/core/perf_data_generator.py
[modify] https://crrev.com/ce159dee32a6cf18669950198af0efd9218393e8/tools/perf/core/perf_data_generator_unittest.py

Project Member

Comment 6 by bugdroid1@chromium.org, May 5 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/79e98da1bf1d0e04f66483524c432a7efbaf8ac4

commit 79e98da1bf1d0e04f66483524c432a7efbaf8ac4
Author: Stephen Martinis <martiniss@chromium.org>
Date: Fri May 05 23:23:36 2017

//tools/perf: Add sharding map json

This CL adds a json file, showing how we are sharding benchmarks across all available
devices. This will allow us to more easily understand any changes we make to sharding.

Change-Id: I982e853de15f6bb79946939e07a02beedbf148ac
Bug:  713357 
Reviewed-on: https://chromium-review.googlesource.com/486267
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#469796}
[add] https://crrev.com/79e98da1bf1d0e04f66483524c432a7efbaf8ac4/tools/perf/core/benchmark_sharding_map.json
[modify] https://crrev.com/79e98da1bf1d0e04f66483524c432a7efbaf8ac4/tools/perf/core/perf_data_generator.py
[modify] https://crrev.com/79e98da1bf1d0e04f66483524c432a7efbaf8ac4/tools/perf/core/perf_data_generator_unittest.py
[add] https://crrev.com/79e98da1bf1d0e04f66483524c432a7efbaf8ac4/tools/perf/core/sharding_map_generator.py
[add] https://crrev.com/79e98da1bf1d0e04f66483524c432a7efbaf8ac4/tools/perf/generate_perf_sharding

Project Member

Comment 7 by bugdroid1@chromium.org, May 6 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/7d028ffb7e580605ae2182842f8fe0c611777523

commit 7d028ffb7e580605ae2182842f8fe0c611777523
Author: Stephen Martinis <martiniss@chromium.org>
Date: Sat May 06 18:44:26 2017

Manually shard some perf bots

v8.runtime_stats.top_25 from build148-m1 -> build152-m1. 
  Should save 1*85 = 85 minutes on Linux Perf
v8.runtime_stats.top_25 from build123-b1 -> build127-b1. 
  Should save 1*85 = 85 minutes on Mac Air 10.11 Perf
v8.runtime_stats.top_25 from build24-b1 -> build28-b1. 
  Should save 1*85 = 85 minutes on Mac Mini 8GB 10.12 Perf
page_cycle_v2.intl_es_fr_pt-BR from build34-b1 -> build31-b1. 
  Should save 2*45 = 90 minutes on Win Zenbook Perf.
smoothness.key_silk_cases from build73-b1--device1 -> build73-b1--device4. 
  Should save 2*13 = 26 minutes on Android Nexus5X Perf.

PERF SHERIFFS: This CL should cause the following tests to change:
* v8.runtime_stats.top_25
* page_cycle_v2.intl_es_fr_pt-BR
* smoothness.key_silk_cases

Change-Id: Ifdb90a1e127aedb032a802c0406f2e8cf1d1c152
Bug:  713357 
Reviewed-on: https://chromium-review.googlesource.com/497009
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#469841}
[modify] https://crrev.com/7d028ffb7e580605ae2182842f8fe0c611777523/testing/buildbot/chromium.perf.json
[modify] https://crrev.com/7d028ffb7e580605ae2182842f8fe0c611777523/tools/perf/core/benchmark_sharding_map.json

Project Member

Comment 8 by bugdroid1@chromium.org, May 10 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bc4791b8401ea22c9e8dec630c8c49ad9ffe8b9a

commit bc4791b8401ea22c9e8dec630c8c49ad9ffe8b9a
Author: nednguyen <nednguyen@google.com>
Date: Wed May 10 20:31:13 2017

Fix the error message when a new benchmark is added without sharding info

Previously, adding a new benchmark which doesn't have sharding info will
raise a cryptic error message " Device affinity for benchmark ... not found".

This fixes it by telling the user to contact nednguyen@ & martiniss@ for doing the work of scheduling the benchmark.

BUG= chromium:713357 

Review-Url: https://codereview.chromium.org/2878483002
Cr-Commit-Position: refs/heads/master@{#470690}

[modify] https://crrev.com/bc4791b8401ea22c9e8dec630c8c49ad9ffe8b9a/tools/perf/core/perf_data_generator.py

Project Member

Comment 9 by bugdroid1@chromium.org, Jun 3 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/150584a68e0bee9d6294161282c0909bd58d58b3

commit 150584a68e0bee9d6294161282c0909bd58d58b3
Author: Stephen Martinis <martiniss@chromium.org>
Date: Sat Jun 03 02:48:02 2017

//tools/perf: Swap around sharding

This should shave off a fair amount of cycle time on the builders.
Specifically, the following time saves should occur:
* Android Nexus5 Perf:    ~1 hour
* Android Nexus5X Perf:   ~30 minutes
* Android Nexus6 Perf:    ~30 minutes (maybe less, a bit hard to tell)
* Mac 10.12 Perf:         ~1-2 hours
* Mac Air 10.11 Perf:     ~30 minutes
* Mac Mini 8B 10.12 Perf: ~30 minutes
* Mac Pro 10.11 Perf:     ~30 minutes
* Win 10 High-DPI Perf:   ~10 minutes (can hopefully save more later)
* Win 10 Perf:            ~10 minutes
* Win 7 ATI GPU Perf:     ~10 minutes
* Win 7 Intel GPU Perf:   ~20 minutes
* Win 7 Nvidia GPU Perf:  ~60 minutes
* Win 7 Perf:             ~30 minutes
* Win 7 x64 Perf:         ~100 minutes
* Win 8 Perf:             ~60 minutes


PERF SHERIFFS: These are the affected benchmarks. Expect changes on
some configs for these benchmarks:
* page_cycler_v2.basic_oopif
* smoothness.key_silk_cases
* smoothness.tough_animation_cases
* smoothness.tough_scrolling_cases
* storage.indexeddb_endure
* storage.indexeddb_endure_tracing
* system_health.memory_desktop
* thread_times.tough_scrolling_cases
* v8.infinite_scroll_tbmv2
* v8.mobile_infinite_scroll-classic_tbmv2
* v8.runtimestats.browsing_desktop
* v8.runtimestats.browsing_desktop_turbo
* v8.runtimestats.browsing_mobile_turbo
* webrtc

Bug:  713357 
Change-Id: I89cd14cb1aa823701e1a6f735e5ef6fd58bb4a5a
Reviewed-on: https://chromium-review.googlesource.com/521888
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#476873}
[modify] https://crrev.com/150584a68e0bee9d6294161282c0909bd58d58b3/testing/buildbot/chromium.perf.json
[modify] https://crrev.com/150584a68e0bee9d6294161282c0909bd58d58b3/tools/perf/core/benchmark_sharding_map.json

The CL in #9 seems to have made some impact. It looks like the addition of the webrtc benchmark added about an hour to most bots. I was able to undo a lot of the added cycle time with that bot. 

More work can still be done though.
Project Member

Comment 11 by bugdroid1@chromium.org, Jun 27 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/a24dc8293ff750f802b0777028bc0efcd74e09f1

commit a24dc8293ff750f802b0777028bc0efcd74e09f1
Author: Stephen Martinis <martiniss@chromium.org>
Date: Tue Jun 27 00:26:47 2017

//tools/perf: Update benchmark sharding

Expected cycle time improvements:
* Android Nexus7v2 Perf: ~50 minutes
* Linux Perf: 70 minutes
* Mac 10.11 Perf: ~3 hours

Perf sheriffs: This CL may affect the following benchmarks:
* scheduler.tough_scheduling_cases
* smoothness.key_silk_cases
* thread_times.tough_scrolling_cases
* media.tough_video_cases
* v8.runtimestats.browsing_desktop

Bug:  713357 
Change-Id: I585f5b64fae68cae8aaeeda3c799842b4ee28ce2
Reviewed-on: https://chromium-review.googlesource.com/524634
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#482486}
[modify] https://crrev.com/a24dc8293ff750f802b0777028bc0efcd74e09f1/testing/buildbot/chromium.perf.json
[modify] https://crrev.com/a24dc8293ff750f802b0777028bc0efcd74e09f1/tools/perf/core/benchmark_sharding_map.json

I'm also going to make this be the tracking bug for work on implementing per story sharding.

Here is a public doc describing this work: https://docs.google.com/document/d/1GLGwbYrC0-jns0V46LnEOIBP3VLnyP7tkTMp-B80gEA/edit#
Project Member

Comment 13 by bugdroid1@chromium.org, Jun 28 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/204e9296e761ca652c60958ab8a618682a16ebc0

commit 204e9296e761ca652c60958ab8a618682a16ebc0
Author: Stephen Martinis <martiniss@chromium.org>
Date: Wed Jun 28 21:54:01 2017

//tools/perf: Make generate_perf_sharding script nicer

* Adds a dry_run arg
* Adds some utility methods
* Cleans up some indentation
* Add help to --builder-names

Split out some of the work from
https://chromium-review.googlesource.com/c/498862/

Bug:  713357 
Change-Id: I217e2f52febeb3c061c926e82c7bf1af37167f9a
Reviewed-on: https://chromium-review.googlesource.com/550988
Commit-Queue: Stephen Martinis <martiniss@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#483156}
[modify] https://crrev.com/204e9296e761ca652c60958ab8a618682a16ebc0/tools/perf/core/sharding_map_generator.py

Owner: ----
Status: Available (was: Assigned)
Cc: ashleymarie@chromium.org eyaich@chromium.org
Owner: ashleymarie@chromium.org
Summary: Per story benchmark sharding (was: Improve benchmark sharding )
Pointer to the telemetry code that keep tracks of benchmark_duration.  

https://cs.chromium.org/chromium/src/third_party/catapult/telemetry/telemetry/internal/story_runner.py?type=cs&q=benchmark_duration&sq=package:chromium&l=388

We should be able to add to this code to track per story and then add to the json test results format.  Then we can query the test results server for the data for our alogorithm
Project Member

Comment 18 by bugdroid1@chromium.org, Mar 30 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/599a2ce19873a99d03dd5c2e64f1a8c5980f313d

commit 599a2ce19873a99d03dd5c2e64f1a8c5980f313d
Author: catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Fri Mar 30 21:02:48 2018

Roll src/third_party/catapult/ 79c4e9ed2..f10f4be83 (3 commits)

https://chromium.googlesource.com/catapult.git/+log/79c4e9ed208d..f10f4be830a9

$ git log 79c4e9ed2..f10f4be83 --date=short --no-merges --format='%ad %ae %s'
2018-03-30 sullivan Fix for results_data['culprit_cl'] explicitly set to None.
2018-03-30 ashleymarie Adding per story timing
2018-03-30 nednguyen Update wprgo binary to the latest

Created with:
  roll-dep src/third_party/catapult
BUG= chromium:713357 


The AutoRoll server is located here: https://catapult-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


TBR=sullivan@chromium.org

Change-Id: Iafc0856d6de3642d7f3c628df9aa73869682b2d9
Reviewed-on: https://chromium-review.googlesource.com/988336
Commit-Queue: catapult-chromium-autoroll <catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: catapult-chromium-autoroll <catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#547270}
[modify] https://crrev.com/599a2ce19873a99d03dd5c2e64f1a8c5980f313d/DEPS

Project Member

Comment 20 by bugdroid1@chromium.org, Apr 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6cd83218cf5f460389a8cb7970bc1456ae1bb7c5

commit 6cd83218cf5f460389a8cb7970bc1456ae1bb7c5
Author: catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com <catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Date: Wed Apr 04 18:24:08 2018

Roll src/third_party/catapult/ 23d04ac91..a13166acf (1 commit)

https://chromium.googlesource.com/catapult.git/+log/23d04ac91acd..a13166acf03f

$ git log 23d04ac91..a13166acf --date=short --no-merges --format='%ad %ae %s'
2018-04-04 ashleymarie Updating how we save story duration

Created with:
  roll-dep src/third_party/catapult
BUG= chromium:713357 


The AutoRoll server is located here: https://catapult-roll.skia.org

Documentation for the AutoRoller is here:
https://skia.googlesource.com/buildbot/+/master/autoroll/README.md

If the roll is causing failures, please contact the current sheriff, who should
be CC'd on the roll, and stop the roller if necessary.


TBR=sullivan@chromium.org

Change-Id: Iced02a25ef962b68064a38e13132b9d6fa9d506a
Reviewed-on: https://chromium-review.googlesource.com/995963
Commit-Queue: catapult-chromium-autoroll <catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Reviewed-by: catapult-chromium-autoroll <catapult-chromium-autoroll@skia-buildbots.google.com.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#548133}
[modify] https://crrev.com/6cd83218cf5f460389a8cb7970bc1456ae1bb7c5/DEPS

Project Member

Comment 21 by bugdroid1@chromium.org, May 25 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/fdff4bbd743b23053a5c32eef403d59bda1f2ac6

commit fdff4bbd743b23053a5c32eef403d59bda1f2ac6
Author: Emily Hanley <eyaich@google.com>
Date: Fri May 25 18:13:58 2018

Triggering benchmarks by story index if present and merging results
from each shard.

Updating bot map format to include an optional begin and end value
to indicate a subset of stories to run.

Bug:  713357 
Change-Id: Id3188cc350e9df2c82177057e032301ddc8b851d
Reviewed-on: https://chromium-review.googlesource.com/1070310
Reviewed-by: Emily Hanley <eyaich@chromium.org>
Reviewed-by: Ashley Enstad <ashleymarie@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Emily Hanley <eyaich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#561946}
[modify] https://crrev.com/fdff4bbd743b23053a5c32eef403d59bda1f2ac6/testing/scripts/run_performance_tests.py
[modify] https://crrev.com/fdff4bbd743b23053a5c32eef403d59bda1f2ac6/tools/perf/core/benchmark_android_bot_map.json
[modify] https://crrev.com/fdff4bbd743b23053a5c32eef403d59bda1f2ac6/tools/perf/core/benchmark_bot_map.json
[modify] https://crrev.com/fdff4bbd743b23053a5c32eef403d59bda1f2ac6/tools/perf/core/benchmark_desktop_bot_map.json
[modify] https://crrev.com/fdff4bbd743b23053a5c32eef403d59bda1f2ac6/tools/perf/core/smoke_test_benchmark_shard_map.json
[modify] https://crrev.com/fdff4bbd743b23053a5c32eef403d59bda1f2ac6/tools/perf/process_perf_results.py

Project Member

Comment 23 by bugdroid1@chromium.org, Jun 4 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6fff05f94f9da1d47f666ff5912f81de5d6be6e9

commit 6fff05f94f9da1d47f666ff5912f81de5d6be6e9
Author: Emily Hanley <eyaich@google.com>
Date: Mon Jun 04 17:03:50 2018

Generating shard maps for perf benchmarks

Bug:  713357 
Change-Id: I512c30ddb47fcf85fe8f1124da5b1e8c3eecc8e4
Reviewed-on: https://chromium-review.googlesource.com/1085087
Commit-Queue: Emily Hanley <eyaich@chromium.org>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#564122}
[modify] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/testing/buildbot/chromium.perf.fyi.json
[modify] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/testing/scripts/run_performance_tests.py
[delete] https://crrev.com/671bd5887ba282e5088de84832520d1db4ad8f7b/tools/perf/core/desktop_benchmark_avg_times.json
[modify] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/perf_data_generator.py
[rename] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/benchmark_android_bot_map.json
[rename] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/benchmark_bot_map.json
[rename] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/benchmark_desktop_bot_map.json
[add] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/desktop_26_shard_map.json
[add] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/desktop_5_shard_map.json
[add] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/desktop_benchmark_avg_times.json
[add] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/mobile_21_shard_map.json
[add] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/mobile_39_shard_map.json
[add] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/mobile_benchmark_avg_times.json
[rename] https://crrev.com/6fff05f94f9da1d47f666ff5912f81de5d6be6e9/tools/perf/core/shard_maps/smoke_test_benchmark_shard_map.json

Blockedon: 849541
Project Member

Comment 26 by bugdroid1@chromium.org, Jun 11 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/42b08e0333c93d1846b7e2078136ae5f19b05047

commit 42b08e0333c93d1846b7e2078136ae5f19b05047
Author: Ashley Enstad <ashleymarie@chromium.org>
Date: Mon Jun 11 18:02:22 2018

Adding a debug mode to output estimated timing per shard

Bug:  713357 
Change-Id: I386f4df623524e5404bdffd7cae78afb2890526b
Reviewed-on: https://chromium-review.googlesource.com/1094982
Reviewed-by: Emily Hanley <eyaich@chromium.org>
Commit-Queue: Ashley Enstad <ashleymarie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#566053}
[modify] https://crrev.com/42b08e0333c93d1846b7e2078136ae5f19b05047/tools/perf/core/sharding_map_generator.py
[modify] https://crrev.com/42b08e0333c93d1846b7e2078136ae5f19b05047/tools/perf/core/sharding_map_generator_unittest.py

Project Member

Comment 27 by bugdroid1@chromium.org, Jun 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/783a148bc31591a51dbab6635d56a288169568df

commit 783a148bc31591a51dbab6635d56a288169568df
Author: Ned Nguyen <nednguyen@google.com>
Date: Tue Jun 12 03:58:08 2018

Disable TestShardingMapGenerator.testGenerateAndTestShardingMap

Land this to unblock landing https://chromium-review.googlesource.com/c/chromium/src/+/1095475
Bug:713357

NOTRY=true  # test locally
NOTREECHECKS=true
TBR=eyaich@chromium.org, ashleymarie@chromium.org

Change-Id: I5d49b22c6c5ef4c50949f9454b30c38fb500da1e
Reviewed-on: https://chromium-review.googlesource.com/1096671
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#566293}
[modify] https://crrev.com/783a148bc31591a51dbab6635d56a288169568df/tools/perf/core/sharding_map_generator_unittest.py

Project Member

Comment 28 by bugdroid1@chromium.org, Jun 12 2018

Project Member

Comment 29 by bugdroid1@chromium.org, Jun 12 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/c8782f90b2b07290427d5baa368a06a3b9aae8ee

commit c8782f90b2b07290427d5baa368a06a3b9aae8ee
Author: Ashley Enstad <ashleymarie@chromium.org>
Date: Tue Jun 12 21:57:45 2018

Fix and reenable unittest

Bug:  713357 
Change-Id: I88006945277d7081ca71b33dac183e7619d29b82
Reviewed-on: https://chromium-review.googlesource.com/1097233
Reviewed-by: Emily Hanley <eyaich@chromium.org>
Commit-Queue: Ashley Enstad <ashleymarie@chromium.org>
Cr-Commit-Position: refs/heads/master@{#566591}
[modify] https://crrev.com/c8782f90b2b07290427d5baa368a06a3b9aae8ee/tools/perf/core/sharding_map_generator_unittest.py

Project Member

Comment 30 by bugdroid1@chromium.org, Jun 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f1240efe6748a350ca5c424eab5ebad363750d64

commit f1240efe6748a350ca5c424eab5ebad363750d64
Author: Emily Hanley <eyaich@google.com>
Date: Mon Jun 18 16:36:45 2018

Adding some timing info to process perf results.

We need to analyze the bottlenecks in the upload to the dashboard.

Bug:  713357 
Change-Id: If763ac8689798158c7e7bcc6587646737894fb81
Reviewed-on: https://chromium-review.googlesource.com/1104302
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Emily Hanley <eyaich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#568032}
[modify] https://crrev.com/f1240efe6748a350ca5c424eab5ebad363750d64/tools/perf/process_perf_results.py

Project Member

Comment 31 by bugdroid1@chromium.org, Jun 18 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/bb157d71647b39ce011ed150cd183cbc2c59ac61

commit bb157d71647b39ce011ed150cd183cbc2c59ac61
Author: Emily Hanley <eyaich@google.com>
Date: Mon Jun 18 23:19:01 2018

Updating timing data now that warm/cold stories are separated

Bug:  713357 
Change-Id: Ia2d35c069e5bc07b8c2d0c7fb4b81f7000b43371
Reviewed-on: https://chromium-review.googlesource.com/1104893
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#568227}
[modify] https://crrev.com/bb157d71647b39ce011ed150cd183cbc2c59ac61/tools/perf/core/shard_maps/mac1012_5_shard_map.json
[modify] https://crrev.com/bb157d71647b39ce011ed150cd183cbc2c59ac61/tools/perf/core/shard_maps/mac1012_story_timing.json

Project Member

Comment 32 by bugdroid1@chromium.org, Jun 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/03f4c4fdcb65bfe2fac45073148b4de68a28cdac

commit 03f4c4fdcb65bfe2fac45073148b4de68a28cdac
Author: Emily Hanley <eyaich@google.com>
Date: Tue Jun 19 17:54:32 2018

Adding more logging to perf dashboard uploads

Bug:713357
Change-Id: I559932e082f59f4dd918caca971d5e6eae688490

NOTRY=true # CQ flaky

Change-Id: I559932e082f59f4dd918caca971d5e6eae688490
Reviewed-on: https://chromium-review.googlesource.com/1106041
Commit-Queue: Emily Hanley <eyaich@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#568521}
[modify] https://crrev.com/03f4c4fdcb65bfe2fac45073148b4de68a28cdac/tools/perf/process_perf_results.py

Project Member

Comment 33 by bugdroid1@chromium.org, Jun 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f6ddc51a7e637190cfafa68c0f00b1d40c3860be

commit f6ddc51a7e637190cfafa68c0f00b1d40c3860be
Author: Emily Hanley <eyaich@google.com>
Date: Tue Jun 19 18:52:23 2018

Generating per configuration shard maps.

Also turning on sharding on main waterfall for linux and mac configs.

Bug:713357
Change-Id: I3aa3c67d5d23b2549455d363bbef374fb70fba4d

NOTRY=true  # CQ flakes, related tests passed

Change-Id: I3aa3c67d5d23b2549455d363bbef374fb70fba4d
Reviewed-on: https://chromium-review.googlesource.com/1106428
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#568542}
[modify] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/testing/buildbot/chromium.perf.fyi.json
[modify] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/testing/buildbot/chromium.perf.json
[modify] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/perf_data_generator.py
[delete] https://crrev.com/4287efebc986570c4e18e1dc3ecf9f6a73d99e0c/tools/perf/core/shard_maps/desktop_benchmark_avg_times.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/linux_perf_shard_map.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/mac_1012_low_end_26_shard_map.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/mac_1013_high_end_26_shard_map.json
[delete] https://crrev.com/4287efebc986570c4e18e1dc3ecf9f6a73d99e0c/tools/perf/core/shard_maps/mobile_benchmark_avg_times.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/pixel2_shard_map.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/pixel2_webview_shard_map.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/timing_data/linux_perf_story_timing.json
[rename] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/timing_data/mac1012_story_timing.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/timing_data/mac_1012_low_end_story_timing.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/timing_data/mac_1013_high_end_story_timing.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/timing_data/pixel2_story_timing.json
[add] https://crrev.com/f6ddc51a7e637190cfafa68c0f00b1d40c3860be/tools/perf/core/shard_maps/timing_data/pixel2_webview_story_timing.json

Project Member

Comment 34 by bugdroid1@chromium.org, Jun 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6a5dd83659799940e0ea7cbf6c4e5fec2b442bff

commit 6a5dd83659799940e0ea7cbf6c4e5fec2b442bff
Author: Ned Nguyen <nednguyen@google.com>
Date: Tue Jun 19 23:44:16 2018

Add time logging of benchmark merging

Bug:713357

NOTRY=true  # changes not affecting CQ
TBR=eyaich@chromium.org

Change-Id: Ife9474655e1a92e2cca1d4b6c0f2b38a134aff75
Reviewed-on: https://chromium-review.googlesource.com/1107205
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#568646}
[modify] https://crrev.com/6a5dd83659799940e0ea7cbf6c4e5fec2b442bff/tools/perf/process_perf_results.py

Project Member

Comment 35 by bugdroid1@chromium.org, Jun 19 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/90a2d3e77ac698d2b419144a8d87ed9306c1b1ac

commit 90a2d3e77ac698d2b419144a8d87ed9306c1b1ac
Author: Ned Nguyen <nednguyen@google.com>
Date: Tue Jun 19 23:52:15 2018

Rename pixel shards map to match with commandline flag


NOTRY=true  # no tests on CQ cover this
TBR=eyaich@chromium.org

Bug:  713357 
Change-Id: I252064713b2c8e5584f9db2fec35e58c0bf8a5f3
Reviewed-on: https://chromium-review.googlesource.com/1107213
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#568649}
[rename] https://crrev.com/90a2d3e77ac698d2b419144a8d87ed9306c1b1ac/tools/perf/core/shard_maps/pixel2_7_shard_map.json
[rename] https://crrev.com/90a2d3e77ac698d2b419144a8d87ed9306c1b1ac/tools/perf/core/shard_maps/pixel2_webview_7_shard_map.json

Project Member

Comment 36 by bugdroid1@chromium.org, Jun 22 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/744cf4d74a0095b8e855cde68e5e1860308e24a6

commit 744cf4d74a0095b8e855cde68e5e1860308e24a6
Author: Ashley Enstad <ashleymarie@chromium.org>
Date: Fri Jun 22 21:35:51 2018

Changing timing back to averaging from summing

Bug:  713357 
Change-Id: Iefd741be80323c322b63dd92f05b8758e96fb6ca
Reviewed-on: https://chromium-review.googlesource.com/1101490
Commit-Queue: Ashley Enstad <ashleymarie@chromium.org>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Emily Hanley <eyaich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#569791}
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/retrieve_story_timing.py
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/shard_maps/linux_perf_shard_map.json
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/shard_maps/mac_1012_low_end_26_shard_map.json
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/shard_maps/mac_1013_high_end_26_shard_map.json
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/shard_maps/timing_data/linux_perf_story_timing.json
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/shard_maps/timing_data/mac_1012_low_end_story_timing.json
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/shard_maps/timing_data/mac_1013_high_end_story_timing.json
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/sharding_map_generator.py
[modify] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/sharding_map_generator_unittest.py
[add] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/test_data/test_timing_data.json
[add] https://crrev.com/744cf4d74a0095b8e855cde68e5e1860308e24a6/tools/perf/core/test_data/test_timing_data_1_build.json

Project Member

Comment 37 by bugdroid1@chromium.org, Jun 28 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/681ba107f87635d29521442b150e84dcc1e2a05f

commit 681ba107f87635d29521442b150e84dcc1e2a05f
Author: Emily Hanley <eyaich@google.com>
Date: Thu Jun 28 18:50:17 2018

Parallelizing perf dashboard uploads

This change also update the oauth token to generating
ne per run to one per benchmark

Bug:713357, 854162 
Change-Id: If06e71c53fe8083f82307584a6e92104e33b2f65


CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.perf:obbs_fyi

Change-Id: If06e71c53fe8083f82307584a6e92104e33b2f65
Reviewed-on: https://chromium-review.googlesource.com/1114690
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#571212}
[modify] https://crrev.com/681ba107f87635d29521442b150e84dcc1e2a05f/tools/perf/core/oauth_api.py
[modify] https://crrev.com/681ba107f87635d29521442b150e84dcc1e2a05f/tools/perf/core/results_dashboard.py
[modify] https://crrev.com/681ba107f87635d29521442b150e84dcc1e2a05f/tools/perf/process_perf_results.py

Project Member

Comment 38 by bugdroid1@chromium.org, Jun 29 2018

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/cce5450a6d372adba5fbaa2a46e2065382e4b503

commit cce5450a6d372adba5fbaa2a46e2065382e4b503
Author: Ned Nguyen <nednguyen@google.com>
Date: Fri Jun 29 11:34:34 2018

Revert "Parallelizing perf dashboard uploads"

This reverts commit 681ba107f87635d29521442b150e84dcc1e2a05f.

Reason for revert: break uploading on Mac (https://ci.chromium.org/buildbot/chromium.perf/mac-10_13_laptop_high_end-perf/167)

Original change's description:
> Parallelizing perf dashboard uploads
> 
> This change also update the oauth token to generating
> ne per run to one per benchmark
> 
> Bug:713357, 854162 
> Change-Id: If06e71c53fe8083f82307584a6e92104e33b2f65
> 
> 
> CQ_INCLUDE_TRYBOTS=master.tryserver.chromium.perf:obbs_fyi
> 
> Change-Id: If06e71c53fe8083f82307584a6e92104e33b2f65
> Reviewed-on: https://chromium-review.googlesource.com/1114690
> Commit-Queue: Ned Nguyen <nednguyen@google.com>
> Reviewed-by: Ned Nguyen <nednguyen@google.com>
> Cr-Commit-Position: refs/heads/master@{#571212}

TBR=nednguyen@google.com,eyaich@chromium.org

Change-Id: Icc0093c203e0fa335c550c8af5686af1786d6625
No-Presubmit: true
No-Tree-Checks: true
No-Try: true
Bug:  713357 ,  854162 
Cq-Include-Trybots: master.tryserver.chromium.perf:obbs_fyi
Reviewed-on: https://chromium-review.googlesource.com/1120125
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#571441}
[modify] https://crrev.com/cce5450a6d372adba5fbaa2a46e2065382e4b503/tools/perf/core/oauth_api.py
[modify] https://crrev.com/cce5450a6d372adba5fbaa2a46e2065382e4b503/tools/perf/core/results_dashboard.py
[modify] https://crrev.com/cce5450a6d372adba5fbaa2a46e2065382e4b503/tools/perf/process_perf_results.py

Project Member

Comment 40 by bugdroid1@chromium.org, Jul 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/933e64e8d889dbe40b69074038b09e67892551d4

commit 933e64e8d889dbe40b69074038b09e67892551d4
Author: Emily Hanley <eyaich@google.com>
Date: Mon Jul 02 14:49:31 2018

Reland parallelizing perf dashboard uploads

Failures in this revert https://chromium-review.googlesource.com/c/chromium/src/+/1120125
were for failing mac, but the everything was succeeding, we were
failing when trying to right out not valid json as perf results.

I have added logic in line 447 of process_perf_results.py to catch
these errors in the future.  Note this was also an issue in the old
recipe, it just shows one step as failed instead of the entire suite.

Bug:  713357 , 854162 ,  859073 , 858995
Change-Id: I37c8f8fe3d7973962a17bbd64b758c7c98517799
Reviewed-on: https://chromium-review.googlesource.com/1122478
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Emily Hanley <eyaich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571893}
[modify] https://crrev.com/933e64e8d889dbe40b69074038b09e67892551d4/tools/perf/core/oauth_api.py
[modify] https://crrev.com/933e64e8d889dbe40b69074038b09e67892551d4/tools/perf/core/results_dashboard.py
[modify] https://crrev.com/933e64e8d889dbe40b69074038b09e67892551d4/tools/perf/process_perf_results.py

Project Member

Comment 41 by bugdroid1@chromium.org, Jul 2

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/96874db4bed9cc3251b6e275b6a4017557a89fcf

commit 96874db4bed9cc3251b6e275b6a4017557a89fcf
Author: Emily Hanley <eyaich@google.com>
Date: Mon Jul 02 19:00:20 2018

Re-generating shard maps for FYI bots and cleaning up un-used

Bug:  855063 , 713357 
Change-Id: I79e5e5eac6283493f0eb83771fe6edbde1a0496e
Reviewed-on: https://chromium-review.googlesource.com/1122843
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Emily Hanley <eyaich@chromium.org>
Cr-Commit-Position: refs/heads/master@{#571958}
[modify] https://crrev.com/96874db4bed9cc3251b6e275b6a4017557a89fcf/tools/perf/core/perf_data_generator.py
[modify] https://crrev.com/96874db4bed9cc3251b6e275b6a4017557a89fcf/tools/perf/core/shard_maps/android_go_14_shard_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/benchmark_android_bot_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/benchmark_desktop_bot_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/desktop_26_shard_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/desktop_5_shard_map.json
[modify] https://crrev.com/96874db4bed9cc3251b6e275b6a4017557a89fcf/tools/perf/core/shard_maps/mac1012_5_shard_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/mobile_21_shard_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/mobile_39_shard_map.json
[delete] https://crrev.com/17d0f0fb2457a1ff37f9b248bb5e6526235aabaa/tools/perf/core/shard_maps/mobile_7_shard_map.json
[modify] https://crrev.com/96874db4bed9cc3251b6e275b6a4017557a89fcf/tools/perf/core/shard_maps/pixel2_7_shard_map.json
[modify] https://crrev.com/96874db4bed9cc3251b6e275b6a4017557a89fcf/tools/perf/core/shard_maps/pixel2_webview_7_shard_map.json

Project Member

Comment 42 by bugdroid1@chromium.org, Jul 10

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/351cf27f6f4c1ef9dc627d501269d18e2fed81c2

commit 351cf27f6f4c1ef9dc627d501269d18e2fed81c2
Author: Ned Nguyen <nednguyen@google.com>
Date: Tue Jul 10 01:08:59 2018

Bails out shard map checking when the number of shard is 1

TBR=eyaich@chromium.org
NOTRY=true # Check with PRESUBMIT

Bug:  713357 
Cq-Include-Trybots: master.tryserver.chromium.perf:obbs_fyi
Change-Id: I6de11174019c3025913ab9fd1f1dbc7f9e2a5a27
Reviewed-on: https://chromium-review.googlesource.com/1130698
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#573574}
[modify] https://crrev.com/351cf27f6f4c1ef9dc627d501269d18e2fed81c2/tools/perf/core/perf_json_config_validator.py

Project Member

Comment 43 by bugdroid1@chromium.org, Jul 14

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/28e1741bd2f9158d7a9f49af2d5e93d77cc734fa

commit 28e1741bd2f9158d7a9f49af2d5e93d77cc734fa
Author: Ned Nguyen <nednguyen@google.com>
Date: Sat Jul 14 06:45:20 2018

Include the number of results dashboard upload failures

TBR=eyaich@chromium.org

Bug:  713357 
Change-Id: Ib99ad0590a266895c25336747cf202b5406206a5
Reviewed-on: https://chromium-review.googlesource.com/1137378
Reviewed-by: Ned Nguyen <nednguyen@google.com>
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Cr-Commit-Position: refs/heads/master@{#575158}
[modify] https://crrev.com/28e1741bd2f9158d7a9f49af2d5e93d77cc734fa/tools/perf/process_perf_results.py

Status: Assigned (was: Available)
Status: Fixed (was: Assigned)
This is fully implemented

Sign in to add a comment