[Solution] End-to-end Scheduling of Real-time Task Pipelines on Multiprocessors
Journal of Systems Research
Real-time embedded systems require significant analyses to ensure that their timing and functional correctness are met. With increasing complexities in hardware and software, this is a challenging proposition. Researchers have studied task-pipelines (also known as cause-effect chains) to deal with new applications in domains such as IoT and the advent of software frameworks such as ROS. In spite of increased usage of task pipelines there is scant work in analysis tools that can guarantee
... end properties. This paper aims to fix that by developing a constraint solver algorithm, "CoPi", that can derive runtime budgets and periods of individual pipelines tasks. This information can then be used to analyse the end-to-end constraints of the real-time system. The paper then extends this to multiprocessor systems that can handle multiple task pipelines, which in itself is quite a challenge. This fills a gap in the scheduling literature of pipeline-based task models and presents a nice heuristic optimization. The authors also present an extensive evaluation on open-source baselines for a large parameter space. Given the QoS constraints in many datacenter applications today, the paper also highlights possible design choices for scheduling in datacenter systems, thus demonstrating wide applicability. Hence CoPi has the potential to be influential in real-time, IoT and even datacenter systems.