aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Fischer <florian.fl.fischer@fau.de>2020-02-20 02:32:30 +0100
committerFlorian Fischer <florian.fl.fischer@fau.de>2020-02-20 02:32:30 +0100
commitc32945d3e803617ee3307a98e27cacc53a1c7f3f (patch)
tree54c3b10a8fd473c54e952d6629da573d541a1e3f
parentb11b0b130a15f863ba1e0b851033a9e76cc4a8f2 (diff)
downloadallocbench-c32945d3e803617ee3307a98e27cacc53a1c7f3f.tar.gz
allocbench-c32945d3e803617ee3307a98e27cacc53a1c7f3f.zip
only build keydb or memtier_benchmark if they don't exists
-rw-r--r--src/benchmarks/keydb.py52
1 files changed, 29 insertions, 23 deletions
diff --git a/src/benchmarks/keydb.py b/src/benchmarks/keydb.py
index cae0e7f..e3ef339 100644
--- a/src/benchmarks/keydb.py
+++ b/src/benchmarks/keydb.py
@@ -49,41 +49,47 @@ class BenchmarkKeyDB(Benchmark):
def prepare(self):
super().prepare()
- os.makedirs(self.build_dir, exist_ok=True)
keydb_version = "v5.3.1"
self.results["facts"]["versions"]["keydb"] = keydb_version
- keydb = GitArtifact("keydb", "https://github.com/JohnSully/KeyDB")
-
keydb_dir = os.path.join(self.build_dir, "keydb")
- keydb.provide(keydb_version, keydb_dir)
- # building keyDB
- run_cmd(["make", "-C", keydb_dir, "MALLOC=libc"])
+ if not os.path.exists(os.path.join(self.build_dir, "keydb-server")):
+ keydb = GitArtifact("keydb", "https://github.com/JohnSully/KeyDB")
- # create symlinks
- for exe in ["keydb-cli", "keydb-server"]:
- src = os.path.join(keydb_dir, "src", exe)
- dest = os.path.join(self.build_dir, exe)
- if not os.path.exists(dest):
- os.link(src, dest)
+ os.makedirs(self.build_dir, exist_ok=True)
+
+ # checkout sources
+ keydb.provide(keydb_version, keydb_dir)
+
+ # building keyDB
+ run_cmd(["make", "-C", keydb_dir, "MALLOC=libc"])
+
+ # create symlinks
+ for exe in ["keydb-cli", "keydb-server"]:
+ src = os.path.join(keydb_dir, "src", exe)
+ dest = os.path.join(self.build_dir, exe)
+ if not os.path.exists(dest):
+ os.link(src, dest)
memtier_version = "1.2.17"
self.results["facts"]["versions"]["memtier"] = memtier_version
- memtier = GitArtifact("memtier", "https://github.com/RedisLabs/memtier_benchmark")
-
memtier_dir = os.path.join(self.build_dir, "memtier")
- memtier.provide(memtier_version, memtier_dir)
- # building memtier
- run_cmd(["autoreconf", "-ivf"], cwd=memtier_dir)
- run_cmd(["./configure"], cwd=memtier_dir)
- run_cmd(["make"], cwd=memtier_dir)
+ if not os.path.exists(os.path.join(self.build_dir, "memtier_benchmark")):
+ memtier = GitArtifact("memtier", "https://github.com/RedisLabs/memtier_benchmark")
+
+ memtier.provide(memtier_version, memtier_dir)
+
+ # building memtier
+ run_cmd(["autoreconf", "-ivf"], cwd=memtier_dir)
+ run_cmd(["./configure"], cwd=memtier_dir)
+ run_cmd(["make"], cwd=memtier_dir)
- src = os.path.join(memtier_dir, "memtier_benchmark")
- dest = os.path.join(self.build_dir, "memtier_benchmark")
- if not os.path.exists(dest):
- os.link(src, dest)
+ src = os.path.join(memtier_dir, "memtier_benchmark")
+ dest = os.path.join(self.build_dir, "memtier_benchmark")
+ if not os.path.exists(dest):
+ os.link(src, dest)
@staticmethod
def process_output(result, stdout, stderr, allocator, perm):