Is your feature request related to a problem? Please describe.
DAQIRI users need a practical example of receiving raw Ethernet data, processing it with CUDA, and forwarding the result to another GPU-capable system using UCX/UCP over RoCEv2.
Describe the solution you'd like
Add an opt-in two-host example implementing:
Raw data source → DAQIRI raw RX → batched CUDA processing
→ UCX/RoCEv2 → GPU-accessible receiver
The example should demonstrate:
- Receiving and assembling packetized data with DAQIRI.
- Applying representative batched CUDA processing.
- Sending processed payloads through UCX/UCP.
- Receiving into GPU-accessible memory.
- Bounded receiver capacity and overload accounting.
- UCX-only, staged, and complete-pipeline benchmarks.
- A UCX-enabled container, example configurations, and a tutorial modeled after the ResNet50 example.
- Mapped pinned memory support for DGX Spark, while retaining CUDA-device support for other systems.
Describe alternatives you've considered
Using DAQIRI multi-engine support, a DAQIRI UCX engine, custom verbs egress, or host-staged sockets would add unnecessary complexity for an example application.
Additional context
A prototype is available on feat/ucx-gpu-egress-example.
On the two-Spark setup, it delivered and GPU-validated 1.6 million processed payloads at approximately 94.94 Gbit/s, with zero drops, sequence gaps, or validation failures.
Is your feature request related to a problem? Please describe.
DAQIRI users need a practical example of receiving raw Ethernet data, processing it with CUDA, and forwarding the result to another GPU-capable system using UCX/UCP over RoCEv2.
Describe the solution you'd like
Add an opt-in two-host example implementing:
The example should demonstrate:
Describe alternatives you've considered
Using DAQIRI multi-engine support, a DAQIRI UCX engine, custom verbs egress, or host-staged sockets would add unnecessary complexity for an example application.
Additional context
A prototype is available on
feat/ucx-gpu-egress-example.On the two-Spark setup, it delivered and GPU-validated 1.6 million processed payloads at approximately 94.94 Gbit/s, with zero drops, sequence gaps, or validation failures.