if i>0: kver=v[:i]
else: kver=v
return v+"<br><a href='config-%s'>config</a>"%(urllib.quote(kver))
+ def versions(self):
+ for v in self.values:
+ i=v.find(":")
+ if i>0: kver=v[:i]
+ else: kver=v
+ yield kver
+
class AxisClck(Axis):
tests = AxisTest()
class PageSet:
- def __init__(self, values, x, y):
+ def __init__(self, pageclass, values, x, y):
+ self.pageclass = pageclass
self.values = values
self.x = x
self.y = y
def getPages(self):
for v in self.values:
- yield Page(self.values.type, str(self.values), v, self.x, self.y)
+ yield self.pageclass(v, self.x, self.y)
class Page:
- def __init__(self, prefix, name, value, xvals, yvals):
- self.prefix = prefix
- self.name = name
+ def __init__(self, value, xvals, yvals):
self.value = value
self.xvals = xvals
self.yvals = yvals
<style>
img { border: 0; }
table { border-collapse: collapse; }
-td { border: 1px solid lightgray; padding: 4px;}
+th, td { border: 1px solid lightgray; padding: 4px;}
</style>
</head>
<body>
<h1>CAN driver benchmark for %s %s</h1>""" % (self.name, self.value, self.name, self.value)
for ps in pagesets:
- print >>html, "View only %s: " % str(ps.values)
+ print >>html, "View only %s: " % str(ps.pageclass.name)
for v in ps.values:
print >>html, "<a href='%s-%s.html'>%s</a> | "%(ps.values.type, urllib.quote(v), v)
print >>html, "<br>"
+ try:
+ print >>html, self.getPreambule()
+ except Exception:
+ pass
print >>html, "<table><thead><tr><td> </td>"
for x in self.xvals.labels():
print >>html, "<th>%s</th>" % x
print >>html, "</tr></thead>"
for y in self.yvals:
- print >>html, "<tr><td>%s</td>" % self.yvals.getLabel(y)
+ print >>html, "<tr><th>%s</th>" % self.yvals.getLabel(y)
for x in self.xvals:
print >>html, "<td>"
</body>
"""
-
-pagesets = [ PageSet(kernels, clocks, tests),
- PageSet(tests, clocks, kernels),
- PageSet(clocks, kernels, tests)]
+class PageKern(Page):
+ prefix = 'kern'
+ name = 'kernel'
+ def __init__(self, value, xvals, yvals):
+ Page.__init__(self, value, xvals, yvals)
+ def getPreambule(self):
+ i=self.value.find(":")
+ if i>0: kver=self.value[:i]
+ else: kver=self.value
+ return "<p><a href='config-%s'>Kernel config</a></p>"%kver
+
+class PageClck(Page):
+ prefix = 'clck'
+ name = 'CPU clock'
+ def __init__(self, value, xvals, yvals):
+ Page.__init__(self, value, xvals, yvals)
+
+class PageTest(Page):
+ prefix = 'test'
+ name = 'test'
+ def __init__(self, value, xvals, yvals):
+ Page.__init__(self, value, xvals, yvals)
+ def getPreambule(self):
+ return "<p><a href='%s.sh.html'>Test source</a></p>"%(urllib.quote(self.value))
+
+
+
+pagesets = [ PageSet(PageKern, kernels, clocks, tests),
+ PageSet(PageTest, tests, clocks, kernels),
+ PageSet(PageClck, clocks, kernels, tests)]
for ps in pagesets:
for p in ps.getPages():
os.remove("index.html")
except OSError: pass
-os.symlink("%s-%s.html"%(kernels.type, kernels[0]), "index.html")
+os.symlink("%s-%s.html"%(clocks.type, clocks[0]), "index.html")
os.system("source-highlight -d --output-dir=. ../*.sh")
-
+for v in kernels.versions():
+ os.system("cp /boot/config-%s ."%v)