CN102508720B - 一种提高前处理模块和后处理模块效率的方法及系统 - Google Patents

一种提高前处理模块和后处理模块效率的方法及系统 Download PDF

Info

Publication number
CN102508720B
CN102508720B CN201110388581.7A CN201110388581A CN102508720B CN 102508720 B CN102508720 B CN 102508720B CN 201110388581 A CN201110388581 A CN 201110388581A CN 102508720 B CN102508720 B CN 102508720B
Authority
CN
China
Prior art keywords
calculate node
lock variable
identifier
node
storage device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201110388581.7A
Other languages
English (en)
Other versions
CN102508720A (zh
Inventor
岳捷
韩明
朱志成
盛迎新
申烛
孟凯锋
陈欣
李闯
孙翰墨
马龙
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Longyuan Beijing New Energy Engineering Technology Co ltd
Original Assignee
Zhongneng Power Tech Development Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Zhongneng Power Tech Development Co Ltd filed Critical Zhongneng Power Tech Development Co Ltd
Priority to CN201110388581.7A priority Critical patent/CN102508720B/zh
Publication of CN102508720A publication Critical patent/CN102508720A/zh
Application granted granted Critical
Publication of CN102508720B publication Critical patent/CN102508720B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供了一种提高前处理模块和后处理模块效率的方法,包括A.为I/O节点设置锁变量;B.通过为所述锁变量赋值,控制计算节点和存储设备进行数据交互操作。本发明还提供了一种提高前处理模块和后处理模块效率的系统。通过在I/O节点上设置锁变量,控制装置可依次启动各个计算节点组中的计算节点执行系统所分配的任务,并且通过锁变量,其他节点无法连通存储设备,当该计算节点完成读写操作后,才将等待队列中的计算节点分配给锁变量,从而实现依次启动各个计算节点组中的计算节点执行系统所分配的任务。

Description

一种提高前处理模块和后处理模块效率的方法及系统
技术领域
本发明涉及WRF(中尺度数值气象预报)领域,特别涉及一种提高前处理模块和后处理模块效率的方法及系统。
背景技术
WRF技术主要研究大气中尺度运动,关系到区域重大灾害性天气的产生和发展变化。主要应用卫星、雷达、风廓线仪和自动观测站等探测工具,对中尺度天气过程进行模拟研究和预报试验。
WRF系统具有巨大的、惊人的计算量,包括前处理(WPS)模块、主模式模块以及后处理模块。参见图1,在WRF前处理模块启动前,需要将输入到前处理模块的GFS(全球预报系统)气象数据由存储设备中拷贝至计算节点的硬件系统内存RAM中,之后启动前处理模块对GFS数据进行处理;接着启动WRF主模式模块进行积分运算,然后将WRF主模式模块的计算结果由存储设备中拷贝至计算节点的硬件系统内存RAM中,之后启动WRF系统中的后处理模块对WRF计算结果进行后处理。快速地将GFS(全球预报系统)气象数据以及将主模式模块的计算结果由存储设备拷贝至计算节点的硬件系统内存RAM中,是提高前处理模块和后处理模块的数据处理效率的一个重要因素。
如何将输入到前处理模块的GFS(全球预报系统)气象数据快速地拷贝至硬件系统内存RAM中以及将WRF主模式模块的计算结果快速地拷贝至硬件系统内存RAM中,是一个亟待解决的问题。
发明内容
为解决上述问题,本发明提供了一种提高前处理模块和后处理模块效率的方法,其特征在于,包括以下步骤:
A.为I/O节点设置锁变量;
B.通过为所述锁变量赋值,控制计算节点和存储设备进行数据交互操作。
通过在I/O节点上设置锁变量,控制装置可依次启动各个计算节点组中的计算节点执行系统所分配的任务。
其中,步骤B包括:配置与所述存储设备进行数据交互操作的计算节点,并将所述计算节点的标识符存储在所述锁变量中;接收各个计算节点的读写启动命令;当计算节点的标识符包含在所述锁变量中所存储的计算节点标识符中,则所述计算节点通过所述I/O节点对所述存储设备中的数据进行读写操作,并在所述计算节点完成对所述存储设备中的数据读写操作后,控制装置清空所述锁变量,并对所述锁变量重新进行赋值。
控制装置根据系统所分配的任务,可依次将计算节点组中的计算节点的标识符赋值给锁变量,只有锁变量标识过的计算节点才可通过I/O节点与存储设备进行数据交互操作,其他节点无法通过I/O节点与存储设备进行数据交互操作,从而可实现依次启动各个计算节点组中的计算节点执行系统所分配的任务。
其中步骤B中的接收各个计算节点的读写启动命令后,还包括:当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
通过锁变量,其他节点无法连通存储设备,从而确保锁变量中的计算节点进行读写操作,当该计算节点完成读写操作后,才将等待队列中的计算节点分配给锁变量,从而实现依次启动各个计算节点组中的计算节点执行系统所分配的任务。
其中,所述等待队列的计算节点按照提出读写请求的时间进行排序。
通过时间控制各个计算节点的读写操作,提供了数据处理的效率。
其中,所述等待队列的计算节点按照读写请求的优先级进行排序。
通过优先级控制各个计算节点的读写操作,提供了数据处理的效率。
其中,所述计算节点是通过计算节点组与所述存储设备相连接。
通过将计算节点分组,通过组来完成系统所分配的任务,提高了数据处理的效率。
本发明提供了一种提高前处理模块和后处理模块效率的系统,包括:至少多于一个的计算节点、存储设备、用于连接所述计算节点和存储设备的I/O节点以及控制装置,其特征在于,所述控制装置还包括:锁变量设置单元,用于为I/O节点设置锁变量;控制单元,用于通过为所述锁变量赋值,控制计算节点和存储设备进行数据交互操作。
通过在I/O节点上设置锁变量,控制装置可依次启动各个计算节点组中的计算节点执行系统所分配的任务。
其中,所述控制单元包括:锁变量赋值模块,用于配置与所述存储设备进行数据交互操作的计算节点,并将所述计算节点的标识符存储在所述锁变量中;接收模块,用于接收各个计算节点的读写启动命令;判断模块,用于判断该计算节点的标识符是否包含在锁变量中所赋值的计算节点的标识符表中;第一执行模块,用于当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
控制装置根据系统所分配的任务,可依次将计算节点组中的计算节点的标识符赋值给锁变量,只有锁变量的计算节点才可通过I/O节点与存储设备进行数据交互操作,其他节点无法通过I/O节点与存储设备进行数据交互操作,从而可实现依次启动各个计算节点组中的计算节点执行系统所分配的任务。
其中,所述控制单元还包括:第二执行模块,用于当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
通过锁变量,其他节点无法连通存储设备,从而确保锁变量中的计算节点进行读写操作,当该计算节点完成读写操作后,才将等待队列中的计算节点分配给锁变量,从而实现依次启动各个计算节点组中的计算节点执行系统所分配的任务。
附图说明
图1为WRF(中尺度数值气象预报)系统的工作流程图;
图2为本发明实施例所提供的一种提高前处理模块和后处理模块效率的方法的流程图;
图3本发明实施例所提供的一种提高前处理模块和后处理模块效率的系统的结构示意图。
具体实施方式
下面将结合附图,对本发明实施例进行详细描述。参见图2,本发明实施例提供了一种提高前处理模块和后处理模块效率的方法,该方法包括以下步骤:
S200:中心控制装置为I/O节点设置锁变量;
在存储设备中,存储有大量的在前处理模块中所需要的GFS(全球预报系统)气象数据,在前处理模块启动前,需要将这些数据从 该存储设备中读取到计算节点中,然后启动前处理模块对这些GFS(全球预报系统)气象数据进行处理,再启动主模式模块进行积分运算,积分计算的结果也存储在存储设备中,在后处理模块启动前,需要将主模式模块从该存储设备中读取到计算节点中。在本实施例中,以将存储设备中的GFS(全球预报系统)气象数据拷贝至计算节点的硬件系统内存RAM中为示例,同样可以理解,本发明的方法也适用于将存储设备中的主模式的计算结果拷贝至计算节点的硬件系统内存RAM中。
在WRF系统中,计算节点与存储设备的连接关系,参见图3,计算节点的数目和I/O节点的数目,可根据需要处理的任务量进行配置,根据需要完成的任务要求,为该任务配置计算节点组以及相应的计算节点,在该系统中,每个计算节点具有唯一的标识符,同时根据该任务的要求,可将计算节点分组,从而可以将需要处理的任务分为几部分,由不同的组执行该任务的不同部分。在该示例中,根据需要处理的任务配置24个计算节点,3个I/O节点,将计算节点分为6组,每组4个计算节点。计算节点组分别通过光纤变换器与I/O节点相连接,并通过I/O节点与存储设备相连接,计算节点组内的计算节点相互电连接。
计算节点与I/O节点的连接,可通过组的方式相连接,例如,组1、组2......组5、组6分别与计算节点的组与I/O节点相连接,每组的计算节点分别通过其所属的组与I/O节点连接,并通过I/O节点与存储设备相连接,控制装置为I/O节点设置锁变量,对锁变量赋值就是将允许通过I/O节点读取存储设备中的数据的计算节点的名称;控制装置通过为锁变量赋值,控制各个计算节点读取存储设备的数据。
控制装置依据从作业调度系统(torque)中获取的计算节点组所包含的计算节点名称赋值锁变量,确保锁变量中的每个计算节点具有充足的读取时间,进行数据的读取操作。在上述计算节点进行读取操作的时间内,其他计算节点组中的计算节点在此过程中处于排 队等待状态,可按照其他计算节点组中的计算节点提出读写请求的时间进行排序或按照其他计算节点组中的计算节点读写操作的优先级进行排序。
S210:中心控制装置接收读写启动命令,并根据该读写启动命令,为I/O节点的锁变量赋值;
控制装置接收系统发送的启动计算节点读取存储设备中的数据的命令,并根据该命令,控制各个计算节点读取存储设备中的数据。
当系统采用并行阵列进行计算时,各个计算节点同时对存储设备的数据进行读取,由于频繁的读写控制和操作,使得数据处理效率极其低下,甚至造成数据读写瓶颈,无法进行数据的读取。
当中心控制装置接收到系统发送的启动计算节点读取存储设备中的数据的命令,根据该读写启动命令,为I/O节点上锁变量进行赋值,中心控制装置为使每个计算节点都具有充足的读写时间,需要依次启动各个计算节点组,通过将一个计算节点组中的计算节点赋值给锁变量,从而通过锁变量,使其它计算节点组中的计算节点无法读取存储设备中的数据,当该计算节点组中的计算节点完成读写操作后,控制装置清空I/O节点上的锁变量,并可依据计算节点组排队顺序将下组计算节点名称赋值给锁变量,从而使这组计算节点可以读取存储设备中的数据。以此类推,依次启动不同计算节点组的计算节点进行存储数据操作。
S220:当计算节点的名称包含在锁变量中所赋值的计算节点的名称表中,该计算节点通过I/O节点读取所述存储设备中的数据;
控制装置通过在I/O节点上设置锁变量,依次将计算节点组中的计算节点的名称赋值给锁变量,只有满足锁变量的计算节点通过I/O节点与存储设备进行数据交互操作,其他节点无法通过I/O节点与存储设备进行数据交互操作,从而可实现依次启动各个计算节点组中的计算节点执行系统所分配的任务。
S230:当所述计算节点完成读写操作后,清空锁变量中的计算节点表,并为当前锁变量赋值;
当前锁变量中的计算节点组完成读写操作后,控制装置会清空I/O节点上的锁变量并可依据计算节点组排队顺序将下组计算节点名称赋值给锁变量,例如,控制装置从作业调度系统(torque)中读取最先提出I/O读写请求的计算节点组中各计算节点名称,将计算节点名称赋值给控制装置为I/O节点所设置的锁变量,赋值后锁变量允许I/O节点与当前锁变量所赋值的计算节点组中的计算节点发生读写交互。通过当前锁变量,允许其锁变量所赋值的计算节点组与I/O节点发生读写交互。控制装置按照此运行规则控制计算节点与I/O节点读写,从而确保I/O节点始终以较高的效率运行。
重复执行步骤S220和S230,直至完成系统分配的任务。
在本实施例中各个计算节点从存储设备中读取的是在前处理模块中所需要的GFS(全球预报系统)气象数据,同样可以理解的是,本实施例的上述方法同样适用于将主模式模块的计算结果从硬件系统内存拷贝至存储设备中,以及从存储设备中拷贝至硬件系统内存RAM中。
本发明实施例提供了一种提高前处理模块和后处理模块效率的系统,参见图3,该系统包括:计算节点300,分别与计算节点光连接的I/O节点310、与I/O节点310电连接的控制装置320以及与控制装置320电连接的存储设备330。控制装置320包括锁变量设置单元和控制单元,锁变量设置单元用于为I/O节点设置锁变量;控制单元,用于通过为所述锁变量赋值,控制计算节点和存储设备进行数据交互操作。
其中控制单元包括:锁变量赋值模块,用于配置与所述存储设备进行数据交互操作的计算节点,并将所述计算节点的标识符存储在所述锁变量中;接收模块,用于接收各个计算节点的读写启动命令;判断模块,用于判断该计算节点的标识符是否包含在锁变量中所赋值的计算节点的标识符表中;第一执行模块,用于当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述 锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
其中控制单元还可包括:第二执行模块,用于当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
本发明系统的实施例对应方法实施例,该系统可以实施上述方法的任一步骤,其具体实现参见方法实施例。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,例如,可以将不同功能的模块通过一个集成芯片来实现等,均在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (6)

1.一种提高前处理模块和后处理模块效率的方法,其特征在于,包括以下步骤:
根据需要完成的任务要求,为该任务配置计算节点以及I/O节点,将计算节点分组,从而可以将需要处理的任务分为几部分,由不同的组执行该任务的不同部分;
A.为I/O节点设置锁变量;
B.配置与存储设备进行数据交互操作的计算节点,并将所述计算节点的标识符存储在所述锁变量中;
接收各个计算节点的读写启动命令;
当计算节点的标识符包含在所述锁变量中所存储的计算节点标识符中,则所述计算节点通过所述I/O节点对所述存储设备中的数据进行读写操作,并在所述计算节点完成对所述存储设备中的数据读写操作后,控制装置清空所述锁变量,并对所述锁变量重新进行赋值;
所述计算节点是通过计算节点组与所述存储设备相连接。
2.根据权利要求1所述的方法,步骤B中的接收各个计算节点的读写启动命令后,还包括:
当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
3.根据权利要求2所述的方法,所述等待队列的计算节点按照提出读写请求的时间进行排序。
4.根据权利要求2所述的方法,所述等待队列的计算节点按照读写请求的优先级进行排序。
5.一种提高前处理模块和后处理模块效率的系统,包括:至少多于一个的计算节点、存储设备、用于连接所述计算节点和存储设备的I/O节点以及控制装置,其特征在于,所述控制装置还包括:
锁变量设置单元,用于为I/O节点设置锁变量;
控制单元,用于通过为所述锁变量赋值,控制计算节点和存储设备进行数据交互操作;
所述控制单元包括:
锁变量赋值模块,用于配置与所述存储设备进行数据交互操作的计算节点,并将所述计算节点的标识符存储在所述锁变量中;
接收模块,用于接收各个计算节点的读写启动命令;
判断模块,用于判断该计算节点的标识符是否包含在锁变量中所赋值的计算节点的标识符表中;
第一执行模块,用于当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
6.根据权利要求5所述的系统,其特征在于,所述控制单元还包括:
第二执行模块,用于当计算节点的标识符没有包含在所述锁变量中的计算节点标识符中,则将所述计算节点的标识符存储到等待队列中,并在所述控制装置清空所述锁变量并对所述锁变量重新进行赋值时,将所述等待队列中排在前面的计算节点标识符存储到所述锁变量中。
CN201110388581.7A 2011-11-29 2011-11-29 一种提高前处理模块和后处理模块效率的方法及系统 Active CN102508720B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201110388581.7A CN102508720B (zh) 2011-11-29 2011-11-29 一种提高前处理模块和后处理模块效率的方法及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201110388581.7A CN102508720B (zh) 2011-11-29 2011-11-29 一种提高前处理模块和后处理模块效率的方法及系统

Publications (2)

Publication Number Publication Date
CN102508720A CN102508720A (zh) 2012-06-20
CN102508720B true CN102508720B (zh) 2017-02-22

Family

ID=46220812

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201110388581.7A Active CN102508720B (zh) 2011-11-29 2011-11-29 一种提高前处理模块和后处理模块效率的方法及系统

Country Status (1)

Country Link
CN (1) CN102508720B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9553822B2 (en) * 2013-11-12 2017-01-24 Microsoft Technology Licensing, Llc Constructing virtual motherboards and virtual storage devices
CN107798059B (zh) * 2017-09-08 2023-05-26 中国电力科学研究院 一种nco气象数据结构化存储方法和装置
CN108073450B (zh) * 2017-12-18 2021-10-15 北京搜狐新媒体信息技术有限公司 一种任务调度方法、装置及系统
CN111597038B (zh) * 2020-01-08 2023-07-14 中国空气动力研究与发展中心计算空气动力研究所 一种超级计算机i/o转发结点轮询映射方法

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2006050349A2 (en) * 2004-10-29 2006-05-11 Hewlett-Packard Development Company, L.P. Methods and apparatus for running applications on computer grids
CN1809815A (zh) * 2003-05-01 2006-07-26 国际商业机器公司 管理锁定和事务
JP2007102666A (ja) * 2005-10-07 2007-04-19 Dainippon Printing Co Ltd 並列処理システム、サーバ、処理端末装置、並列処理方法、プログラム、及び、記録媒体
CN101013381A (zh) * 2007-01-26 2007-08-08 华中科技大学 基于对象存储系统的分布式锁

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1809815A (zh) * 2003-05-01 2006-07-26 国际商业机器公司 管理锁定和事务
WO2006050349A2 (en) * 2004-10-29 2006-05-11 Hewlett-Packard Development Company, L.P. Methods and apparatus for running applications on computer grids
JP2007102666A (ja) * 2005-10-07 2007-04-19 Dainippon Printing Co Ltd 並列処理システム、サーバ、処理端末装置、並列処理方法、プログラム、及び、記録媒体
CN101013381A (zh) * 2007-01-26 2007-08-08 华中科技大学 基于对象存储系统的分布式锁

Also Published As

Publication number Publication date
CN102508720A (zh) 2012-06-20

Similar Documents

Publication Publication Date Title
CN102063336B (zh) 一种分布式计算多应用功能异步并发调度方法
CN102508639B (zh) 一种基于卫星遥感数据特征的分布式并行处理方法
CN104423968B (zh) 设计业务逻辑的方法、执行其的服务器和储存媒介
CN103345514A (zh) 大数据环境下的流式数据处理方法
CN102508720B (zh) 一种提高前处理模块和后处理模块效率的方法及系统
CN112685153A (zh) 微服务调度方法、装置以及电子设备
CN102521056A (zh) 任务分配装置和任务分配方法
CN102855153B (zh) 面向片式多核处理器的流编译优化方法
CN114253735B (zh) 一种任务处理方法、装置及相关设备
CN103425536A (zh) 一种面向分布式系统性能测试的测试资源管理方法
CN106371924B (zh) 一种最小化MapReduce集群能耗的任务调度方法
CN106383746A (zh) 大数据处理系统的配置参数确定方法和装置
CN110990121B (zh) 一种基于应用画像的Kubernetes调度策略
CN107704323A (zh) 一种网络爬虫任务调度方法及装置
CN110347504A (zh) 众核计算资源调度方法及装置
CN112306658A (zh) 一种多能源系统数字孪生应用管理调度方法
CN113886034A (zh) 任务调度方法、系统、电子设备及存储介质
CN112764893A (zh) 数据处理方法和数据处理系统
CN115495221A (zh) 一种数据处理系统及方法
CN107544844A (zh) 一种提升Spark运行效能的方法及装置
CN109301936B (zh) 一种基于容器调度架构的智能变电站运维信息监视系统
CN104239520B (zh) 一种基于历史信息的hdfs数据块放置策略
CN105005503A (zh) 基于元胞自动机的云计算负载均衡任务调度方法
CN113010296B (zh) 基于形式化模型的任务解析与资源分配方法及系统
CN106844024B (zh) 一种自学习运行时间预测模型的gpu/cpu调度方法及系统

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20240228

Address after: F17, Block C, International Investment Building, No. 6-9, Fuchengmen North Street, Xicheng District, Beijing 100,034

Patentee after: Longyuan (Beijing) New Energy Engineering Technology Co.,Ltd.

Country or region after: China

Address before: No. 6-9 Fuchengmen North Street, Xicheng District, Beijing, 100034 (16th Floor, Building C, International Investment Building)

Patentee before: ZHONGNENG POWER-TECH DEVELOPMENT Co.,Ltd.

Country or region before: China

TR01 Transfer of patent right