Summary
con/duct is a lightweight wrapper that records resource usage (CPU, memory, I/O) for any command. It produces per-job files:
*_info.json — system/environment metadata
*_usage.jsonl — time-series resource samples
*_stdout / *_stderr — captured output streams
Additional details
Adding duct to BABS jobs would give users automatic resource monitoring for every participant job with no changes to their BIDS app.
This will be particularly helpful for validating whether SLURM resource requests are accurate, and can inform reruns for resource requirements as well. con-duct can also plot the resource usge!
Next steps
- Add
con-duct to requirements
- prefix the singularity command with
duct -p <path to logs>
I'd propose we do: analysis/logs/duct_sub_XX[_ses_XX]_
This will be affected by the containers-run work #347, but this a small change. We could put in before or after.
I've got this added in my working branch of babs. Will report back with some logs/plots to show the value.
Summary
con/duct is a lightweight wrapper that records resource usage (CPU, memory, I/O) for any command. It produces per-job files:
*_info.json— system/environment metadata*_usage.jsonl— time-series resource samples*_stdout/*_stderr— captured output streamsAdditional details
Adding duct to BABS jobs would give users automatic resource monitoring for every participant job with no changes to their BIDS app.
This will be particularly helpful for validating whether SLURM resource requests are accurate, and can inform reruns for resource requirements as well.
con-ductcan also plot the resource usge!Next steps
con-ductto requirementsduct -p <path to logs>I'd propose we do:
analysis/logs/duct_sub_XX[_ses_XX]_This will be affected by the
containers-runwork #347, but this a small change. We could put in before or after.I've got this added in my working branch of babs. Will report back with some logs/plots to show the value.