| OLD | NEW |
| 1 <!DOCTYPE html> | 1 <!DOCTYPE html> |
| 2 <html> | 2 <html> |
| 3 <head> | 3 <head> |
| 4 <title>Telemetry Performance Test Results</title> | 4 <title>Telemetry Performance Test Results</title> |
| 5 <style type="text/css"> | 5 <style type="text/css"> |
| 6 | 6 |
| 7 section { | 7 section { |
| 8 background: white; | 8 background: white; |
| 9 padding: 10px; | 9 padding: 10px; |
| 10 position: relative; | 10 position: relative; |
| (...skipping 325 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 336 return false; | 336 return false; |
| 337 } | 337 } |
| 338 var diff = Math.abs(other.mean() - this.mean()); | 338 var diff = Math.abs(other.mean() - this.mean()); |
| 339 return diff > this.confidenceIntervalDelta() && diff > other.confidenceI
ntervalDelta(); | 339 return diff > this.confidenceIntervalDelta() && diff > other.confidenceI
ntervalDelta(); |
| 340 } | 340 } |
| 341 this.run = function () { return associatedRun; } | 341 this.run = function () { return associatedRun; } |
| 342 } | 342 } |
| 343 | 343 |
| 344 function TestRun(entry) { | 344 function TestRun(entry) { |
| 345 this.id = function() { return entry['buildTime'].replace(/[:.-]/g,''); } | 345 this.id = function() { return entry['buildTime'].replace(/[:.-]/g,''); } |
| 346 this.revision = function () { return entry['revision']; } | |
| 347 this.label = function () { | 346 this.label = function () { |
| 348 if (labelKey in localStorage) | 347 if (labelKey in localStorage) |
| 349 return localStorage[labelKey]; | 348 return localStorage[labelKey]; |
| 350 if (entry['label']) | 349 return entry['label']; |
| 351 return entry['label']; | |
| 352 return 'r' + this.revision(); | |
| 353 } | 350 } |
| 354 this.setLabel = function(label) { localStorage[labelKey] = label; } | 351 this.setLabel = function(label) { localStorage[labelKey] = label; } |
| 355 this.isHidden = function() { return localStorage[hiddenKey]; } | 352 this.isHidden = function() { return localStorage[hiddenKey]; } |
| 356 this.hide = function() { localStorage[hiddenKey] = true; } | 353 this.hide = function() { localStorage[hiddenKey] = true; } |
| 357 this.show = function() { localStorage.removeItem(hiddenKey); } | 354 this.show = function() { localStorage.removeItem(hiddenKey); } |
| 358 this.description = function() { | 355 this.description = function() { |
| 359 var label = this.label(); | 356 return new Date(entry['buildTime']).toLocaleString() + '\n' + entry['pla
tform'] + ' ' + this.label(); |
| 360 if (label != 'r' + this.revision()) | |
| 361 label = ' ' + label; | |
| 362 else | |
| 363 label = ''; | |
| 364 return new Date(entry['buildTime']).toLocaleString() + '\n' + entry['pla
tform'] + ' r' + entry['revision'] + label; | |
| 365 } | 357 } |
| 366 | 358 |
| 367 var labelKey = 'telemetry_label_' + this.id(); | 359 var labelKey = 'telemetry_label_' + this.id(); |
| 368 var hiddenKey = 'telemetry_hide_' + this.id(); | 360 var hiddenKey = 'telemetry_hide_' + this.id(); |
| 369 } | 361 } |
| 370 | 362 |
| 371 function PerfTestMetric(name, metric, unit, isImportant) { | 363 function PerfTestMetric(name, metric, unit, isImportant) { |
| 372 var testResults = []; | 364 var testResults = []; |
| 373 var cachedUnit = null; | 365 var cachedUnit = null; |
| 374 var cachedScalingFactor = null; | 366 var cachedScalingFactor = null; |
| (...skipping 881 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1256 | 1248 |
| 1257 var referenceClass = shouldCompare ? '' : 'reference'; | 1249 var referenceClass = shouldCompare ? '' : 'reference'; |
| 1258 | 1250 |
| 1259 var statistics = 'σ=' + toFixedWidthPrecision(result.confidenceInterva
lDelta()) + ', min=' + toFixedWidthPrecision(result.min()) | 1251 var statistics = 'σ=' + toFixedWidthPrecision(result.confidenceInterva
lDelta()) + ', min=' + toFixedWidthPrecision(result.min()) |
| 1260 + ', max=' + toFixedWidthPrecision(result.max()) + '\n' + regressionAnalysi
s; | 1252 + ', max=' + toFixedWidthPrecision(result.max()) + '\n' + regressionAnalysi
s; |
| 1261 | 1253 |
| 1262 var confidence; | 1254 var confidence; |
| 1263 if (isNaN(result.confidenceIntervalDeltaRatio())) { | 1255 if (isNaN(result.confidenceIntervalDeltaRatio())) { |
| 1264 // Don't bother showing +- Nan as it is meaningless | 1256 // Don't bother showing +- Nan as it is meaningless |
| 1265 confidence = ''; | 1257 confidence = ''; |
| 1266 } else { | 1258 } else { |
| 1267 confidence = '± ' + formatPercentage(result.confidenceIntervalDel
taRatio()); | 1259 confidence = '± ' + formatPercentage(result.confidenceIntervalDel
taRatio()); |
| 1268 } | 1260 } |
| 1269 | 1261 |
| 1270 return '<td class="result ' + referenceClass + '" title="' + statistics + '"
>' + toFixedWidthPrecision(result.mean()) | 1262 return '<td class="result ' + referenceClass + '" title="' + statistics + '"
>' + toFixedWidthPrecision(result.mean()) |
| 1271 + '</td><td class="confidenceIntervalDelta ' + referenceClass + '" title
="' + statistics + '">' + confidence + warning + '</td>' + comparisonCell; | 1263 + '</td><td class="confidenceIntervalDelta ' + referenceClass + '" title
="' + statistics + '">' + confidence + warning + '</td>' + comparisonCell; |
| 1272 } | 1264 } |
| 1273 | 1265 |
| 1274 TableRow.prototype.markupForMissingRun = function(isReference) { | 1266 TableRow.prototype.markupForMissingRun = function(isReference) { |
| 1275 if (isReference) { | 1267 if (isReference) { |
| 1276 return '<td colspan=2 class="missingReference">Missing</td>'; | 1268 return '<td colspan=2 class="missingReference">Missing</td>'; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 1302 | 1294 |
| 1303 this.children.forEach(function(child) { | 1295 this.children.forEach(function(child) { |
| 1304 child.setVisibility(VISIBLE); | 1296 child.setVisibility(VISIBLE); |
| 1305 }); | 1297 }); |
| 1306 | 1298 |
| 1307 if (this.children.length === 1) { | 1299 if (this.children.length === 1) { |
| 1308 // If we only have a single child... | 1300 // If we only have a single child... |
| 1309 var child = this.children[0]; | 1301 var child = this.children[0]; |
| 1310 if (child.isImportant) { | 1302 if (child.isImportant) { |
| 1311 // ... and it is important (i.e. the summary row) just open it when | 1303 // ... and it is important (i.e. the summary row) just open it when |
| 1312 // parent is opened to save needless clicking | 1304 // parent is opened to save needless clicking |
| 1313 child.openRow(); | 1305 child.openRow(); |
| 1314 } | 1306 } |
| 1315 } | 1307 } |
| 1316 } | 1308 } |
| 1317 | 1309 |
| 1318 TableRow.prototype.closeRow = function() { | 1310 TableRow.prototype.closeRow = function() { |
| 1319 if (this.rowState === COLLAPSED) { | 1311 if (this.rowState === COLLAPSED) { |
| 1320 return; | 1312 return; |
| 1321 } | 1313 } |
| 1322 | 1314 |
| (...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 1423 } else { | 1415 } else { |
| 1424 $('#undelete').hide(); | 1416 $('#undelete').hide(); |
| 1425 } | 1417 } |
| 1426 } | 1418 } |
| 1427 | 1419 |
| 1428 </script> | 1420 </script> |
| 1429 <script id="results-json" type="application/json">%json_results%</script> | 1421 <script id="results-json" type="application/json">%json_results%</script> |
| 1430 <script id="units-json" type="application/json">%json_units%</script> | 1422 <script id="units-json" type="application/json">%json_units%</script> |
| 1431 </body> | 1423 </body> |
| 1432 </html> | 1424 </html> |
| OLD | NEW |