Files
Jungfraujoch/image_analysis
leonarski_fandClaude Opus 5 c58510edba RotationScaleMerge: ingest without the index-order copy of the sort keys
Ingest wrote every observation's 24-byte SortKey into an index-order array and then scattered that
array into its h buckets - two key arrays alive together at the top of the ingest. Count the
buckets per chunk of frames straight from the source reflections and scatter from them instead:
a frame's reflections are consecutive in the key numbering, so the chunks are consecutive index
ranges and each bucket lands in the same index order as before. The key array is byte-identical.

BuildInRangeObservations also hands back the remap temporaries (old runs, per-run maps, new_idx)
before the observation array is built rather than at the end of the function.

Measured on a 3600-frame long-axis rotation set (95.7 M partials in the geometry pre-pass): the
pre-pass ingest high-water drops 15.45 -> 14.1 GB (sampled RSS, -N 6); merged MTZ/HKL/CIF, the P1
cross-check MTZ and the per-image table are byte-identical.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013nW6FNRP1bBJJ8pfHiByAT
2026-09-19 18:27:14 +02:00
..
2026-09-16 18:17:46 +02:00
2026-09-16 18:17:46 +02:00
2026-09-16 18:17:46 +02:00
2026-06-08 08:30:35 +02:00
2026-09-16 18:17:46 +02:00
2026-09-15 17:09:31 +02:00
2026-09-16 18:17:46 +02:00
2026-09-15 17:09:31 +02:00
2026-09-16 18:17:46 +02:00
2026-09-15 17:09:31 +02:00
2026-09-09 07:25:13 +02:00
2026-07-19 09:39:28 +02:00
2026-07-13 13:54:03 +02:00
2026-07-03 19:18:56 +02:00
2026-07-03 19:18:56 +02:00
2026-09-10 13:51:16 +02:00
2026-08-26 22:47:00 +02:00
2026-09-09 07:25:13 +02:00
2026-09-15 17:09:31 +02:00
2026-09-15 17:09:31 +02:00