Claude-skill-registry dqmc-run
Execute DQMC Monte Carlo sweeps on HDF5 simulation files. Use when running simulations, checkpointing long runs, using the queue system for multiple files, or checking simulation status.
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/dqmc-run" ~/.claude/skills/majiayu000-claude-skill-registry-dqmc-run && rm -rf "$T"
manifest:
skills/data/dqmc-run/SKILL.mdsource content
Run Simulations
Inputs
- HDF5 simulation file(s) from the dqmc-generate and dqmc-parameter-scans skills
- Binary at
, worker utility frombuild/dqmcdqmc-util worker
Outputs
- Updated HDF5 files with measurements in
(and/meas_eqlt/
if enabled)/meas_uneqlt/
Decision Rules (single vs queue)
- Exactly 1 file: run it directly with
.build/dqmc sim_0.h5 - 2+ files: use the queue/worker system (
+dqmc-util enqueue
) even on a local workstation.dqmc-util worker- This avoids ad-hoc shell loops, makes restarts/checkpointing consistent, and scales to parallel execution safely.
Procedure
Single file:
build/dqmc sim_0.h5
With checkpointing (long runs):
build/dqmc -s 300 -t 3600 sim_0.h5 # checkpoint every 300 seconds, max runtime 3600 seconds
Multiple files (queue system):
# 1. Add files to queue/ (globs are expanded by Python, so quote them) dqmc-util enqueue queue 'data/run/bin_*.h5' # 2. Start workers dqmc-util worker queue ./build/dqmc -n 8 -s 300 -t 3600 # 8 parallel workers
Multiple files (local temperature scan example):
# enqueue all bins across temperatures dqmc-util enqueue queue 'runs/pi_pi_U8_6x6/T*/bin_*.h5' # run N workers in parallel (pick N for your machine) dqmc-util worker queue ./build/dqmc -n 8 -s 300 -t 3600
Validation (single file)
dqmc-util summary sim_0.h5
For multiple files:
dqmc-util print-n data/run/ # directory paths should end with '/'
Failure Modes
| Symptom | Cause | Recovery |
|---|---|---|
| "opening... failed" | File doesn't exist | Check path |
| NaN in output | Numerical instability | Reduce dt and/or n_matmul. Check parameters |
| Killed by scheduler | Exceeded time limit | Use flag, checkpoint enabled |
| Large errorbars | Sign problem | Add more sweeps and/or bins |
Do Not
- Kill running simulations without checkpointing (
flag)-s - Run multiple workers on the same file
- Use manual shell loops for 2+ files (prefer
+dqmc-util enqueue
)dqmc-util worker