Chinaunix首页 | 论坛 | 博客
  • 博客访问: 51245
  • 博文数量: 42
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 480
  • 用 户 组: 普通用户
  • 注册时间: 2014-04-03 15:29
文章分类
文章存档

2015年(14)

2014年(28)

我的朋友

分类: 信息化

2015-02-06 14:04:31

         LMT NEW PBS作业排队运算系统对批处理作业的调度

    LMT NEW PBS作业排队调度程序从后备作业中选取若干个作业到内存并投入运行。它为选中作业建立进程并分配必要的资源,这时,这些被选中的作业处于执行状态。PBS作业调度的功能是记录系统中各作业的状况,从后备作业队列中挑选一批作业进入执行状态,以及为被选中作业分配资源建立进程和在作业执行结束后释放所占用的资源等。其中最主要的是从后备作业队列中选取一批作业进入执行状态。

    根据不同的目标,将会有不同的调度算法。一般来说,调度目标主要是以下四点:

①对作业应该是公平合理的;

②应使设备有高的利用率;

③每天执行尽可能多的作业;

④有短的响应时间。

    由于这些目标的互相冲突,任一调度算法要想同时满足上述目标是不可能的。例如,要想执行尽可能多的作业,调度算法就应选择短作业优先,而这对那些预计执行时间长的作业又是不公平的,甚至有可能永远得不到运行;要想对所有作业公平合理,调度算法就应选择先来先服务。如果考虑的因素过多,调度算法就会变得非常复杂,会使系统开销增加,资源利用率下降。

作业调度和进程调度的区别: 

    一个作业从进入系统到最后完成,一般至少要经历两级调度:作业调度和进程调度。 

    作业调度是宏观上的高级调度,它的主要功能是根据一定的算法,从输入井中选中若干个作业,分配必要的资源,如主存、外设等,为它们建立初始状态为就绪的作业进程。 

    进程调度是微观上的低级调度,它的主要功能是根据一定的算法将CPU分派给就绪队列中的一个进程。一般的操作系统都必须有进程调度。 

    可见在多道系统中,作业调度与进程调度是相互配合来实现多道作业的并行执行的。两者的关系可用下图表示。

批处理作业的调度
  作业调度的功能
  作业调度程序作为一个系统进程在系统中运行,它是在系统初始化时被创建的,具有如下功能:
  ①记录系统中各作业的情况。为此,系统为每个作业建立一个作业控制块,在块中登记作业的有关信息。作业控制块是作业调度程序用来实现作业调度和管理的数据结构。
  ②按照系统提供的调度算法从后备队列中选取作业投入运行。通常在输入井中有一批作业处于后备状态,而只有少数几个作业处于执行状态。作业调度程序的主要功能就是按照一定的调度算法从后备队列中选取若干个作业投入运行。
  ③给被选中的作业分配必要的资源。一个作业从后备变成运行状态之前 ,作业调度程序应为该作业建立相应进程 ,并分配必要的内存、外围设备等资源。至于处理器则由进程调度程序分配。
  ④为作业开始运行作好准备工作。将选取的作业控制块传递给作业运行控制系统,随时将作业的变化情况记入作业控制块(如状态改为执行状态);构造和填写作业运行时所需表格,建立负责其运行控制的作业运行控制程序等。
  ⑤作好作业完成时的善后工作 。作业运行可能正常结束 或非正常中止 ,作业调度收回分配的资源 ,包括作业控制块。对非正常结束,还应给出引起错误的原因,以便用户纠正错误,重新将作业投入运行。









批处理作业的控制
  一个批处理控制方式的作业被作业调度选中后,操作系统按照用户的作业控制说明书中所规定的控制要求去控制作业的执行。一个作业往往要分几个作业步执行,一般说,总是按作业步的顺序控制作业的执行,一个作业步执行结束后,就顺序取下一个作业步继续执行,直到最后一个作业步完成,整个作业就执行结束。当一个作业执行结束后,系统收回作业所占的资源且撤离该作业,作业执行的结果在输出井中等待输出。

  如果作业执行到某个作业步时发生错误,则要分析错误的性质,对某些用户估计到的错误且用户己在作业控制说明书中提出的处理办法的,系统应按用户的说明转向指定的作业步继续顺序执行,直至作业执行结束。

选择调度方式和调度算法的若干法则

1.面向用户的准则

周转时间短

    通常把周转时间的长短作为评价批处理系统的性能、选择作业调度方式与算法的重要准则之一。所谓周转时间,是指从作业被提交给系统开始,到作业完成为止这段时间间隔(称为作业周转时间)。它包括四部分时间:作业在外存后备队列上等待调度的时间,进程在就绪队列上等待进程调度的时间,进程在CPU上执行的时间,以及进程等待I\O操作完成的时间。其中的后三项在一个作业的整个处理过程中可能会发生多次。

    对每个用户而言,都希望自己作业的周转时间最短。但作为计算机系统的管理者,则总是希望能使平均周转时间最短,这不仅会有效的提高系统资源的利用率,而且还可使大多数用户都感到满意。

响应时间快

    常把响应时间的长短用来评价分时系统的性能,这是选择分时系统中进程调度算法的重要准则之一。所谓响应时间,是从用户通过键盘提交一个请求开始,直至系统首次产生响应为止的时间,或者说,直到屏幕上显示出结果为止的一段时间间隔。它包括三部分时间:从键盘输入的请求信息传送到处理机的时间,处理机对请求信息进行处理的时间,以及将所形成的响应信息回送到终端显示器的时间。

截止时间的保证

    这是评价实时系统性能的重要指标,因而是选择实时调度算法的重要准则。所谓截止时间,是指某任务必须开始执行的最迟时间,或必须完成的最迟时间。对于严格的实时系统,其调度方式和调度算法必须能保证这一点,否则将可能造成难以预料的后果。

优先权准则

    在批处理、分时和实时系统中选择调度算法时,都可遵循优先权准则,以便让其某些紧急的作业能得到及时处理。在要求较严格的场合,往往还须选择抢占式 方式,才能保证紧急作业得到及时处理。

2.面向系统的准则

    这是为了满足系统要求而应遵循的一些准则。其中,较重要的的有以下几点:

系统吞吐量高

    这是用于评价批处理系统性能的另一个重要指标,因而是选择批处理作业调度的重要准则。由于吞吐量是指在单位时间内系统所完成的作业数,因而它与批处理作业的平均长度具有密切关系。对于大型作业,一般吞吐量约为每小时一道作业;对于中、小型作业,其吞吐量则可能达到数十道作业之多。作业调度的方式和算法对吞吐量的大小也将产生较大影响。事实上,对用同一批作业,若采用了较好的调度方式和算法,则可显著的提高系统的吞吐量。

处理机利用率好

    对于大、中型多用户系统,由于CPU价格十分昂贵,致使处理机的利用率成为衡量系统性能的十分重要的指标;而调度方式和算法对处理机的利用率起着十分重要的作用。在实际系统中,CPU的利用率一般在40%到90%之间。在大、中型系统中,在选择调度方式和算法时,应考虑到这一准则。但对于单用户微机或某些实时系统,则此准则就不那么重要了。

各类资源的平衡利用

    在大、中型系统中,不仅要处理机的利用率高,而且还应能有效的利用其它各类资源,如内存、外存和I\O设备等。选择适当的调度方式和算法可以保持系统中各类资源都处于忙碌状态。但对于微型机和某些实时系统而言,该准则并不重要。













        节点作业调度是分布式制造中参与各方进行协同的主要手段,但异地协调具有信息不透明的特点使得各方协同困难。建立节点作业和制造资源描述的信息基础,然后构建节点作业调度系统进行作业调度是解决异地协同的有效途径。 首先,信息基础的建立、作业调度算法设计和节点作业调度系统的构建是其关键技术。 接着,针对信息基础中的作业描述不一致、扩展性差、难于交换等问题,使之更加适应分布式异构环境。 第三,针对现存的信息基础中制造资源描述多样化的特点,LMT NEW PBS作业排队调度系统从服务的责权利角度出发,提出一种新式的调度运算方法。该方法使用组织资源和单一资源的资源组织形式,并利用树形结构描述资源,统一了资源模型的使用原则,以保证信息在异构环境下的适应性。 

    LMT NEW PBS作业排队调度系统中对中心节点的调度执行,以提高系统效率、稳定性和可靠性。其中创新性的工作主要包括三部分:

(1)基于节点历史状态的节点效能描述方法

(2)基于节点效能的预调度算法

(3)传递依赖关系信息的中心节点同步恢复机制。

    随着高性能计算集群应用规模的不断扩充,集群的管理问题也随之而来。起初集群规模较小,比较容易管理和维护,系统的能耗和运维成本问题还不明显。但随着集群规模的不断扩充,集群系统能耗高、利用效率低、大规模集群系统运维管理困难等缺点逐渐凸显出来。

    在LicManager的PBS作业调度系统的帮助下,对用户而言高性能计算集群系统就好像一台具备很多CPU的大服务器,多个用户可以同时使用这个系统。PBS作业调度系统管理用户提交的作业,为各个作业合理地分配资源,从而确保充分利用集群系统的计算能力,并尽可能迅速地得到运算结果。

    LicManager的集群作业调度管理可以根据用户的需求,动态地完成集群的软硬件资源的管理和调度,保证用户作业公平合理地共享集群资源,提高系统利用率和吞吐率。

阅读(310) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~