Abstract
diffct implements computed-tomography projection and reconstruction in PyTorch using Numba CUDA kernels. Its native forward model integrates a cell-constant attenuation field along rays defined by per-view acquisition geometry; the backprojector is the matched discrete adjoint. The same model supports parallel, fan and cone beams, non-circular trajectories, and parameterized detector surfaces. This report describes the implementation through release 2.2.1: the geometry and sampling conventions, Siddon traversal, data and first-order geometry derivatives, differentiable analytical FBP/FDK, and execution on one or several GPUs. We derive the ownership and reduction rules for distributed view and spatial partitions and explain how spatial, view and detector blocks extend native operations to CPU-backed and disk-backed data. Experiments include measured walnut cone-beam data, synthetic reconstruction and calibration, and a recorded 512³ scaling benchmark. On A100-SXM-64GB GPUs, eight GPUs on two nodes reduce forward projection from 493.05 to 73.18 ms and the amortized cost of a ten-step CGLS solve from 2054.36 to 373.38 ms per iteration. Analytical gathers have their own discrete transposes; differentiability does not make FDK an exact inverse. We distinguish numerical correctness, reconstruction quality and execution cost, and state the limits of each experiment.