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

Side by Side Diff: client/tests/kernbench/kernbench.py

Issue 6246035: Merge remote branch 'cros/upstream' into master (Closed) Base URL: ssh://git@gitrw.chromium.org:9222/autotest.git@master
Patch Set: patch Created 9 years, 10 months 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 unified diff | Download patch | Annotate | Revision Log
OLDNEW
1 import re, pickle, os, logging 1 import re, pickle, os, logging
2 from autotest_lib.client.bin import utils, test 2 from autotest_lib.client.bin import utils, test
3 3
4 4
5 class kernbench(test.test): 5 class kernbench(test.test):
6 version = 4 6 version = 4
7 7
8 def initialize(self): 8 def initialize(self):
9 self.job.require_gcc() 9 self.job.require_gcc()
10 self.job.drop_caches_between_iterations = False 10 self.job.drop_caches_between_iterations = False
(...skipping 31 matching lines...) Expand 10 before | Expand all | Expand 10 after
42 return kernel 42 return kernel
43 43
44 44
45 def warmup(self, threads=None, version=None): 45 def warmup(self, threads=None, version=None):
46 if threads: 46 if threads:
47 self.threads = threads 47 self.threads = threads
48 else: 48 else:
49 self.threads = self.job.cpu_count()*2 49 self.threads = self.job.cpu_count()*2
50 50
51 self.kernel = self.__init_tree(version) 51 self.kernel = self.__init_tree(version)
52 logging.info("Warmup run ...")
52 logfile = os.path.join(self.debugdir, 'build_log') 53 logfile = os.path.join(self.debugdir, 'build_log')
53 54 try:
54 logging.info("Warmup run ...") 55 self.kernel.build_timed(self.threads, output=logfile) # warmup run
55 self.kernel.build_timed(self.threads, output=logfile) # warmup run 56 finally:
57 if os.path.exists(logfile):
58 utils.system("gzip -9 '%s'" % logfile, ignore_status=True)
56 59
57 60
58 def run_once(self): 61 def run_once(self):
59 logging.info("Performance run, iteration %d," 62 logging.info("Performance run, iteration %d,"
60 " %d threads" % (self.iteration, self.threads)) 63 " %d threads" % (self.iteration, self.threads))
61 if self.iteration: 64 if self.iteration:
62 timefile = 'time.%d' % self.iteration 65 timefile = 'time.%d' % self.iteration
63 else: 66 else:
64 timefile = 'time.profile' 67 timefile = 'time.profile'
65 self.timefile = os.path.join(self.resultsdir, timefile) 68 self.timefile = os.path.join(self.resultsdir, timefile)
66 self.kernel.build_timed(self.threads, self.timefile) 69 self.kernel.build_timed(self.threads, self.timefile)
67 70
68 71
69 def cleanup(self): 72 def cleanup(self):
70 self.kernel.clean(logged=False) # Don't leave litter lying around 73 self.kernel.clean(logged=False) # Don't leave litter lying around
71 74
72 75
73 def postprocess_iteration(self): 76 def postprocess_iteration(self):
74 os.chdir(self.resultsdir) 77 os.chdir(self.resultsdir)
75 utils.system("grep -h elapsed %s >> time" % self.timefile) 78 utils.system("grep -h elapsed %s >> time" % self.timefile)
76 79
77 results = open(self.timefile).read() 80 results = open(self.timefile).read()
78 (user, system, elapsed) = utils.extract_all_time_results(results)[0] 81 (user, system, elapsed) = utils.extract_all_time_results(results)[0]
79 self.write_perf_keyval({'user':user, 82 self.write_perf_keyval({'user':user,
80 'system':system, 83 'system':system,
81 'elapsed':elapsed 84 'elapsed':elapsed
82 }) 85 })
OLDNEW
« cli/job.py ('K') | « client/tests/iozone/iozone.py ('k') | client/tests/kvm/__init__.py » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698