Conversation
|
Auto-sync is disabled for draft pull requests in this repository. Workflows must be run manually. Contributors can view more details about this message here. |
|
Navigate logical layers of code changes, visualize relationships, and explore their blast radius. No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository: NVIDIA/cuPhoton/.coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: 📒 Files selected for processing (3)
Included review availability: This review used your included allowance. Your plan provides up to 12 included reviews per hour; 11 remain after this review. 📝 WalkthroughWalkthroughThe change adds ChangesConfigurable xDR postprocessing
Priority: ➖ Normal Merge Risk: ⚪ Minimal · up to The PR adds selectable xDR postprocessing controls and documents their use across FITS workflows. No specific user-impacting regression or merge blocker is established by the supplied evidence. 🚥 Pre-merge checks | ✅ 2✅ Passed checks (2 passed)
Comment |
|
@coderabbitai review |
|
melo-gonzo
left a comment
There was a problem hiding this comment.
LGTM. All 79 postprocessing GPU tests passed on RTX 6000 Ada; option propagation and backward compatibility checks found no blocking regressions. Recommend landing with #76 after 0.1.3.
Signed-off-by: Trent Nelson <trentn@nvidia.com>
Default to fused pixel restoration and retain a separate-kernel option. Carry explicit xDR options through workflow inputs, workers and reader receipts while preserving omitted manifest choices. Signed-off-by: Trent Nelson <trentn@nvidia.com>
Keep xFit configuration identities stable when no xDR overrides are supplied. Reject unsupported output strides with runtime checks and exercise the valid int32 quantization layout. Clarify the separate postprocessing path and its input-preserving copy cost. Signed-off-by: Trent Nelson <trentn@nvidia.com>
a0f728e to
3c7e2c0
Compare
FITS GZIP_2 loading currently creates a full-plane intermediate for separate unshuffle, byte-order conversion and scatter passes. Fuse those operations by default, with
postprocess="auto"|"fused"|"separate"and--xdr-postprocessfor runtime comparison.Carry optional
xdr_optionsthrough shared FITS reads, xFit/xPois/xRep/xScan APIs and CLIs, input manifests, workers and reader receipts. Omitted flags preserve input choices; explicit flags override matching fields. Existing reader policies remain intact.Validation: 367 GPU xDR tests plus 83 reader/lifetime checks after the completion-protocol correction; 727 shared/component CPU tests and 93 xRep tests; full lint, typing and hooks. Original two-file/six-plane reads (390.9 MB) match byte-for-byte across all three postprocess choices and both native/Python batching. Measured fusion saves 17–22% of postprocessing and one 65.2 MB intermediate per 32-bit plane; the isolated full-reader comparison was unchanged.
This is the foundation for stacked PRs #76 and #77.