From 7602a4cf4f5174233c28aab5df17bf3dca838f03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bj=C3=B6rn=20B=2E=20Brandenburg?= Date: Tue, 12 Oct 2010 17:53:03 -0400 Subject: update semi-part plotting style --- plot.py | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 63 insertions(+), 11 deletions(-) (limited to 'plot.py') diff --git a/plot.py b/plot.py index 6984311..b1c2f9b 100755 --- a/plot.py +++ b/plot.py @@ -525,33 +525,58 @@ class SchedPlotter(defapp.App): npsf_titles = [ ('NPS-F (load, delta=1)', 7), - ('NPS-F (load, delta=4)', 8), ('NPS-F (idle, delta=1)', 9), + ('NPS-F (load, delta=4)', 8), ('NPS-F (idle, delta=4)', 10), ] cnpsf_titles = [ ('C-NPS-F (load, delta=1)', 11), - ('C-NPS-F (load, delta=4)', 12), ('C-NPS-F (idle, delta=1)', 13), + ('C-NPS-F (load, delta=4)', 12), ('C-NPS-F (idle, delta=4)', 14), ] + npsf_comp = [ + ('NPS-F (idle, delta=1)', 9), + ('NPS-F (idle, delta=4)', 10), + ('NPS-F (load, delta=1)', 7), + ('C-NPS-F (idle, delta=1)', 13), + ('C-NPS-F (idle, delta=4)', 14), + ('NPS-F (load, delta=4)', 8), + ('C-NPS-F (load, delta=1)', 11), + ('C-NPS-F (load, delta=4)', 12), + ] + + edffm_titles = [ ('EDF-fm (load)', 15), ('EDF-fm (idle)', 16), ] + npsf_paper = [ + ('NPS-F (idle, delta=1)', 9), + ('NPS-F (load, delta=1)', 7), + ] + + paper_titles = cedf_titles + edfwm_titles + npsf_paper if self.options.alternate: # NPS-F comparison - titles = npsf_titles + cnpsf_titles + titles = npsf_comp else: # all - titles = cedf_titles + edfwm_titles + npsf_titles + cnpsf_titles + if self.options.paper: + titles = paper_titles + else: + titles = cedf_titles + edfwm_titles + npsf_titles + cnpsf_titles if 'soft' in conf: titles += edffm_titles + if self.options.slides: + # remove all idle configurations + titles = [t for i, t in enumerate(titles) if i % 2 == 0] + p = self.make_plot(name) p.title = scenario_heading(conf, True) @@ -561,15 +586,20 @@ class SchedPlotter(defapp.App): p.xlabel = "task set utilization cap (prior to overhead accounting)" p.xticks = (0, 1) p.xrange = (0.95, 24.05) - p.title += "; %skB WSS" % conf['key'] + p.title += "; WSS = %skB" % conf['key'] xcol = 2 elif 'wsched' in conf: xcol = 1 p.xlabel = "working set size (WSS)" p.ylabel = "weighted schedulability" p.xticks = (0, 64) + p.xrange = (-1, 1025) + if self.options.alternate: + p.xrange = (-1, 257) + p.xticks = (0, 32) else: self.err("What kind of semipart experiment is this?") + return p.curves += [curve(fname=tmpfile, xcol=xcol, ycol=idx, title=t) for (t, idx) in titles] @@ -583,12 +613,34 @@ class SchedPlotter(defapp.App): p.rounded_caps = True p.font = 'Helvetica' - p.font_size = '10' - p.size = ('20cm', '10cm') - p.monochrome = False - p.dashed_lines = False - p.key = 'below' - p.default_style = 'linespoints lw 1' + + if self.options.paper: + p.default_style = 'lines lw 2.5' + p.font_size = '5pt' + p.size = ('8.5cm', '5.25cm') + p.monochrome = False + p.dashed_lines = False + if not self.options.alternate: + p.key ='below' + p.size = ('14.5cm', '4cm') + p.yticks = (0, 0.2) + +# p.key = 'below' + p.default_style = 'linespoints lw 2.5' + elif self.options.slides: + p.dashed_lines = False + p.monochrome = False + p.rounded_caps = True + p.default_style = 'lines lw 10' + p.key = 'below' + p.xlabel = "task set utilization cap (prior to overhead accounting)" + else: + p.font_size = '10' + p.size = ('20cm', '10cm') + p.monochrome = False + p.dashed_lines = False + p.key = 'below' + p.default_style = 'linespoints lw 1' if self.options.smooth: p.default_style += " smooth bezier" -- cgit v1.2.2