bscpkgs/garlic/exp/hpcg/gen.nix
2023-03-02 10:38:43 +01:00

53 lines
951 B
Nix

{
stdenv
, lib
, stdexp
, bsc
, targetMachine
, stages
, garlicTools
, callPackage
}:
with lib;
with garlicTools;
rec {
# Generate the complete configuration for each unit
genConf = c: targetMachine.config // rec {
expName = "hpcg-gen";
unitName = expName
+ "-nodes${toString nodes}"
+ "-spt.z${toString sizePerTask.z}";
inherit (targetMachine.config) hw;
# Inherit options from the current conf
inherit (c) sizePerTask nprocs disableAspectRatio gitBranch
cpusPerTask ntasksPerNode nodes;
# nblocks and ncomms are ignored from c
ncomms = 1;
nblocks = 1;
# We only need one run
loops = 1;
# Generate the input
enableGen = true;
# Resources
qos = "debug";
time = "02:00:00";
jobName = unitName;
};
common = callPackage ./common.nix {};
getInputTre = conf: stdexp.genExperiment {
configs = [ (genConf conf) ];
pipeline = common.pipeline;
};
}