目录
摘要
应用程序调度问题已经被证明是一个NP完备问题。
本文提出了两种算法:
(1)异构最早完成时间HEFT算法
在每个步骤中选择具有最高向上排名值(upward rank value)的任务,并将所选任务分配给处理器,从而通过基于插入的方法最小化其最早的完成时间。
(2)处理器上的关键路径CPOP算法
CPOP通过向上和向下排名值的总和来确定任务的优先级。
另一个区别在处理器选择阶段,该阶段将关键任务安排到处理器上,从而最大限度减少关键任务的总执行时间。
调度算法在调度的质量和成本方面都明显优于以前的方法,主要表现在调度长度比SL、增速、最佳结果的频率和平均调度时间指标。
任务调度问题
调度系统模型由应用程序、目标计算环境和调度性能标准组成。
应用程序
用一个有向无环图DAG表示:,V代表任务集,E代表不同任务节点的边;
代表在任务
开始前完成任务
;
是一个
的矩阵,
代表从任务
到
所传输的数据量
没有任何父级的任务称为输入任务,没有任何子级的任务称为退出任务
目标计算环境
由集合Q表示一系列完全拓扑连接的异构处理器,并假定所有处理器间通信都执行无争用。计算可以与通信重叠。假定应用程序的任务执行是非抢占式的。
W是一个的计算成本矩阵,
在处理器
上完成任务
的预计执行时间
任务平均执行成本
:
;
处理器之间的数据传输速率存储在大小的矩阵B中;
处理器的通信启动成本在一个q维向量L中给出。()
边界(i,k)的通信成本