Login

Implementing Slot-Based Task-Splitting Multiprocessor Scheduling
Ref: HURRAY-TR-110704       Publication Date: 15 to 17, Jun, 2011

Implementing Slot-Based Task-Splitting Multiprocessor Scheduling

Ref: HURRAY-TR-110704       Publication Date: 15 to 17, Jun, 2011

Abstract:
Consider the problem of scheduling a set of sporadic tasks on a multiprocessor system to meet deadlines using a tasksplitting scheduling algorithm. Task-splitting (also called semipartitioning) scheduling algorithms assign most tasks to just one processor but a few tasks are assigned to two or more processors, and they are dispatched in a way that ensures that a task never executes on two or more processors simultaneously. A particular type of task-splitting algorithms, called slot-based task-splitting dispatching, is of particular interest because of its ability to schedule tasks with high processor utilizations. Unfortunately, no slot-based task-splitting algorithm has been implemented in a real operating system so far. In this paper we discuss and propose some modifications to the slot-based task-splitting algorithm driven by implementation concerns, and we report the first implementation of this family of algorithms in a real operating system running Linux kernel version 2.6.34. We have also conducted an extensive range of experiments on a 4-core multicore desktop PC running task-sets with utilizations of up to 88%. The results show that the behavior of our implementation is in line with the theoretical framework behind it.

Authors:
Paulo Baltarejo Sousa
,
Björn Andersson
,
Eduardo Tovar


6th IEEE International Symposium on Industrial Embedded Systems (SIES 11), IEEE, pp 256-265.
Vasteras, Sweden.

DOI:10.1109/SIES.2011.5953669.



Record Date: 2, Mar, 2011