服务器 频道

用作业调度系统改善高性能计算集群效率

  【IT168 专稿】通过应用作业调度系统取代人工调度,可以显著提高石油行业高性能计算集群系统的利用率,实现节能降耗,同时有效降低集群的使用成本。

  高性能计算(High Performance Computing,HPC)集群是一组通过网络连接的高性能服务器(或者PC服务器)的松散耦合,这些服务器通过并行计算的方式来解决单台服务器无法满足的复杂计算问题,具有较高的性价比。

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

  集群系统管理存在的问题

  通常情况下,石油行业的一个地震资料处理项目大概有2/3的时间用于常规处理。在此期间,多数情况下以人机交互为主,计算节点空转率较高,使用效率较低。不过,在常规处理阶段也可能需要大量计算模块,如反褶积模块,这时又需要相对较多的计算机节点来完成此类型的作业。因此,采用手工分配方法很容易造成计算节点使用过程中的不合理,导致计算资源使用浪费。

  而对于需要大量计算资源的地震资料处理叠前偏移模块来说,在其建立偏移模型的阶段主要完成的作业是目标线偏移作业,作业涉及数据量不大,所需的计算节点规模也不大,一般情况下规模在30个节点以内,作业运行时间约几个小时,但是需要多次反复迭代以确保所建立模型的准确性,即使如此,仍有近一半的时间计算节点处于空转状态。

  总体而言,在一个完整的地震资料处理流程中,只有在整个数据体偏移的阶段才需要大量计算资源集中完成密集计算的任务,此时作业涉及数据量较大,通常情况下需要近100个节点约1周的时间来完成。这个阶段的计算节点利用率较高。但是如果以1年为周期来看,整体偏移的阶段所占比例较少,大部分时间偏移节点处于空转状态。

  综合分析地震资料处理应用流程的特点后,我们发现传统的采用手工调度的方式容易造成空转计算节点多,能源使用效率低,浪费较为严重。另外,采用手工分配模式分配给用户使用的计算资源是相对固定的,当有计算节点出现软硬件故障时,用户所能使用的计算节点就会减少,这将影响用户工作的进展。如果能够通过相应的技术手段实现根据用户不同处理阶段的计算需求而动态进行变化或调整计算资源,提高单个节点利用率,关闭闲置计算节点,那么整个集群系统的电能消耗将大幅下降,每单位电能的使用效率大大提高。另外,如果能够做到与机房运行环境的联动(包括UPS和精密空调),那么集群系统环境能耗也将随之下降,从而将大幅降低高性能计算集群系统的整体运行成本。

  作业调度系统的主要作用

  作业调度系统主要负责接收用户提交的作业请求,并根据特定的调度规则以及用户对作业的要求选择合适的计算资源来完成用户作业。在作业调度系统的帮助下,对用户而言高性能计算集群系统就好像一台具备很多CPU的大服务器,多个用户可以同时使用这个系统。作业调度系统管理用户提交的作业,为各个作业合理地分配资源,从而确保充分利用集群系统的计算能力,并尽可能迅速地得到运算结果。

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

  以下是对作业调度系统的基本要求:

  1. 单一系统映像从用户角度看,集群系统就好像一台具备很多CPU的大服务器,可以满足用户所需的运行作业的要求,用户无需关心其他的硬件或系统信息,可以全身心投入到专业应用的研究中。

  2. 资源负载监控为了确保每个作业都能分配到合适的资源,资源负载监控需要了解集群系统中各种资源的属性、状态以及用户提交的作业请求和正在运行的作业等信息,为基于策略的资源调度提供依据。

  3. 资源管理资源管理根据资源负载监控所获取的信息和相应的调度策略来给作业分配资源。另外,资源管理应该具有资源预留能力。这样不仅可以保留强大的资源给需要的作业,而且可以预留一定的冗余资源以应付集群中的结点失效和突发的计算。

  4. 策略管理策略管理综合从资源管理得到的各个计算节点上的资源状况和用户提交的作业信息,动态生成满足作业要求的资源的列表。策略管理还提供复杂的参数去定义计算环境和作业要求,并且提供简捷灵活的表达方式允许系统管理员实现基于特定策略驱动的资源调度方案。

  5. 负载分析作业调度系统还应提供相应的资源使用过程中的相关信息,方便后期的效率评估等工作的开展。

  精确调度提高利用率

  通过分析和研究后,我们认为通过采用作业调度技术能够较好地解决新遇到的大部分问题,保障高性能计算集群系统稳定、高效地运行,同时可降低部分PC集群规模扩充的需求。

  1. 提高计算节点使用效率

  现在生产项目不需要履行复杂的计算资源申请手续,直接提交相应的生产需求即可完成计算资源的分配,将计算节点故障对用户造成的影响降到最低。同时,作业调度根据用户作业请求的变化动态调整集群计算节点的使用,保证每个被调度计算节点高效率运行。

  2. 降低高性能计算集群运维成本

  通过作业调度技术的应用,可以根据生产需求动态调整高性能计算集群的使用规模,避免不必要的能源消耗,在很大程度上提高了集群系统的能源利用效率,这包括高性能计算集群计算子系统和相关的场地配套系统的能源利用效率,使集群能够充分发挥其解决大规模密集计算问题能力的同时合理降低其运行成本。

  3. 奠定节能降耗的基础

  对高性能计算集群来说,作业调度技术是节能降耗的前提和基础,以前的手工资源调度的方式容易产生失误或分配不合理的情况,势必会对科研生产造成影响,而采用成熟的作业调度技术将大大简化资源调度管理的环节。对于暂时用不到的节点,可以将其关机或睡眠,以最大程度地降低无用节点的能耗,相应的机房场地运行环境的能耗也随之降低。另外,利用资源调度软件提供的资源使用状况监控功能还可以形成相关集群运行情况报告,为决策提供可靠的依据。

  综上所述,作业调度技术的应用直接影响高性能计算集群系统及其配套场地环境应用效果,结合节点电源管理技术、模块化UPS技术以及相适应的制冷技术的综合应用,将在很大程度上降低高性能计算集群系统的使用成本,搭建高效合理的绿色计算环境。(新疆油田公司勘探开发研究院地球物理研究所 张峰)

0
相关文章