diff options
| author | Florian Fischer <florian.fl.fischer@fau.de> | 2020-02-20 02:32:30 +0100 |
|---|---|---|
| committer | Florian Fischer <florian.fl.fischer@fau.de> | 2020-02-20 02:32:30 +0100 |
| commit | c32945d3e803617ee3307a98e27cacc53a1c7f3f (patch) | |
| tree | 54c3b10a8fd473c54e952d6629da573d541a1e3f /src/benchmarks/keydb.py | |
| parent | b11b0b130a15f863ba1e0b851033a9e76cc4a8f2 (diff) | |
| download | allocbench-c32945d3e803617ee3307a98e27cacc53a1c7f3f.tar.gz allocbench-c32945d3e803617ee3307a98e27cacc53a1c7f3f.zip | |
only build keydb or memtier_benchmark if they don't exists
Diffstat (limited to 'src/benchmarks/keydb.py')
| -rw-r--r-- | src/benchmarks/keydb.py | 52 |
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): |
