Public TUM example execution¶
The complete public TUM example improves from 58.116 to 29.610 seconds (1.963x, 49.0% less elapsed time) in a direct comparison of the preceding checked-in example and the updated example. Both execute every original calibration and diagnostic step and produce exactly matching results.
The change enables the existing bounded three-window process execution in the public example and reduces CPU work in native geometry and diagnostic scoring. The core option still defaults to one worker for other configurations. These measurements use default NumPy execution; CUDA kernel code and numerical policy remain unchanged.
Separate the execution and arithmetic effects¶
Three variants run three times each, with the same mean position in the
nine-worker sequence. The preceding runtime is
c8b048f13986ee9255b0d93ac3ac2913d8b14ece; the current runtime is
5e5f10522ab792ed9713b2b5c101589156e60b99.
| Variant | Source and configuration | Median whole worker seconds |
|---|---|---|
| prior | preceding checked-in example, one window worker | 58.116 |
| parallel | preceding runtime, three window workers | 37.836 |
| current | current checked-in example, three window workers | 29.610 |
The directly measured example-to-example gain is 1.963x. The preceding runtime's parallel-only control gives 1.536x against its serial example. With three workers on both sides, the arithmetic and geometry changes give 1.278x, or 21.7% less elapsed time. These are observations from the same experiment; earlier benchmark ratios are not multiplied.
| Fresh worker | Variant | Whole worker seconds | Calibration API seconds |
|---|---|---|---|
| 01-current | current | 28.281 | 23.598 |
| 02-prior | prior | 58.116 | 53.453 |
| 03-parallel | parallel | 39.104 | 33.632 |
| 04-prior | prior | 57.830 | 52.514 |
| 05-parallel | parallel | 37.836 | 32.642 |
| 06-current | current | 30.367 | 25.357 |
| 07-parallel | parallel | 34.633 | 29.647 |
| 08-current | current | 29.610 | 24.643 |
| 09-prior | prior | 58.245 | 52.799 |
The public example
now requests window_workers: 3. Execution is capped at three window processes
and available CPUs, with results aggregated in configured replication order.
The comparison's parallel workers all report three effective workers.
Changes to native CPU work¶
Diagnostic scores use the existing bounded evaluation scope to share immutable frame transforms, instead of constructing a new RGB-D residual plan per probe. Every residual callback still executes, with its original parameter reads, fixed population, ordered sum, unmatched penalty and error behavior. Factory signature caches are scoped to each native reassociation builder and released on return or error.
Captured native plane queries can use packed lookup from eight points because their immutable index already exists. Custom numeric inputs and unsupported indices retain scalar lookup. Native normal-free point arrays can construct immutable plane geometry directly, preserving voxel insertion order, scalar accumulation, the first twelve normal candidates, first-tie selection and all centroid/normal float bits. Array construction is bounded to 65,536 points and works in chunks of 4,096 voxels.
Ordered row sums share the already tested finite-difference accumulation algorithm across ordinary RGB-D residuals, field probes and TUM point correction. Each independent row retains CPython's original accumulation order: left-to-right on 3.10/3.11 and compensated on 3.12. The native path avoids Python row-list allocation, retains signed zero, and bounds both array extent and magnitude. Small, unusual and unsupported-runtime inputs retain builtin summation.
Scope and evidence¶
Every run retains all three map frames, eight query frames per window, three replication starts, all samples and correspondence limits, ablations, reassociation, known-bad probes, holdout, curvature, multistart and report saving. The 35 actual input files are hashed before execution and again afterward against the existing public inventory. BLAS/OpenMP use one thread.
Whole worker time starts before spawning each fresh calibration worker and includes imports, input verification, window process startup, factor transport, calibration, saved reports and evidence saving. The API time covers the calibration call including its child windows and reports. Numerical tracing hooks are absent from these nine production workers. The host was unreserved; these observations are not a hardware-independent guarantee.
The input is the already spent public TUM freiburg1_xyz development sequence.
This execution comparison makes no accuracy, convergence or SOTA claim.
Separate supplementary traces retain 24 solves, 168 Jacobian evaluations, 1,624 residual evaluations, 150 frontend records, 1,498 diagnostic records and 492 fixed-population scoring events per complete run. All complete results, ordered residual/Jacobian array hashes and population scores match exactly. Trace timings are not production latency evidence.
The raw-file inventory binds all attempts, summary, source capsules, checked-in examples, actual-input pins and raw worker records. The independent auditor also compares every complete result to a hash-pinned preceding accepted result, after verifying only configuration, execution-policy and output-path differences. All other numerical and result fields are retained.
The development archive preserves the earlier four six-worker comparisons. Their same-worker gains were 1.111x, 1.223x, 1.223x and 1.144x on separate unreserved-host screens. A fused matching-score snapshot added substantially more machinery without establishing a useful additional whole-pipeline gain and was reverted. Its source capsule is retained. These exploratory ratios should not be combined or applied to the direct example comparison.
python tools/audit_tum_scoped_evaluation.py docs/assets/tum_scoped_evaluation
The offline audit requires no GPU or dataset download. It checks every indexed byte, source and input pins, checked-in example/configuration differences, all three execution controls, original worker times, direct medians, complete accepted results and supplementary numerical histories.
The frozen runtime passes 687 Windows tests, including 34 real-device cases, and 653 Linux/Python 3.10 tests with the optional CUDA test module skipped. Ten archive and rehashed-tampering tests pass on each platform. Strict typing passes for all 394 source modules on both platform targets; the 129 public schema exports and their ledger remain byte-identical. The validation record binds these checks to the measured source capsule.
Historical serial benchmark launchers and auditors use the original
hash-pinned template in tools/fixtures/tum_joint_serial_v1.yaml. Their
workload checks remain independent of later changes to the public example.
The original archived records remain intact; all four historical serial
archives reject rehashed changes to their worker count as well as changes to
samples, windows and optimization options.