#!/usr/bin/env python from gnuplot import gnuplot, FORMATS plugins = ['GSN-EDF', 'G-EDF', 'GQ-EDF', 'GHQ-EDF'] master = ['NO_CPU', '3'] events = ['SCHED', 'SCHED2', 'TICK', 'CXS', 'RELEASE', 'SEND_RESCHED'] def graph(plugin, master, event, wc): return ['%s.R-%s.%s.csv' % (plugin, master, event), 1, 3 if wc else 2, '%s %s %s %s' % (plugin, event, 'RM' if master != 'NO_CPU' else '', 'WC' if wc else 'AVG')] def by_event(wc): for e in events: gs = [] for p in plugins: for m in master: if (p != 'GHQ-EDF' or m == 'NO_CPU') and \ (p != 'GQ-EDF' or e != 'SEND_RESCHED'): gs += [graph(p, m, e, wc)] gnuplot(gs, title='%s %s' % (e, 'WC' if wc else 'AVG')) by_event(True) by_event(False)