def _generate_stats(self, executable): stats_file = Output(executable=executable, benchmark=self.name, label=self.instances, extension='.stats') with say("Generating stats for %s..." % executable), stats_file.open('w') as f: say("%s%s" % (self.xlabel.ljust(20), "Time (s)")) for input in self.inputs(): time = executable.average(input, self.executions) f.write("%d %.4f\n" % (input.label, time)) say("%s%.4f" % (str(input.label).ljust(20), time)) return stats_file
def generate_stats(self): original_stat = Output(self._original, benchmark=self.name, label=self.instances, extension='.stats') if not original_stat.exists(): raise RuntimeError("Original stats file for benchmark %s does not exist. Run checkpoint first." % self.name) files = [original_stat] files.extend([self._generate_stats(candidate) for candidate in self._candidates]) return self.stats_class( name=self.name, xlabel=self.xlabel, files=files )