Skip to content

[Feature] Add batch float32 zero-copy angle encoding in qdp-core #1267

@viiccwen

Description

@viiccwen

Reference: #1004

What

Add batch float32 support for angle encoding in QDP core and CUDA kernels.

This includes:

  • host-side encode_batch_f32(..., "angle") support
  • zero-copy CUDA pointer batch APIs for angle float32 input
  • CUDA kernel and FFI support for batched float32 angle encoding
  • validation and tests for invalid shapes, null pointers, zero samples, and non-finite inputs

Why

QDP already supports angle float32 zero-copy encoding for single samples, but batch angle workloads still do not have the same float32 core support.

That leaves a gap for the common case where training or inference pipelines already hold angle features as batched CUDA float32 tensors. Adding batch float32 support:

  • keeps angle float32 behavior consistent between single-sample and batch paths
  • avoids unnecessary dtype promotion for batched angle inputs
  • preserves zero-copy integration for framework-owned CUDA tensors
  • aligns the angle implementation with the existing amplitude batch float32 pattern

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions