Need worker tuning?
uv run pystamps run --dataset DATASET_DIR --start-step 1 --end-step 8 --io-workers 12 --cpu-workers 4
This page is the shortest correct path through pySTAMPS. It is intentionally practical: every step is something you can run on a dataset copy without needing to understand every scientific detail first.
Start by asking pySTAMPS what it sees in the dataset root.
uv run pystamps status --dataset /path/to/run_dataset
This command does not process the data. It reports the merged stage and patch stages it can infer from the artifacts already present.
A dry-run is a safe rehearsal. It shows what pySTAMPS would do without executing the stages.
uv run pystamps run --dataset /path/to/run_dataset --start-step 1 --end-step 8 --dry-run
pySTAMPS writes artifacts into the dataset tree. Make a run copy first.
cp -a /path/to/run_source_dataset /path/to/run_dataset
uv run pystamps run --dataset /path/to/run_dataset --start-step 6 --end-step 8
Inspect available providers, then pin the optimized native kernels with a config file.
uv run pystamps describe-backends
runtime:
backend: auto
stage2_kernel_backend: native
stage2_native_threads: 0
kernel_backend_overrides:
stage2_grid_accumulate: native
stage2_histogram: native
stage2_topofit: native
stage2_topofit_row_invariant: native
stage2_topofit_coh_row_invariant: native
stage4_edge_stats: native
stage7_scla: native
stage8_edge_noise: native
io_workers: 8
cpu_workers: 0
stage7_chunk_ps: 100000
stage8_chunk_edges: 200000
uv run pystamps --config native-kernels.yaml run --dataset /path/to/run_dataset --start-step 2 --end-step 8
If the copied dataset already contains the expected outputs, those stages report skipped_existing. To execute kernels through the pipeline, use a dataset copy that still needs those stage outputs. Use the benchmark or direct-kernel examples for profiling.
Verification compares your run copy to a reference dataset. Benchmarking records repeatable JSON/CSV timing evidence.
uv run pystamps verify --run /path/to/run_dataset --golden /path/to/reference_dataset
make benchmark
uv run pystamps run --dataset DATASET_DIR --start-step 1 --end-step 8 --io-workers 12 --cpu-workers 4
runtime:
backend: auto
stage2_kernel_backend: auto
stage2_native_threads: 0
io_workers: 8
cpu_workers: 0
stage7_chunk_ps: 100000
stage8_chunk_edges: 200000
enable_mat_stage_cache: true
stage2_checkpoint_mode: final
stage2_checkpoint_interval: 1
Use the six-step flow above: inspect, dry-run, execute, verify, and benchmark. Repeat with narrower stage ranges as needed.