Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(281)

Unified Diff: tracing/tracing/metrics/system_health/clock_sync_latency_metric.html

Issue 2338583002: Make clock sync latency metric go between each pair of clock domains. (Closed)
Patch Set: fix test Created 4 years, 3 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tracing/tracing/metrics/system_health/clock_sync_latency_metric.html
diff --git a/tracing/tracing/metrics/system_health/clock_sync_latency_metric.html b/tracing/tracing/metrics/system_health/clock_sync_latency_metric.html
index 641479ab9ead550f785ca2ea4996ca530698934e..3273f763eac548900d6c5ee180262f992aa6b37d 100644
--- a/tracing/tracing/metrics/system_health/clock_sync_latency_metric.html
+++ b/tracing/tracing/metrics/system_health/clock_sync_latency_metric.html
@@ -15,40 +15,23 @@ found in the LICENSE file.
'use strict';
tr.exportTo('tr.metrics.sh', function() {
- function syncIsComplete(markers) {
- return markers.length === 2;
- }
-
- function syncInvolvesTelemetry(markers) {
- for (var marker of markers)
- if (marker.domainId === tr.model.ClockDomainId.TELEMETRY)
- return true;
-
- return false;
- }
function clockSyncLatencyMetric(values, model) {
- for (var markers of model.clockSyncManager.markersBySyncId.values()) {
- var latency = undefined;
- var targetDomain = undefined;
- if (!syncIsComplete(markers) || !syncInvolvesTelemetry(markers))
- continue;
-
- for (var marker of markers) {
- var domain = marker.domainId;
- if (domain === tr.model.ClockDomainId.TELEMETRY)
- latency = (marker.endTs - marker.startTs);
- else
- targetDomain = domain.toLowerCase();
+ var domains = Array.from(model.clockSyncManager.domainsSeen).sort();
+ for (var i = 1; i < domains.length; i++) {
charliea (OOO until 10-5) 2016/09/21 18:05:33 I think the more idiomatic way to write these loop
alexandermont 2016/09/21 19:26:40 Done
+ for (var j = 0; j < i; j++) {
+ var latency = model.clockSyncManager.getModelTimeTransformerError(
+ domains[i], domains[j]);
+ var hist = new tr.v.Histogram(
+ tr.b.Unit.byName.timeDurationInMs_smallerIsBetter,
+ tr.v.HistogramBinBoundaries.createExponential(1e-3, 1e3, 30));
+ hist.addSample(latency);
+ values.addValue(new tr.v.NumericValue(
+ 'clock_sync_latency_' + domains[i].toLowerCase() + '_to_' +
+ domains[j].toLowerCase(), hist,
+ {description: 'Clock sync latency from domain ' + domains[i] +
+ ' to domain ' + domains[j]}));
}
-
- var hist = new tr.v.Histogram(
- tr.b.Unit.byName.timeDurationInMs_smallerIsBetter,
- tr.v.HistogramBinBoundaries.createExponential(1e-3, 1e3, 30));
- hist.addSample(latency);
- values.addValue(new tr.v.NumericValue(
- 'clock_sync_latency_' + targetDomain, hist,
- {description: 'Clock sync latency for domain ' + targetDomain}));
}
}

Powered by Google App Engine
This is Rietveld 408576698