欢迎来到天天文库
浏览记录
ID:45145236
大小:523.50 KB
页数:56页
时间:2019-11-10
《第A10章分布式调度》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第十章分布式调度10.1调度算法概述调度算法的分类第十章分布式调度10.1调度算法概述调度算法的分类其他一些分类方法:(1)非抢先式的(non-preemptive)和抢先式的(preemptive)。对非抢先式的调度算法,一个进程开始执行后就不能中断。在抢先式调度算法中,进程可以中断,从一个处理机上移走,到另一个处理机上继续执行。(2)适应性(adaptive)和非适应性的(non-adaptive)。非适应性调度算法只使用一种负载分配策略,不会根据系统的反馈而改变自己的行为。适应性调度算法能够根据系统的反馈调整自己的行为,采用不
2、同的负载分配策略。典型地,一个适应性调度算法是许多种调度算法的集合,根据系统的各种参数来选择一种合适的算法。第十章分布式调度10.1调度算法概述调度算法的目标和有效性评价分布式调度的基本目标是尽快得到计算结果和有效地利用资源。具体来说,调度算法的目标有两个:一个目标是负载平衡(loadbalancing),它的努力目标是维持整个分布式系统中各个资源上的负载大致相同。另一种目标是负载共享(loadsharing),它的目标仅仅是防止某个处理机上的负载过重。相对来说负载共享的目标要比负载平衡的目标容易达到。负载平衡的主要目的是提高整个系
3、统的流量,而负载共享的主要目标是缩短特定程序的执行时间。第十章分布式调度10.1调度算法概述调度算法的目标和有效性评价从调度算法的有效性来看,调度算法分为最优调度算法和次优调度算法。为了实现最优调度算法,调度者必须获得所有进程的状态信息和系统中所有相关的可用信息。最优性常用执行时间、资源利用率、系统流量以及这些参数的某种综合来进行评价。一般来说最优调度是一个NP完全性问题。所以在实际的系统中,常采用次优的调度算法。第十章分布式调度10.1调度算法概述调度算法的目标和有效性评价有许多参数用于确定或测量一个调度算法的有效性:通信代价:使
4、用这个参数的调度算法可能要考虑到向一个给定的节点传送或者从一个给定节点接收一个报文花费的时间,更为重要的是必须考虑到为一个进程分配一个执行地点而引起的通信代价。执行代价:这个参数反映的是将一个进程分配到一个指定的执行节点,在这个节点的执行环境下,执行这个程序所需的额外开销。资源利用率:常用来表明基于分布式系统当前各个节点的负载情况,给一个进程分配的执行节点是否是合适的。资源利用率参数常用负载状态来表示,常用的负载参数有资源的队列长度、内存的使用等等。第十章分布式调度10.1调度算法概述调度算法的目标和有效性评价次优的调度算法分为两类
5、:近似的次优调度算法和启发式的次优调度算法:近似的次优调度常和最优调度使用相同的算法,但是近似的次优调度不搜索这个算法的所有解空间,而是在这个算法的解空间中的一个子集中搜索,目的是尽快地找到一个较好的解。而最优调度则是搜索这个算法的整个解空间,目的是获得最好的解。使用近似的次优调度算法必须能够判定所得到的解是否是可以被接受的,也就是说,必须能够确定最优解和次优解之间的近似程度。第十章分布式调度10.1调度算法概述调度算法的目标和有效性评价次优的调度算法分为两类:近似的次优调度算法和启发式的次优调度算法:启发式的次优调度算法常使用比较
6、简明的规则和一些直觉的规则来进行调度。这些启发式的规则往往是不能证明其正确性,在特定情况下可能还是错误的,但是在绝大多数的情况下是能够被接受的。第十章分布式调度10.1调度算法概述调度算法的目标和有效性评价启发式调度算法中常采用的一些启发式规则:相互依赖性较大的进程,由于它们之间常有比较多的进程通信应该分配到比较接近的执行节点上,可能的话,应该在同一个节点上。访问共享文件的进程应该分配到比较接近的执行节点上,可能的话,应该分配在文件服务员节点上。很少有内在关系的进程可以分布在不同的机器上。如果一个节点已经是重负载的,不应该向该节点分
7、配另外一个进程。第十章分布式调度10.2静态调度设计调度策略时要考虑的三个主要因素:静态调度算法的目标是调度一个任务集合,使它们在各个目标节点上有最短的执行时间。总体上来说,设计调度策略时要考虑的三个主要因素是处理机的互连、任务的划分和任务的分配。通常用图模型表示任务和处理机的结构。我们可以用任务优先图和任务交互作用图对任务集合建模。任务优先图是一个有向无环图(DAG),图中每个链接定义了任务间的优先关系,节点和链接上的标记表示任务的执行时间和任务完成后启动后续任务所需的时间间隔。任务交互作用图中,链接定义了两个任务间的相互关系,每
8、个链接赋予一对数,分别表示这两个任务在同一个处理机上时的通信开销和在不同处理机上时的通信开销。第十章分布式调度10.2静态调度第十章分布式调度10.2静态调度任务划分与分配任务划分的粒度:一个给定任务划分的粒度被定义为任务的计算量与通
此文档下载收益归作者所有