Applications like machine learning, deep learning, and the promise of high-performance compute abstracted from highly programmable software APIs are driving future requirements for Software Defined Radios; these challenges cannot be met by CPUs or FPGAs alone. While
Graphics Processing Units (GPUs) provide an attractive alternative, they require a unique perspective on SDR architecture to best make use of their capabilities and overcome their limitations.
This talk will delve into the architecture tradeoffs best suited to meet these new challenges. Tradeoffs between FPGA, CPU, and GPU technologies, and their associated software stack, community of support, and hardware limitations, will be described. We suggest that the optimal architecture is a smaller FPGA with a larger and more capable GPU.
A sizable portion of this talk is devoted to the GPU software stack that enables SDR practitioners to quickly and easily deploy high-performance workflows to GPU. With enabling networking technologies like DPDK and GPUDirect RDMA, we can provide a blueprint for delivering data to the GPU at line rate and relieve the GPU I/O bottleneck. Further, compute enabling software projects like cuSignal allow for high-performance signal processing primitives in Python - further simplifying the software development and deployment.
The talk will culminate with a capability demonstration, showcasing an SDR with integrated GPU simultaneously receiving, demodulating, and performing automatic speech recognition on the demodulated stream in real time.