Software Engineering
New Tool Helps Real-Time Systems Research with Multi-Rate Task Scheduling Tests
RD-Gen automates the generation of reproducible test cases for evaluating scheduling algorithms in complex real-time applications.
Researchers working on real-time systems face a persistent challenge: testing new scheduling algorithms and performance strategies requires realistic, varied test data—but creating this data by hand is time-consuming and prone to inconsistency.
The Problem with Manual Test Generation#
Real-time systems must juggle competing demands: meeting strict deadlines, respecting resource limits, and coordinating complex task dependencies. As these systems grow larger, evaluating whether new scheduling algorithms actually work becomes crucial. To do this fairly, researchers typically use directed acyclic graphs (DAGs) to model how tasks depend on and run alongside one another.
Historically, researchers would either generate random DAG test sets themselves or rely on older tools—but existing generators don't account for modern multi-rate applications, where different tasks operate at different frequencies. This leaves researchers reinventing the wheel, spending extra effort and potentially undermining the reproducibility of their findings.
Introducing RD-Gen#
A new research tool called RD-Gen aims to solve this problem by automating the creation of random DAG test sets tailored to multi-rate real-time systems. The generator handles the technical details of constructing realistic task graphs while allowing researchers to control parameters like deadline constraints and resource requirements.
The tool also supports batch generation, meaning researchers can quickly produce entire suites of test cases with varying configurations—useful for running comprehensive evaluations of scheduling methods.
Why This Matters#
Standardized, reproducible test data is foundational to scientific credibility. By providing a shared, configurable generation tool, RD-Gen lowers the barrier to rigorous algorithm evaluation and makes it easier for other researchers to verify published results. Case studies in the research show the tool can adapt to different problem configurations and research needs, suggesting it may become a useful resource for the real-time systems research community.