aboutsummaryrefslogtreecommitdiff
path: root/src/larson.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/larson.py')
-rw-r--r--src/larson.py46
1 files changed, 0 insertions, 46 deletions
diff --git a/src/larson.py b/src/larson.py
deleted file mode 100644
index e070b7b..0000000
--- a/src/larson.py
+++ /dev/null
@@ -1,46 +0,0 @@
-import re
-
-from src.benchmark import Benchmark
-
-throughput_re = re.compile("^Throughput =\s*(?P<throughput>\d+) operations per second.$")
-
-
-class Benchmark_Larson(Benchmark):
- def __init__(self):
- self.name = "larson"
- self.descrition = """This benchmark is courtesy of Paul Larson at
- Microsoft Research. It simulates a server: each
- thread allocates and deallocates objects, and then
- transfers some objects (randomly selected) to
- other threads to be freed."""
-
- self.cmd = "larson{binary_suffix} 1 8 {maxsize} 1000 50000 1 {threads}"
-
- self.args = {
- "maxsize": [8, 32, 64, 128, 256, 512, 1024],
- "threads": Benchmark.scale_threads_for_cpus(2)
- }
-
- self.requirements = ["larson"]
- super().__init__()
-
- def process_output(self, result, stdout, stderr, target, perm, verbose):
- for l in stdout.splitlines():
- res = throughput_re.match(l)
- if res:
- result["throughput"] = int(res.group("throughput"))
- return
-
- def summary(self):
- # Plot threads->throughput and maxsize->throughput
- self.plot_fixed_arg("{throughput}/1000000",
- ylabel="'MOPS/s'",
- title="'Larson: ' + arg + ' ' + str(arg_value)",
- filepostfix="throughput")
-
- self.plot_fixed_arg("({L1-dcache-load-misses}/{L1-dcache-loads})*100",
- ylabel="'l1 cache misses in %'",
- title="'Larson cache misses: ' + arg + ' ' + str(arg_value)",
- filepostfix="cachemisses")
-
-larson = Benchmark_Larson()