haskell-te: 033e935507a877cd26359b66c6de1b4ea5e8b1ba
1: From: Chris Warburton
2: Date: Tue, 01 Aug 2017 17:47:12 +0100
3: State: resolved
4: Subject: See if our benchmark setup could be built by Nix
5: Message-Id: <a48cf44569ff379d-0-artemis@nixos>
6: resolution: fixed
7:
8: The setup_cache functions in our benchmarks are getting quite
9: complicated. There's a lot this that we could probably do with Nix,
10: rather than just giving access to a few env vars.
11:
12: We specifically DON'T want to run the benchmarking tools via Nix, since
13: that can cause them to interfere (e.g. if Nix builds a bunch of stuff in
14: parallel).
15:
16: We can do the sampling, translation, etc. up front in Nix.
17:
18: We can turn the parameters.py file into a JSON file, which can be read
19: by Nix (and maybe passed in to Python via the environment?)
20:
21: Analysing the results will still need to be done from Python, since that
22: requires the stdout of the benchmarked runs. We might be able to package
23: this up a little better though.
24:
25: I think there's a balance to be struck in general:
26:
27: - Nix is good at running programs, reading files, setting up
28: environments, etc. so it should be used for that.
29: - Python is good for manipulating data (e.g. JSON or otherwise).
30:
31: We should focus each on their strengths. In particular, we can use
32: Python instead of jq in Nix, and we can use Nix instead of subprocess32
33: in Python.
Generated by git2html.