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

Issue 691581 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 14
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug

Blocked on:
issue 625701
issue 625700
issue 692663

Blocking:
issue 619680



Sign in to add a comment

Update smoothness.maps benchmark to TBMv2

Project Member Reported by u...@chromium.org, Feb 13 2017

Issue description

Currently smoothness.maps implicitly uses the following TBMv1 metrics:
- browser_compositor_max_cpu_time
- browser_compositor_mean_cpu_time
- browser_compositor_stddev_cpu_time
- frame_time_discrepancy
- frame_times
- mean_frame_time
- mean_pixels_approximated
- mean_pixels_checkerboarded
- percentage_smooth
- queueing_durations
- render_compositor_max_cpu_time
- render_compositor_mean_cpu_time
- render_compositor_stddev_cpu_time
- swap_max_time
- swap_mean_time
- swap_stddev_time
- total_max_cpu_time
- total_mean_cpu_time
- total_stddev_cpu_time

We need to update the benchmark to TBMv2 and use the new progressive web metrics instead:
- estimated input latency (https://crbug.com/625701)
- frame throughput ( https://crbug.com/625700 )

We also need to surface the internal smoothness score computed by the maps itself. This will probably require propagating JS value to a synthetic(?) trace event and defining a custom metric for it.

Links:
Benchmark: https://cs.chromium.org/chromium/src/tools/perf/benchmarks/smoothness.py?rcl=28ff32abc83ae8939f56702151b3d982859d56b5&l=125
Page set: https://cs.chromium.org/chromium/src/tools/perf/page_sets/maps.py?rcl=28ff32abc83ae8939f56702151b3d982859d56b5&l=11
TBMv1 smoothness metric: https://cs.chromium.org/chromium/src/third_party/catapult/telemetry/telemetry/web_perf/metrics/smoothness.py?rcl=6fa9f83f7490d8d12e32e1386cd1fd8e08462e47&l=26
 

Comment 1 by u...@chromium.org, Feb 13 2017

Cc: nednguyen@chromium.org
Ned, I see that smoothness.py contains many more benchmarks besides smoothness.maps. Is there plan for updating them to TBMv2? If so, we should sync to avoid duplicating the work.
Cc: briander...@chromium.org tdres...@chromium.org
Yes, Brian has plans to update smoothness to TBMv2, also add FrameThroughput metircs & deprecate certain legacy smoothness metrics.
Project Member

Comment 3 by bugdroid1@chromium.org, Feb 13 2017

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

commit c2e7e0a2c9fb07ddc5cb71ef91ac0c157330fb61
Author: ulan <ulan@chromium.org>
Date: Mon Feb 13 17:13:31 2017

Enable smoothness.maps benchmark on all platforms.

The benchmark is currently enabled only for android, but there seems to
be no reason why it cannot be run on desktop.

Locally it runs OK on my Linux machine.

The android-only restriction was introduced in this CL:
https://codereview.chromium.org/587833003

BUG= 691581 

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

[modify] https://crrev.com/c2e7e0a2c9fb07ddc5cb71ef91ac0c157330fb61/tools/perf/benchmarks/smoothness.py

Comment 4 by kbr@chromium.org, Feb 16 2017

Blockedon: 692663
Blocking: 619680

Comment 6 by kbr@chromium.org, Aug 25 2017

Note: smoothness.maps is finally running reliably on Windows per  Issue 692663 . Now might be a good time to upgrade it.

Comment 7 by u...@chromium.org, Aug 28 2017

Thank you for fixing the benchmark, Ken. The upgrade is blocked by the smoothness metrics. 

I will get free cycles to look into the metrics after shipping V8 concurrent marking ( crbug.com/694255 ) in September/October.
Project Member

Comment 8 by bugdroid1@chromium.org, Nov 6

The following revision refers to this bug:
  https://chromium.googlesource.com/catapult/+/7b391c51f69461c5aa31d4b7d0187c5057cde81b

commit 7b391c51f69461c5aa31d4b7d0187c5057cde81b
Author: Nghia Nguyen <nednguyen@google.com>
Date: Tue Nov 06 17:44:58 2018

Remove legacy timeline based metrics (TBMv1) & all related code

Change-Id: I50071e28b18867b971250e1410a45b9c53fddcb3

BUG: chromium:691581 
Change-Id: I50071e28b18867b971250e1410a45b9c53fddcb3
Reviewed-on: https://chromium-review.googlesource.com/c/1297989
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Juan Antonio Navarro Pérez <perezju@chromium.org>
Reviewed-by: Emily Hanley <eyaich@chromium.org>

[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/smooth_gesture_util.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/timeline_interaction_record_unittest.py
[modify] https://crrev.com/7b391c51f69461c5aa31d4b7d0187c5057cde81b/telemetry/telemetry/internal/actions/action_runner_unittest.py
[modify] https://crrev.com/7b391c51f69461c5aa31d4b7d0187c5057cde81b/telemetry/telemetry/web_perf/timeline_interaction_record.py
[modify] https://crrev.com/7b391c51f69461c5aa31d4b7d0187c5057cde81b/telemetry/telemetry/web_perf/timeline_based_measurement.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/metrics/timeline_based_metric_unittest.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/metrics/timeline_based_metric.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/smooth_gesture_util_unittest.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/metrics/__init__.py
[delete] https://crrev.com/6ba6af1e543b60cced283cf7490d81415fe934d1/telemetry/telemetry/web_perf/metrics/smoothness.py

Project Member

Comment 9 by bugdroid1@chromium.org, Nov 8

The following revision refers to this bug:
  https://chromium.googlesource.com/catapult/+/026f83d4928971abffe430e0db7c4aab5dad596a

commit 026f83d4928971abffe430e0db7c4aab5dad596a
Author: Ned Nguyen <nednguyen@google.com>
Date: Thu Nov 08 03:30:14 2018

Revert "Remove legacy timeline based metrics (TBMv1) & all related code"

This reverts commit 7b391c51f69461c5aa31d4b7d0187c5057cde81b.

Reason for revert: still used by Media Router benchmark (BUG:chromium:903038)

Original change's description:
> Remove legacy timeline based metrics (TBMv1) & all related code
>
> Change-Id: I50071e28b18867b971250e1410a45b9c53fddcb3
>
> BUG: chromium:691581 
> Change-Id: I50071e28b18867b971250e1410a45b9c53fddcb3
> Reviewed-on: https://chromium-review.googlesource.com/c/1297989
> Commit-Queue: Ned Nguyen <nednguyen@google.com>
> Reviewed-by: Juan Antonio Navarro Pérez <perezju@chromium.org>
> Reviewed-by: Emily Hanley <eyaich@chromium.org>

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

# Not skipping CQ checks because original CL landed > 1 day ago.

Change-Id: I21c8533e12ade3441cb33a274990a2d9a235265e
Reviewed-on: https://chromium-review.googlesource.com/c/1325558
Commit-Queue: Ned Nguyen <nednguyen@google.com>
Reviewed-by: Ned Nguyen <nednguyen@google.com>

[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/smooth_gesture_util.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/timeline_interaction_record_unittest.py
[modify] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/internal/actions/action_runner_unittest.py
[modify] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/timeline_interaction_record.py
[modify] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/timeline_based_measurement.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/metrics/timeline_based_metric_unittest.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/timeline_based_measurement_unittest.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/metrics/timeline_based_metric.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/smooth_gesture_util_unittest.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/metrics/__init__.py
[add] https://crrev.com/026f83d4928971abffe430e0db7c4aab5dad596a/telemetry/telemetry/web_perf/metrics/smoothness.py

Status: Fixed (was: Assigned)
With the TBMv1 metric gone, I believe all work here is done.

Please feel free to reopen if I've missed something.
Project Member

Comment 12 by bugdroid1@chromium.org, Jan 16

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

commit c9d39cb7402e371e19d1485f07270953c266d4cd
Author: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Date: Wed Jan 16 02:43:37 2019

Roll src/third_party/catapult 96320b515106..78448d90081e (17 commits)

https://chromium.googlesource.com/catapult.git/+log/96320b515106..78448d90081e


git log 96320b515106..78448d90081e --date=short --no-merges --format='%ad %ae %s'
2019-01-15 vollick@chromium.org Plumb the trace buffer size for atrace
2019-01-15 perezju@chromium.org Revert "[py_utils] Add modules_util.RequireVersion"
2019-01-15 taylori@google.com Fix handling of perfetto protobuf on mac
2019-01-15 perezju@chromium.org [dashboard] Remove dead code in start_try_job.py
2019-01-15 perezju@chromium.org Revert "Remove TagMap."
2019-01-15 perezju@chromium.org [Telemetry] Add list_of_scalar_values.mean
2019-01-15 dtu@chromium.org [pinpoint] Add Tags field to try job dialog.
2019-01-15 dtu@chromium.org [pinpoint] Ignore cached isolate hashes over 8 weeks old.
2019-01-14 eroman@chromium.org Fix import of new NetExport generated logs.
2019-01-14 bsheedy@chromium.org Fix gtest conversion multiplier
2019-01-14 eyaich@google.com Adding timeToFirstViewportReady metric
2019-01-14 perezju@chromium.org [py_utils] Add modules_util.RequireVersion
2019-01-14 perezju@chromium.org Remove GetNetworkData methods
2019-01-14 perezju@chromium.org [cli services] Add buildbucket_service
2019-01-14 perezju@chromium.org [Telemetry] Remove TBMv1 metrics.SmoothnessMetric
2019-01-11 benjhayden@chromium.org Remove TagMap.
2019-01-11 benjhayden@chromium.org Truncate serialized floats in HistogramSet JSON.


Created with:
  gclient setdep -r src/third_party/catapult@78448d90081e

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

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.

CQ_INCLUDE_TRYBOTS=luci.chromium.try:android_optional_gpu_tests_rel;luci.chromium.try:linux_optional_gpu_tests_rel;luci.chromium.try:mac_optional_gpu_tests_rel;luci.chromium.try:win_optional_gpu_tests_rel

BUG=chromium:776709,chromium:777865,chromium:918218,chromium:921616,chromium:874940,chromium:916877, chromium:917273 ,chromium:921342,chromium:904879,chromium:776709,chromium:777865,chromium:480512, chromium:919093 , chromium:691581 ,chromium:921000,chromium:918218,chromium:918208
TBR=sullivan@chromium.org

Change-Id: I75c07d8719f5668f9b4a95a9757cf6c25412b547
Reviewed-on: https://chromium-review.googlesource.com/c/1413252
Reviewed-by: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Commit-Queue: chromium-autoroll <chromium-autoroll@skia-public.iam.gserviceaccount.com>
Cr-Commit-Position: refs/heads/master@{#623062}
[modify] https://crrev.com/c9d39cb7402e371e19d1485f07270953c266d4cd/DEPS

Sign in to add a comment