2020-12-07 13:33:42 +01:00
|
|
|
{
|
|
|
|
super
|
|
|
|
, self
|
|
|
|
, bsc
|
|
|
|
, garlic
|
|
|
|
, callPackage
|
|
|
|
}:
|
|
|
|
|
|
|
|
{
|
|
|
|
nbody = rec {
|
|
|
|
baseline = callPackage ./nbody/nblocks.nix { };
|
|
|
|
|
|
|
|
# Experiment variants
|
|
|
|
small = baseline.override {
|
|
|
|
particles = 12 * 4096;
|
|
|
|
};
|
|
|
|
|
|
|
|
# Some experiments with traces
|
|
|
|
trace = {
|
|
|
|
# Only one unit repeated 30 times
|
|
|
|
baseline = small.override {
|
|
|
|
enableCTF = true;
|
|
|
|
loops = 30;
|
|
|
|
steps = 1;
|
|
|
|
};
|
|
|
|
|
|
|
|
};
|
2021-02-03 12:49:17 +01:00
|
|
|
|
|
|
|
scaling = callPackage ./nbody/scaling.nix {
|
|
|
|
particles = 12 * 4096;
|
|
|
|
};
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
saiph = {
|
2021-04-01 19:01:24 +02:00
|
|
|
granularity = callPackage ./saiph/granularity.nix { };
|
|
|
|
ss = callPackage ./saiph/ss.nix { };
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
2021-03-30 15:55:57 +02:00
|
|
|
creams = rec {
|
|
|
|
ss = callPackage ./creams/ss.nix { };
|
|
|
|
granularity = callPackage ./creams/granularity.nix { };
|
|
|
|
|
|
|
|
# These experiments are the extended versions of the previous
|
|
|
|
# ones. We split them so we can keep a reasonable execution time
|
|
|
|
big.granularity = granularity.override { enableExtended = true; };
|
|
|
|
big.ss = granularity.override { enableExtended = true; };
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
hpcg = rec {
|
|
|
|
#serial = callPackage ./hpcg/serial.nix { };
|
|
|
|
#mpi = callPackage ./hpcg/mpi.nix { };
|
|
|
|
#omp = callPackage ./hpcg/omp.nix { };
|
|
|
|
#mpi_omp = callPackage ./hpcg/mpi+omp.nix { };
|
|
|
|
#input = callPackage ./hpcg/gen.nix {
|
|
|
|
# inherit (bsc.garlic.pp) resultFromTrebuchet;
|
|
|
|
#};
|
|
|
|
genInput = callPackage ./hpcg/gen.nix {
|
|
|
|
};
|
|
|
|
|
|
|
|
oss = callPackage ./hpcg/oss.nix {
|
|
|
|
inherit genInput;
|
|
|
|
};
|
2021-02-23 18:24:21 +01:00
|
|
|
|
|
|
|
ossGranularity = callPackage ./hpcg/oss.granularity.192.nix {
|
|
|
|
inherit genInput;
|
|
|
|
};
|
|
|
|
|
2021-03-26 16:20:04 +01:00
|
|
|
# ossScalability = callPackage ./hpcg/oss.scalability.192.nix {
|
2021-02-23 18:24:21 +01:00
|
|
|
# inherit genInput;
|
|
|
|
# };
|
2021-03-26 16:20:04 +01:00
|
|
|
|
|
|
|
ossSlicesWeakscaling = callPackage ./hpcg/oss.slices.weakscaling.nix {
|
|
|
|
inherit genInput;
|
|
|
|
};
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
2021-03-09 18:45:33 +01:00
|
|
|
heat = rec {
|
2021-04-06 18:42:49 +02:00
|
|
|
granularity = callPackage ./heat/granularity.nix { };
|
|
|
|
cache = granularity.override { enablePerf = true; };
|
|
|
|
ctf = granularity.override { enableCTF = true; };
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
bigsort = rec {
|
|
|
|
genseq = callPackage ./bigsort/genseq.nix {
|
|
|
|
n = toString (1024 * 1024 * 1024 / 8); # 1 GB input size
|
|
|
|
dram = toString (1024 * 1024 * 1024); # 1 GB chunk
|
|
|
|
};
|
|
|
|
|
|
|
|
shuffle = callPackage ./bigsort/shuffle.nix {
|
|
|
|
inputTre = genseq;
|
|
|
|
n = toString (1024 * 1024 * 1024 / 8); # 1 GB input size
|
|
|
|
dram = toString (1024 * 1024 * 1024); # 1 GB chunk
|
|
|
|
inherit (bsc.garlic.pp) resultFromTrebuchet;
|
|
|
|
};
|
|
|
|
|
|
|
|
sort = callPackage ./bigsort/sort.nix {
|
|
|
|
inputTre = shuffle;
|
|
|
|
inherit (bsc.garlic.pp) resultFromTrebuchet;
|
|
|
|
removeOutput = false;
|
|
|
|
};
|
|
|
|
};
|
|
|
|
|
|
|
|
slurm = {
|
|
|
|
cpu = callPackage ./slurm/cpu.nix { };
|
2021-04-06 15:28:27 +02:00
|
|
|
sigsegv = callPackage ./slurm/sigsegv.nix { };
|
2021-04-16 09:15:08 +02:00
|
|
|
exit1 = callPackage ./slurm/exit1.nix { };
|
2020-12-07 13:33:42 +01:00
|
|
|
};
|
2021-01-28 14:59:14 +01:00
|
|
|
|
|
|
|
lulesh = {
|
|
|
|
test = callPackage ./lulesh/test.nix { };
|
|
|
|
};
|
2021-02-23 15:22:56 +01:00
|
|
|
|
2021-04-12 19:27:45 +02:00
|
|
|
fwi = rec {
|
2021-04-12 12:51:10 +02:00
|
|
|
granularity = callPackage ./fwi/granularity.nix { };
|
|
|
|
ss = callPackage ./fwi/ss.nix { };
|
2021-04-12 15:48:59 +02:00
|
|
|
reuse = callPackage ./fwi/reuse.nix { };
|
2021-04-12 19:27:45 +02:00
|
|
|
io = callPackage ./fwi/io.nix { };
|
2021-04-12 19:49:31 +02:00
|
|
|
|
|
|
|
# Extended experiments
|
|
|
|
big.io = io.override { enableExtended = true; };
|
2021-01-29 15:33:12 +01:00
|
|
|
};
|
|
|
|
|
2021-03-01 11:55:13 +01:00
|
|
|
osu = rec {
|
2021-02-23 15:22:56 +01:00
|
|
|
latency = callPackage ./osu/latency.nix { };
|
2021-03-01 11:55:13 +01:00
|
|
|
latencyShm = latency.override { interNode = false; };
|
|
|
|
latencyMt = latency.override { enableMultithread = true; };
|
|
|
|
latencyMtShm = latency.override { enableMultithread = true; interNode = true; };
|
2021-03-01 11:58:23 +01:00
|
|
|
bw = callPackage ./osu/bw.nix { };
|
2021-03-03 12:33:59 +01:00
|
|
|
impi = callPackage ./osu/impi.nix { };
|
2021-03-01 11:58:23 +01:00
|
|
|
bwShm = bw.override { interNode = false; };
|
2021-04-07 12:59:05 +02:00
|
|
|
mtu = callPackage ./osu/mtu.nix { };
|
|
|
|
eager = callPackage ./osu/eager.nix { };
|
2021-02-23 15:22:56 +01:00
|
|
|
};
|
2021-03-12 19:33:40 +01:00
|
|
|
|
|
|
|
examples = {
|
|
|
|
granularity = callPackage ./examples/granularity.nix { };
|
|
|
|
};
|
2020-12-07 13:33:42 +01:00
|
|
|
}
|