Real-Time Scheduling Support in GNU Radio 4

Authors

  • Tiancheng He Department of Computer Science, Vanderbilt University
  • Joseph Goh Department of Computer Science, University of North Carolina at Chapel Hill
  • Syed W. Ali Department of Computer Science, University of North Carolina at Chapel Hill
  • Joel Isaacson Department of Computer Science, Vanderbilt University
  • Nicholas Carter Department of Computer Science, University of North Carolina at Chapel Hill
  • Samarjit Chakraborty Department of Computer Science, University of North Carolina at Chapel Hill
  • James H. Anderson Department of Computer Science, University of North Carolina at Chapel Hill
  • Bryan C. Ward Department of Computer Science, Vanderbilt University

Abstract

GNU Radio 4 (GR4) introduces a modular scheduling framework in which application-defined schedulers can replace the runtime’s default. This is a powerful foundation for more predictable and performant software-defined radio. However, the framework mainly encourages customization of how blocks are distributed across worker threads. All workers share an execution loop that traverses blocks in a fixed order. Consequently, when a block runs follows from its position in that order rather than from the urgency of its work, leaving room for tighter control from a real-time perspective.

This paper presents work in progress on real-time scheduling support in GR4, built atop its modular scheduler API, with the goal of allowing latency-sensitive flowgraphs to be scheduled, and ultimately analyzed, using results from real-time scheduling theory. The order in which a worker thread serves its blocks is made a configurable policy that composes with GR4’s existing schedulers. Static- and dynamic-priority policies, such as rate monotonic and earliest deadline first, respectively, are implemented on this interface. A lightweight execution tracer is also introduced, allowing detailed examination of timing behavior and scheduler overheads. Evaluation on IEEE 802.11p receiver flowgraphs demonstrate how different workloads can benefit from the right scheduling policy. This paper and the accompanying presentation discuss these motivations, connect them to the GR4 scheduler design, report the current state of this development effort, and invite feedback from the GNU Radio community.

Downloads

Published

2026-09-29