Overview of CPU RoCE Transport
mainThe CpuRoceTransceiver is a pure-CPU RoCEv2 RDMA transport implementation that does not require a GPU, DOCA, or HSB software. It moves RPC messages between a quantum control system (FPGA) and a CPU-based decoder entirely in host memory with microsecond latency.
It is provided as a separate library: cudaq-realtime-cpu-roce-transport (located in realtime/lib/cpu_transport/).
It serves two primary use cases:
- Direct realtime dispatch: Acts as a drop-in CPU replacement for the GPU HSB transport when wired to a
libcudaq-realtimedispatcher (e.g., usinghsb_bridge_cpuwithCUDAQ_DISPATCH_HOST_CALL). - Compiler-lowered
device_call: Serves as the transport for thecpu_rocedevice-call channel. This allows a quantum kernel'scudaq::device_call(lowered bynvq++to the realtime RPC ABI) to be dispatched to a CPU-based service over RDMA without requiring a GPU on either side.