Accelerator devices such as GPUs, FPGAs, or DSPs can be very useful for offloading computationally intensive digital signal processing tasks. Unfortunately, the GNU Radio SDR framework does not directly support such devices. Many workarounds have been developed to allow accelerator devices to be used within GNU Radio, but each comes with performance and/or flexibility tradeoffs. To solve these problems work is currently underway to develop generic support for accelerator devices within GNU Radio itself. The focus of this work is to modify GNU Radio to allow support for custom buffers. Custom buffer support will allow GNU Radio to directly utilize device specific buffers (e.g. DMA buffers) and therefore eliminate the need to double copy in order to move data into and out of an accelerator device. Furthermore, the custom buffer concept can be extended to allow “zero copy” data access between two kernels on the same accelerator device. This presentation will cover the design and current status of custom buffer support for GNU Radio.
Speakers: David Sorber