Abstract

With the widespread use of multi-core processors, task scheduling for multi-core processors has become a hot issue. Many researches have been done on task scheduling from various perspectives. However, the existing task scheduling algorithms still have some drawbacks, such as low processor utilization rate, high complexity, and so on. This paper presents a task scheduling algorithm for multi-core processors, which is based on priority queue and task duplication. In the proposed algorithm, the Directed A cyclic Graph (DAG) is used to build a task model. Based on the model, task critical degree, task reminder, task execution time and the average communication time are all considered as the priority metrics. A priority based task dispatching list is set up by comprehensive analysis and calculating the priority for each task. Then interval insertion and task duplication strategies are employed to map tasks to processors, which can decrease the communication cost, improve the processor utilization rate and shorten the schedule length. Our experiments show that the proposed algorithm has better performance and lower complexity than the existing scheduling algorithms.

Full Text
Published version (Free)

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call