From ad95b439e7b48ef459f68fbec34ac7c4b459ef2e Mon Sep 17 00:00:00 2001 From: Lars Wirzenius Date: Sun, 13 Mar 2016 17:17:56 +0200 Subject: Report VmRSS values for Obnam --- obbenchlib/benchmarker.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'obbenchlib/benchmarker.py') 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) -- cgit v1.2.1