[perf] Include monitor layout in performance reports
Add extra key, 'monitors' to performance reports which is an array of strings: *<width>x<height>+<x>+<y> Where * marks the primary monitor. https://bugzilla.gnome.org/show_bug.cgi?id=618189
This commit is contained in:
parent
20d579e7d8
commit
e7220591ba
@ -148,6 +148,23 @@ function _collect(scriptModule, outputFile) {
|
||||
Shell.write_string_to_stream(out, '"events":\n');
|
||||
Shell.PerfLog.get_default().dump_events(out);
|
||||
|
||||
let monitors = global.get_monitors()
|
||||
let primary = global.get_primary_monitor()
|
||||
Shell.write_string_to_stream(out, ',\n"monitors":\n[');
|
||||
for (let i = 0; i < monitors.length; i++) {
|
||||
let monitor = monitors[i];
|
||||
let is_primary = (monitor.x == primary.x &&
|
||||
monitor.y == primary.y &&
|
||||
monitor.width == primary.width &&
|
||||
monitor.height == primary.height);
|
||||
if (i != 0)
|
||||
Shell.write_string_to_stream(out, ', ');
|
||||
Shell.write_string_to_stream(out, '"%s%dx%d+%d+%d"'.format(is_primary ? "*" : "",
|
||||
monitor.width, monitor.height,
|
||||
monitor.x, monitor.y));
|
||||
}
|
||||
Shell.write_string_to_stream(out, ' ]');
|
||||
|
||||
Shell.write_string_to_stream(out, ',\n"metrics":\n[ ');
|
||||
let first = true;
|
||||
for (let name in scriptModule.METRICS) {
|
||||
|
@ -313,9 +313,10 @@ def run_performance_test():
|
||||
finally:
|
||||
os.remove(output_file)
|
||||
|
||||
# Grab the event definitions the first time around
|
||||
# Grab the event definitions and monitor layout the first time around
|
||||
if i == 0:
|
||||
events = output['events']
|
||||
monitors = output['monitors']
|
||||
|
||||
if options.perf_warmup and i == 0:
|
||||
continue
|
||||
@ -344,6 +345,7 @@ def run_performance_test():
|
||||
report = {
|
||||
'date': datetime.datetime.now().isoformat(),
|
||||
'events': events,
|
||||
'monitors': monitors,
|
||||
'metrics': metric_summaries,
|
||||
'logs': logs
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user