Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(69)

Unified Diff: tools/testing/perf_testing/create_graph.py

Issue 8883033: Added barebones framework to get appengine to host our test data. (Closed) Base URL: http://dart.googlecode.com/svn/branches/bleeding_edge/dart/
Patch Set: Created 9 years ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: tools/testing/perf_testing/create_graph.py
===================================================================
--- tools/testing/perf_testing/create_graph.py (revision 2282)
+++ tools/testing/perf_testing/create_graph.py (working copy)
@@ -60,8 +60,7 @@
if append:
mode = 'a'
out = open(outfile, mode)
- p = subprocess.Popen(cmd_list, stdout = out,
- stderr = subprocess.PIPE, close_fds=True)
+ p = subprocess.Popen(cmd_list, stdout = out, stderr = subprocess.PIPE)
output, not_used = p.communicate();
if output:
print output
@@ -147,6 +146,22 @@
else:
return V8_AND_FROG
+def UploadToAppEngine():
+ """Upload our results to our appengine server."""
+ # TODO(efortuna): This is the most basic way to get the data up
+ # for others to view. Revisit this once you're serving nicer graphs (Google
Siggi Cherem (dart-lang) 2011/12/09 01:00:17 you're -> we're? (here and below)
+ # Chart Tools) and from multiple perfbots and once you're in a position to
+ # organize the data in a useful manner(!!).
+ os.chdir(os.path.join(DART_INSTALL_LOCATION, 'tools', 'testing',
+ 'perf_testing'))
+ shutil.rmtree(os.path.join('appengine', 'static', 'graphs'),
+ ignore_errors=True)
+ shutil.copytree('graphs', os.path.join('appengine', 'static', 'graphs'))
+ shutil.copyfile('index.html', os.path.join('appengine', 'static',
+ 'index.html'))
+ RunCmd(['../../../third_party/appengine-python/1.5.4/appcfg.py', 'update',
+ 'appengine/'])
+
class TestRunner(object):
"""The base clas to provide shared code for different tests we will run and
graph."""
@@ -233,7 +248,7 @@
def AddSvnRevisionToTrace(self, outfile):
"""Add the svn version number to the provided tracefile."""
p = subprocess.Popen(['svn', 'info'], stdout = subprocess.PIPE,
- stderr = subprocess.STDOUT, close_fds=True)
+ stderr = subprocess.STDOUT)
output, not_used = p.communicate()
for line in output.split('\n'):
if 'Revision' in line:
@@ -294,7 +309,8 @@
def Run(self):
"""Run the benchmarks/tests from the command line and plot the
results."""
- plt.cla() # cla = clear current axes
+ if PERFBOT_MODE:
+ plt.cla() # cla = clear current axes
os.chdir(DART_INSTALL_LOCATION)
EnsureOutputDirectory(self.result_folder_name)
EnsureOutputDirectory(GRAPH_OUT_DIR)
@@ -706,6 +722,9 @@
if perf:
BrowserPerformanceTestRunner('browser-perf').Run()
+ if PERFBOT_MODE:
+ UploadToAppEngine()
+
def main():
global PERFBOT_MODE, VERBOSE
(cl, size, language, perf, continuous, perfbot, verbose) = ParseArgs()

Powered by Google App Engine
This is Rietveld 408576698