summaryrefslogtreecommitdiff
path: root/obbenchlib/benchmarker.py
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2016-03-13 17:17:56 +0200
committerLars Wirzenius <liw@liw.fi>2016-03-13 17:17:56 +0200
commitad95b439e7b48ef459f68fbec34ac7c4b459ef2e (patch)
tree2effc095806dec1c0f3586f23b103d4a5f70f9bf /obbenchlib/benchmarker.py
parent30847030b02ad8d3323c1bd999d04728b8679ada (diff)
downloadobnam-benchmarks-ad95b439e7b48ef459f68fbec34ac7c4b459ef2e.tar.gz
Report VmRSS values for Obnam
Diffstat (limited to 'obbenchlib/benchmarker.py')
-rw-r--r--obbenchlib/benchmarker.py13
1 files changed, 12 insertions, 1 deletions
diff --git a/obbenchlib/benchmarker.py b/obbenchlib/benchmarker.py
index 05a811c..971d8aa 100644
--- a/obbenchlib/benchmarker.py
+++ b/obbenchlib/benchmarker.py
@@ -168,7 +168,10 @@ class Benchmarker(object):
result.set_value(obnam_subcommand, 'profile', self.read_profile())
result.set_value(
obnam_subcommand, 'profile-text', self.read_profile_text())
- result.set_value(obnam_subcommand, 'log', self.read_log_file())
+
+ log = self.read_log_file()
+ result.set_value(obnam_subcommand, 'log', log)
+ result.set_value(obnam_subcommand, 'vmrss', self.find_max_vmrss(log))
def run_obnam_backup(self):
self.run_obnam(['backup'])
@@ -195,6 +198,14 @@ class Benchmarker(object):
with open(self._logfile) as f:
return f.read()
+ def find_max_vmrss(self, log_text):
+ vmrss = 0
+ for line in log_text.splitlines():
+ words = line.split()
+ if len(words) == 6 and words[2:4] == ['DEBUG', 'VmRSS:']:
+ vmrss = max(vmrss, int(words[4]))
+ return vmrss * 1024
+
def read_profile_text(self):
f = StringIO.StringIO()
filename = os.path.join(self._srcdir, self.profile_name)