Tightening Contention Delays While Scheduling Parallel Applications on Multi-core Architectures
read more
Citations
Bounding DRAM Interference in COTS Heterogeneous MPSoCs for Mixed Criticality Systems
A Holistic Memory Contention Analysis for Parallel Real-Time Tasks under Partitioned Scheduling
Hiding Communication Delays in Contention-Free Execution for SPM-Based Multi-Core Architectures
SLAQA: Quality-level Aware Scheduling of Task Graphs on Heterogeneous Distributed Systems
Correct-by-Construction Parallelization of Hard Real-Time Avionics Applications on Off-the-Shelf Predictable Hardware
References
A Theorem on Boolean Matrices
StreamIt: A Language for Streaming Applications
TGFF: task graphs for free
A survey of hard real-time scheduling for multiprocessor systems
Related Papers (5)
Frequently Asked Questions (14)
Q2. What are the future works mentioned in the paper "Tightening contention delays while scheduling parallel applications on multi-core architectures" ?
Extensions to architectures with local caches is another direction for future research.
Q3. What is the first proposed scheduling method?
The first proposed scheduling method models the task mapping and scheduling problem as constraints on task assignment, task start times and communications between tasks.
Q4. What is the basic idea of the proposed heuristic?
The basic idea of the proposed heuristic, based on forward list scheduling, is to order tasks from the task graph, and then to add each task one by one in the schedule without backtracking, while keeping the goal of minimizing the overall makespan of the schedule.
Q5. Why is the ILP formulation not scaled properly when the number of tasks grows?
Since the solved scheduling problem is NP-hard, the ILP formulation is shown to not scale properly when the number of tasks grows.
Q6. How does the paper show that parallel applications can be modeled?
In this paper, the authors assume parallel applications modeled as directed acyclic task graphs (DAGs), and show that the knowledge of the application’s structure allows to have precise estimation of tasks that effectively execute in parallel, and thus contention delays.
Q7. What can be done to help refine the amount of interference suffered by a task?
Knowledge of tasks’ scheduling (tasks placement and time window assigned to each task), when known, can further help refining the amount of interference suffered by a task.
Q8. What is the way to model the problem as an instance of ILP?
To model their problem as an instance of ILP, the authors make the choice of using a safe linear approximation of equation (16d), in which the authors substitute variable waitingSlotsri by a constant WAIT r i that may overestimate the number of waiting slots.
Q9. What is the terminology of the three main categories of scheduling methods?
According to their terminology, the scheduling methods presented in this paper can be classified as static, partitioned, time-triggered and non-preemptive.
Q10. Why is it difficult to apply a WCET technique to multi-core platforms?
Due to the presence of shared hardware resources (buses, shared last level of cache, . . . ), techniques designed for single-core architectures cannot be directly applied to multi-core ones.
Q11. Why did the authors not use all the benchmarks and applications?
The authors were not able to use all the benchmarks and applications provided in the suite due to difficulties when extracting information (task graph, WCET, . . . ) or because some test cases are linear chains of tasks with no concurrency.
Q12. What are the factors that affect the WCET of the read and write phases?
the communication delay of the read and write phases (respectively noted delayri and delayw i ) depend on several factors: amount of data to be transferred, number of potential concurrent accesses to the bus.
Q13. How do they reduce the impact of communication delays on schedules?
In order to reduce the impact of communication delays on schedules, [4, 14] hide the communication request while a computation task is running.
Q14. What is the difference between the two sets of task graphs?
For both sets, the authors used the latest version of the TGFF task generation software to generate task graphs with tasks’ chains of different lengths and widths, including both fork-join graphs and more evolved structures (e.g. multi-DAGs).