2020-12-07 13:33:42 +01:00
|
|
|
{
|
|
|
|
super
|
|
|
|
, self
|
|
|
|
, bsc
|
|
|
|
, garlic
|
|
|
|
, callPackage
|
|
|
|
}:
|
|
|
|
|
|
|
|
let
|
|
|
|
rPlot = garlic.pp.rPlot;
|
2021-02-03 12:39:44 +01:00
|
|
|
exp = garlic.exp;
|
|
|
|
pp = garlic.pp;
|
2021-03-01 11:38:28 +01:00
|
|
|
ds = garlic.ds;
|
2021-03-03 12:41:31 +01:00
|
|
|
fig = garlic.fig;
|
2021-02-03 12:39:44 +01:00
|
|
|
|
2021-03-01 11:38:28 +01:00
|
|
|
stdPlot = rScript: expList: rPlot {
|
2021-02-03 13:02:18 +01:00
|
|
|
script = rScript;
|
2021-03-01 11:38:28 +01:00
|
|
|
dataset = pp.mergeDatasets (map (e: ds.std.timetable e.result) expList);
|
2021-02-03 13:02:18 +01:00
|
|
|
};
|
2021-03-01 12:19:10 +01:00
|
|
|
|
|
|
|
customPlot = rScript: dataset: rPlot {
|
|
|
|
script = rScript;
|
|
|
|
dataset = dataset;
|
|
|
|
};
|
2021-03-03 12:41:31 +01:00
|
|
|
|
|
|
|
linkTree = name: tree: self.linkFarm name (
|
|
|
|
self.lib.mapAttrsToList (
|
|
|
|
name: value: { name=name; path=value; }
|
|
|
|
) tree);
|
2020-12-07 13:33:42 +01:00
|
|
|
in
|
|
|
|
{
|
2021-02-03 12:39:44 +01:00
|
|
|
nbody = with exp.nbody; {
|
2021-03-01 11:38:28 +01:00
|
|
|
baseline = stdPlot ./nbody/baseline.R [ baseline ];
|
|
|
|
small = stdPlot ./nbody/baseline.R [ small ];
|
|
|
|
jemalloc = stdPlot ./nbody/jemalloc.R [ baseline jemalloc ];
|
|
|
|
ctf = stdPlot ./nbody/baseline.R [ ctf ];
|
2021-02-03 13:03:28 +01:00
|
|
|
scaling = stdPlot ./nbody/baseline.R [ scaling ];
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
2021-02-03 13:02:18 +01:00
|
|
|
hpcg = with exp.hpcg; {
|
2021-03-01 11:38:28 +01:00
|
|
|
oss = stdPlot ./hpcg/oss.R [ oss ];
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
2021-02-03 13:02:18 +01:00
|
|
|
saiph = with exp.saiph; {
|
2021-03-01 11:38:28 +01:00
|
|
|
granularity = stdPlot ./saiph/granularity.R [ granularity ];
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
2021-02-03 13:02:18 +01:00
|
|
|
heat = with exp.heat; {
|
2021-03-05 18:28:32 +01:00
|
|
|
granul = stdPlot ./heat/granul.R [ granul ];
|
2021-03-05 18:31:31 +01:00
|
|
|
cache = customPlot ./heat/cache.R (ds.perf.stat cache.result);
|
2021-03-12 12:14:51 +01:00
|
|
|
ctf = customPlot ./heat/mode.R (ds.ctf.mode ctf.result);
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
2020-12-18 12:26:40 +01:00
|
|
|
|
2021-02-03 13:02:18 +01:00
|
|
|
creams = with exp.creams; {
|
2021-03-01 11:38:28 +01:00
|
|
|
ss = stdPlot ./creams/ss.R [ ss.hybrid ss.pure ];
|
2020-12-18 12:26:40 +01:00
|
|
|
};
|
2021-02-23 17:52:48 +01:00
|
|
|
|
|
|
|
osu = with exp.osu; {
|
2021-03-03 12:39:23 +01:00
|
|
|
latency = customPlot ./osu/latency.R (ds.osu.latency latency.result);
|
|
|
|
latencyShm = customPlot ./osu/latency.R (ds.osu.latency latencyShm.result);
|
|
|
|
latencyMt = customPlot ./osu/latency.R (ds.osu.latency latencyMt.result);
|
|
|
|
latencyMtShm = customPlot ./osu/latency.R (ds.osu.latency latencyMtShm.result);
|
2021-03-01 12:19:10 +01:00
|
|
|
|
2021-03-03 12:39:23 +01:00
|
|
|
bw = customPlot ./osu/bw.R (ds.osu.bw bw.result);
|
2021-03-01 12:19:10 +01:00
|
|
|
bwShm = customPlot ./osu/bw.R (ds.osu.bw bwShm.result);
|
2021-03-03 12:40:15 +01:00
|
|
|
impi = customPlot ./osu/impi.R (ds.osu.bw impi.result);
|
2021-02-23 17:52:48 +01:00
|
|
|
};
|
2021-03-03 12:41:31 +01:00
|
|
|
|
|
|
|
# The figures used in the article contained in a directory per figure
|
|
|
|
article = with fig; linkTree "article-fig" {
|
|
|
|
"osu/latency" = osu.latency;
|
|
|
|
"osu/latencyMt" = osu.latencyMt;
|
|
|
|
"osu/bw" = osu.bw;
|
|
|
|
"osu/bwShm" = osu.bwShm;
|
2021-03-09 18:21:22 +01:00
|
|
|
"heat/cache" = heat.cache;
|
2021-03-03 12:41:31 +01:00
|
|
|
};
|
2021-03-12 19:33:40 +01:00
|
|
|
|
|
|
|
examples = with exp.examples; {
|
|
|
|
granularity = stdPlot ./examples/granularity.R [ granularity ];
|
|
|
|
};
|
2020-12-07 13:33:42 +01:00
|
|
|
}
|