You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Cannot use streaming and non-streaming modes simultaneously #51
The limitation is mentioned in the documentation, but is there an ETA or a plan to address it in the near future?
Streaming DMA offers a significant improvement in latency, but it comes with a substantial drawback: in a multi-vendor application environment, once the Kona X card is flashed into a Kona XM card/firmware, only the applications updated to streaming DMA will work. All existing/legacy code utilizing non-streaming(regular) DMA and autocirculate will stop working, including SDK demos like ntv2qtpreview.
This makes it prohibitive to use streaming DMA in mixed app environment, since flashing the card back and forth between firmwares on a daily basis is not practical. If the two dma modes can't coexist simultaneously, perhaps a mode can be provided to enable and disable streaming DMA without reflashing the card?
The Xilinx DMA engine we use on the Kona boards can be configured for streaming or block mode transfers but not both. We hope to move to a new engine that can do both in the future. Streaming DMA offers significant improvement in latency for applications that can process video in stripes as it arrives. However most applications are frame based in which case streaming video can reduce the latency by the time it takes to transfer a frame. If your application does video processing using CUDA we do support DVP for video and RDMA which can reduce the time required to move video to and/or from the graphics engine.
Activity
paulh-aja commentedon May 8, 2025
@davids635 Would you be able to comment here?
davids635 commentedon May 9, 2025
The Xilinx DMA engine we use on the Kona boards can be configured for streaming or block mode transfers but not both. We hope to move to a new engine that can do both in the future. Streaming DMA offers significant improvement in latency for applications that can process video in stripes as it arrives. However most applications are frame based in which case streaming video can reduce the latency by the time it takes to transfer a frame. If your application does video processing using CUDA we do support DVP for video and RDMA which can reduce the time required to move video to and/or from the graphics engine.