# Example GIANT workflow spec — `giant workflow run configs/workflow_example.toml`. # # One file parameterises a whole experiment: the datasets, the geometry oracle, # N trainings, N rollouts, and the analyses comparing them. Every task's output # directory carries a hash of its resolved sub-spec (plus its parents), so # editing anything here re-runs exactly the affected subtree and nothing else. # # result_dir/log_dir must be visible from both the submit host and the workers # (i.e. on /ceph) — there is deliberately no HTCondor file transfer. [workflow] name = "baseline-vs-router" result_dir = "/ceph/lbogner/workflows/baseline-vs-router" log_dir = "/ceph/lbogner/workflows/baseline-vs-router/logs" [condor] accounting_group = "cms" repo_dir = "/work/lbogner/giant" # also b2luigi's working_dir env_script = "/work/lbogner/giant/condor_env.sh" docker_image_cpu = "cverstege/alma9-gridjob" docker_image_gpu = "mschnepf/slc7-condocker" remote = true [dataset] steps = "/ceph/lbogner/geant_steps/train/" # training data reference = "/ceph/lbogner/geant_steps/holdout/" # rollout seeds + analysis truth [geometry] method = "slab" subsample = 500_000 [[train]] name = "baseline" config = "configs/baseline.toml" epochs = 200 epochs_per_job = 1 # one short GPU job per epoch, chained request_gpus = 1 gpu_memory_mb = 20000 overrides = { lr = 3e-4 } # `giant train` flag names [[train]] name = "router-balanced" config = "configs/router.toml" epochs = 200 epochs_per_job = 1 request_gpus = 1 gpu_memory_mb = 20000 [[rollout]] name = "baseline" train = "baseline" # -> [[train]].name n_events = 2000 energy_cutoff = 0.1 [[rollout]] name = "router-balanced" train = "router-balanced" n_events = 2000 energy_cutoff = 0.1 [[analysis]] name = "baseline-vs-router" rollouts = ["baseline", "router-balanced"] chunks = 32 energy_bins = 4 bins = 50 top_pdg = 6 gallery = true