【笔记】HEFT——面向异构计算的高性能、低复杂度任务调度

本文探讨了面向异构计算环境的任务调度问题,提出HEFT(Heterogeneous Earliest Finish Time)算法和CPOP(Critical Path on Processors)算法。HEFT算法通过任务的向上排名值最小化任务的最早完成时间,而CPOP算法通过向上和向下排名值的总和确定任务优先级。实验表明,这两种算法在调度质量和成本上优于传统方法,尤其是在调度长度、加速比、最佳结果频率和平均调度时间上表现突出。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

目录

摘要

任务调度问题

相关工作

(1)基于启发式算法

(2)基于随机搜索的引导算法

异构环境的任务调度启发式

算法

1.HEFT和CPOP算法使用的图形属性

2.HEFT算法


摘要

应用程序调度问题已经被证明是一个NP完备问题。

本文提出了两种算法:

(1)异构最早完成时间HEFT算法

在每个步骤中选择具有最高向上排名值(upward rank value)的任务,并将所选任务分配给处理器,从而通过基于插入的方法最小化其最早的完成时间。

(2)处理器上的关键路径CPOP算法

CPOP通过向上和向下排名值总和来确定任务的优先级。

另一个区别在处理器选择阶段,该阶段将关键任务安排到处理器上,从而最大限度减少关键任务的总执行时间。

调度算法在调度的质量和成本方面都明显优于以前的方法,主要表现在调度长度比SL、增速、最佳结果的频率和平均调度时间指标

任务调度问题

调度系统模型由应用程序、目标计算环境和调度性能标准组成。

应用程序

用一个有向无环图DAG表示:G = (V,E),V代表任务集,E代表不同任务节点的边;
edge(i,j)\in E代表在任务n_j开始前完成任务n_i
Data是一个v*v的矩阵,data_{i,k}代表从任务n_in_k所传输的数据量

没有任何父级的任务称为输入任务entry \: task,没有任何子级的任务称为退出任务exit\, task

目标计算环境

集合Q表示一系列完全拓扑连接的异构处理器,并假定所有处理器间通信都执行无争用。计算可以与通信重叠。假定应用程序的任务执行是非抢占式的。

W是一个v*q的计算成本矩阵,w_{i,j}在处理器p_j上完成任务n_i的预计执行时间

任务n_i平均执行成本\bar{w_i}\overline{w_{i}} = \sum^{q}_{j=1} w_{i, j}/q ;

处理器之间的数据传输速率存储在q*q大小的矩阵B中;

处理器的通信启动成本在一个q维向量L中给出。(L_m

边界(i,k)的通信成本

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值