Native 512 SSB: fixed-optics caching and launch layout#
Question and unchanged workload#
Can changing only C10 reuse the fixed fifth-order optics, tilt and depth to
reduce native 512-square coherent reconstruction time? The acquisition retains
512 × 512 scan positions, 192 × 192 detector pixels and all 9,275 active
bright-field pixels. Counts, preprocessing, calibration, precision and the
phase_of_mean estimator are unchanged. This measures redraw, not fitting.
The baseline is revision e8750f3e3652 plus the previously validated per-launch
coefficient struct. Warm timings synchronize the GPU and return a device-native
phase. Host copies for parity are outside the timing. Private evidence is in
experiment 20261023-ssb-c10-cache.
Rejected: per-frequency fixed-optics cache#
A four-float record for every frequency/detector pair requires 38.90 GB (36.23 GiB). On the RTX PRO 6000 Blackwell Workstation Edition, an uncached reference took 21.06 ms, cached weights 34.08 ms, and cached static phase 33.51 ms (warm medians). Maximum phase errors were 3.27e-6 and 3.14e-5 radians, respectively. Both variants were rejected; no tolerance was relaxed.
The additive phase decomposition changes floating-point summation order. The weight-cache error is consistent with altered contraction/rounding across the storage boundary, but its specific cause was not independently proven. Extra read traffic is a plausible reason for the slowdown; hardware bandwidth saturation was not measured. No Nsight counter result is claimed.
Accepted: bounded launch-layout adjustment#
The same coherent kernel uses 64 rather than 32 BF pixels per group, up to 32 rather than 16 partial planes, and 256 rather than 128 threads for native 512-square higher-order reconstruction. Other shapes, fine grids, primary-only optics, fitting and MPS retain their existing paths. This adds no persistent frequency/detector cache. At the default workspace limit, the partial buffer increases from 64 to 128 MiB; the configured chunk-byte bound still applies.
Thirty-two alternating before/after pairs per GPU changed C10 while retaining all other optics. Excluding the first two pairs gives:
GPU |
Before, ms |
After, ms |
Approximate gain |
|---|---|---|---|
RTX PRO 6000 Blackwell Workstation Edition |
23.05 |
22.12 |
4% |
RTX PRO 6000 Blackwell Max-Q Workstation Edition |
31.73 |
30.11 |
5% |
All 64 paired full phase comparisons were bit-identical. These are backend measurements, not notebook FPS. They do not establish 60 fps or a gain on untested GPU architectures. Different GPU power envelopes must not be reported as a software speedup.
An instrumented reference on the first GPU spent about 21.5 ms in correction, 1.07 ms reducing partial results and 0.09 ms in inverse FFT/phase extraction. Instrumentation is separate from the matched speed comparison. Correction still dominates; launch-layout tuning provides only a modest gain.
Regression validation#
All 47 existing CUDA checks across coherent wave averaging, upsampling, higher-order optics and the preview benchmark passed. The added native-512 regression also passed after correcting its test invocation. It checks workspace-bounded reconstruction, changed C10 and repeatability while retaining joint fifth-order optics, tilt and depth. No notebook image-update rate was remeasured in this backend-only experiment.