Skip to content

v0.21.0

Choose a tag to compare

@minamikik minamikik released this 06 Nov 20:41
· 13 commits to main since this release

pixtreme-transport 0.21.0: the core works with pixtreme 2.5, reads Frame pixels through DLPack, and reports an unconfirmed output termination with a stable reason. The core now requires pixtreme>=2.5.0 at build and run time. The native ABI stays 7 and CONFORMANCE_REVISION stays 8.

  • pixtreme 2.4 and later: pixtreme removed px.core.Frame.data. The core's Python bindings now import a Frame's pixels through the Frame's own DLPack export on the consumer stream, and the exit serialization reads a Frame's device, dtype and shape from its metadata without exporting pixels. Constructing a TransportFrame from a Frame, replacing its image, and the exit serialization decision work again on pixtreme 2.4 and later; core 0.20.0 fails there with AttributeError. The core keeps the source Frame and the consumed DLPack capsule until its own GPU work finishes, so both pixtreme-allocated and borrowed pixels stay valid under pixtreme 2.4's release rules.
  • Conformance suite: the distributed suite reads and writes pixels through cupy.from_dlpack. Its obligations and behaviour are unchanged, so CONFORMANCE_REVISION stays 8.
  • Unconfirmed output termination: when an output stop callback fails and the module has not yet proven cancellation with finish_cancel, explicit join and close no longer wait indefinitely. They return a session-fatal failure with the stable reason output-termination-unconfirmed (Design SP-TRANSPORT-327). The session stays open and keeps its workers, unfinished work and callback context; check reports the first fatal. After the module proves termination, a close retry finishes cleanup, closes, and reports the first fatal. A successful asynchronous stop still waits for proof. Final release still waits for proof and cannot be retried.
  • Dependency: pixtreme>=2.5.0.
  • Wheels: CPython 3.12 and 3.13, manylinux_2_28_x86_64, built with the image pixtreme-transport-wheel:cuda13-manylinux_2_28-334eb1e23e02 from wheel-build/ at this tag (CUDA 13.2). Each wheel ships the shared library libpixtreme_transport.so.7, the public C and C++ headers, the CMake package configuration and the testing package. The GPU code targets sm 86, sm 89 and sm 120, with compute 120 PTX. CUDA's runtime is linked statically; neither the NVIDIA driver library nor pixtreme's shared library is included.
  • Verify the assets with sha256sum -c SHA256SUMS.