Analysis of a List Scheduling Algorithm for Task Graphs on Two Types of Resources

Lionel Eyraud-Dubois, Suraj Kumar
{"title":"Analysis of a List Scheduling Algorithm for Task Graphs on Two Types of Resources","authors":"Lionel Eyraud-Dubois, Suraj Kumar","doi":"10.1109/IPDPS47924.2020.00110","DOIUrl":null,"url":null,"abstract":"We consider the problem of scheduling task graphs on two types of unrelated resources, which arises in the context of task-based runtime systems on modern platforms containing CPUs and GPUs. In this paper, we focus on an algorithm named HeteroPrio, which was originally introduced as an efficient heuristic for a particular application. HeteroPrio is an adaptation of the well known list scheduling algorithm, in which the tasks are picked by the resources in the order of their acceleration factor. This algorithm is augmented with a spoliation mechanism: a task assigned by the list algorithm can later on be reassigned to a different resource if it allows to finish this task earlier.We propose here the first theoretical analysis of the HeteroPrio algorithm in the presence of dependencies. More specifically, if the platform contains m and n processors of each type, we show that the worst-case approximation ratio of HeteroPrio is between $1 + \\max \\left( {\\frac{m}{n},\\frac{n}{m}} \\right)$ and $2 + \\max \\left( {\\frac{m}{n},\\frac{n}{m}} \\right)$. Our proof structure allows to precisely identify the necessary conditions on the spoliation strategy to obtain such a guarantee. We also present an in-depth experimental analysis, comparing several such spoliation strategies, and comparing HeteroPrio with other algorithms from the literature. Although the worst case analysis shows the possibility of pathological behavior, HeteroPrio is able to produce, in very reasonable time, schedules of significantly better quality.","PeriodicalId":6805,"journal":{"name":"2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS)","volume":"53 1","pages":"1041-1050"},"PeriodicalIF":0.0000,"publicationDate":"2020-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"1","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"2020 IEEE International Parallel and Distributed Processing Symposium (IPDPS)","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1109/IPDPS47924.2020.00110","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 1

Abstract

We consider the problem of scheduling task graphs on two types of unrelated resources, which arises in the context of task-based runtime systems on modern platforms containing CPUs and GPUs. In this paper, we focus on an algorithm named HeteroPrio, which was originally introduced as an efficient heuristic for a particular application. HeteroPrio is an adaptation of the well known list scheduling algorithm, in which the tasks are picked by the resources in the order of their acceleration factor. This algorithm is augmented with a spoliation mechanism: a task assigned by the list algorithm can later on be reassigned to a different resource if it allows to finish this task earlier.We propose here the first theoretical analysis of the HeteroPrio algorithm in the presence of dependencies. More specifically, if the platform contains m and n processors of each type, we show that the worst-case approximation ratio of HeteroPrio is between $1 + \max \left( {\frac{m}{n},\frac{n}{m}} \right)$ and $2 + \max \left( {\frac{m}{n},\frac{n}{m}} \right)$. Our proof structure allows to precisely identify the necessary conditions on the spoliation strategy to obtain such a guarantee. We also present an in-depth experimental analysis, comparing several such spoliation strategies, and comparing HeteroPrio with other algorithms from the literature. Although the worst case analysis shows the possibility of pathological behavior, HeteroPrio is able to produce, in very reasonable time, schedules of significantly better quality.
两类资源任务图的列表调度算法分析
我们考虑在两种不相关的资源上调度任务图的问题,这是在包含cpu和gpu的现代平台上基于任务的运行时系统的背景下出现的。在本文中,我们关注的是一种名为HeteroPrio的算法,它最初是作为一种针对特定应用的高效启发式算法而引入的。HeteroPrio是对众所周知的列表调度算法的一种改编,其中任务由资源按照其加速因子的顺序挑选。该算法增加了一种散列机制:如果列表算法分配的任务允许提前完成,则可以稍后将其重新分配给不同的资源。我们在这里提出了存在依赖关系的HeteroPrio算法的第一个理论分析。更具体地说,如果平台包含每种类型的m和n个处理器,我们证明了HeteroPrio的最坏情况近似比在$1 + \max \left( {\frac{m}{n},\frac{n}{m}} \right)$和$2 + \max \left( {\frac{m}{n},\frac{n}{m}} \right)$之间。我们的证明结构允许精确地识别获得这种保证的必要条件。我们还进行了深入的实验分析,比较了几种这样的泄漏策略,并将HeteroPrio与文献中的其他算法进行了比较。虽然最坏的情况分析显示了病态行为的可能性,但HeteroPrio能够在非常合理的时间内产生质量明显更好的时间表。
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信