{"title":"一种多核处理器任务调度算法","authors":"Xuanxia Yao, P. Geng, Xiaojiang Du","doi":"10.1109/PDCAT.2013.47","DOIUrl":null,"url":null,"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.","PeriodicalId":187974,"journal":{"name":"2013 International Conference on Parallel and Distributed Computing, Applications and Technologies","volume":"2 1","pages":"0"},"PeriodicalIF":0.0000,"publicationDate":"2013-12-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"18","resultStr":"{\"title\":\"A Task Scheduling Algorithm for Multi-core Processors\",\"authors\":\"Xuanxia Yao, P. Geng, Xiaojiang Du\",\"doi\":\"10.1109/PDCAT.2013.47\",\"DOIUrl\":null,\"url\":null,\"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.\",\"PeriodicalId\":187974,\"journal\":{\"name\":\"2013 International Conference on Parallel and Distributed Computing, Applications and Technologies\",\"volume\":\"2 1\",\"pages\":\"0\"},\"PeriodicalIF\":0.0000,\"publicationDate\":\"2013-12-16\",\"publicationTypes\":\"Journal Article\",\"fieldsOfStudy\":null,\"isOpenAccess\":false,\"openAccessPdf\":\"\",\"citationCount\":\"18\",\"resultStr\":null,\"platform\":\"Semanticscholar\",\"paperid\":null,\"PeriodicalName\":\"2013 International Conference on Parallel and Distributed Computing, Applications and Technologies\",\"FirstCategoryId\":\"1085\",\"ListUrlMain\":\"https://doi.org/10.1109/PDCAT.2013.47\",\"RegionNum\":0,\"RegionCategory\":null,\"ArticlePicture\":[],\"TitleCN\":null,\"AbstractTextCN\":null,\"PMCID\":null,\"EPubDate\":\"\",\"PubModel\":\"\",\"JCR\":\"\",\"JCRName\":\"\",\"Score\":null,\"Total\":0}","platform":"Semanticscholar","paperid":null,"PeriodicalName":"2013 International Conference on Parallel and Distributed Computing, Applications and Technologies","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/PDCAT.2013.47","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
A Task Scheduling Algorithm for Multi-core Processors
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.