in benchmark/data/paper-data/plot-script.py [0:0]
def _print_tps(self, scalability):
records = deepcopy(self.records)
organized = defaultdict(list)
for max_latency in self.max_latencies:
for setup, result in records.items():
setup = deepcopy(setup)
if result.mean_latency <= max_latency:
setup.rate = 'any'
setup.max_latency = max_latency
if scalability:
variable = setup.workers
setup.workers = 'x'
else:
variable = setup.nodes
setup.nodes = 'x'
new_point = all(variable != x[0] for x in organized[setup])
highest_tps = False
for v, r in organized[setup]:
if result.mean_tps > r.mean_tps and variable == v:
organized[setup].remove((v, r))
highest_tps = True
if new_point or highest_tps:
organized[setup] += [(variable, result)]
[v.sort(key=lambda x: x[0]) for v in organized.values()]
return 'tps', organized