CN103873321A - 基于分布式文件***的仿真分布式并行计算平台及方法 - Google Patents
基于分布式文件***的仿真分布式并行计算平台及方法 Download PDFInfo
- Publication number
- CN103873321A CN103873321A CN201410079472.0A CN201410079472A CN103873321A CN 103873321 A CN103873321 A CN 103873321A CN 201410079472 A CN201410079472 A CN 201410079472A CN 103873321 A CN103873321 A CN 103873321A
- Authority
- CN
- China
- Prior art keywords
- calculation
- distcomp
- task
- scheduling
- node
- 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.)
- Granted
Links
Images
Landscapes
- Computer And Data Communications (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了基于分布式文件***的仿真分布式并行计算平台及方法;所述平台包括:若干客户端,用户通过客户端提交任务到调度节点,由调度节点统一分配任务经由交换机传输到若干计算节点参与计算,所述计算节点计算完成后将计算结果传回调度节点,再由调度节点处理计算结果并且直接写入或通过数据接口写入数据库并通知客户端计算完毕;本发明的有益效果:大幅提高了输入计算数据与输出计算结果通信效率,从而大幅提高了整个分布式并行计算平台计算效率,同时分布式文件***的使用,有助于降低网络拥塞状态下大文件传输交换出错几率,提高仿真计算结果可靠性与正确性。
Description
技术领域
本发明涉及一种基于分布式文件***的仿真分布式并行计算平台及方法。
背景技术
分布式文件***(Distributed File Systems)是基于客户机/服务器架构的网络文件***。一个典型的网络文件***可能包括多个供多客户端访问的服务端,对等特性允许一些服务器既扮演客户机,又充当服务机的双重角色。例如,用户可以“发表”一个允许其他客户机访问的文件目录,对于客户机来说,这个文件目录与使用本地驱动器无异,目前三种基本的分布式文件***分别为:网络文件***(NFS)、Andrew文件***(AFS)、分布式文件***(DFS)。
网络文件***(NFS)最早由Sun微***公司作为TCP/IP网上的文件共享***开发。Sun公司估计现在大约有超过310万个***在运行NFS,大到大型计算机、小至PC机,其中至少有80%的***是非Sun平台。NFS最初是针对家庭直连远程控制、局域网无盘工作站以及服务器而设计的。价格更低、性能更高的Linux计算集群、多核处理器以及刀锋系列产品的出现,使得人们对更为高效的文件访问的需求异军突起。1984年制定的协议在速度上显然无法满足用户的需求。“NFS从Lustre和GPFS等集群文件***上感到了压力,Google GFS等Web2.0服务供应商的定制文件***技术也在向NFS施加影响。”目前NFS已经进展到pNFS阶段,也就是NFS4.1版本。pNFS代表着是NFS十几年最为重要的功能升级。将并行I/O标准化,以及允许客户通过并行方式直连存储设备是pNFS的两项重要成就。
Andrew文件***(AFS)结构与NFS相似,由卡内基·梅隆大学信息技术中心(ITC)研发、现由前ITC职员组成的Transarc公司负责开发和销售。AFS较NFS有所增强。目前已经有基于AFS2的Coda File System成功应用实施。
分布式文件***(DFS)是AFS的一个版本,作为开放软件基金会(OSF)的分布式计算环境(DCE)中的文件***部分。
通过计算机来仿真电力***实际运行过程已经成为电力***仿真的主流,早期由于电力***规模小,模型简单,因此单用户在单机上就能完成数据维护和仿真分析。随着跨区互联电网的形成和电网规模的不断扩大,电网的运行过程越来越复杂,仿真计算量也越来越大,单机的仿真计算已经难以满足工作需求,因此,分布式计算被应用到电力***仿真领域中,不少公司开发了分布式计算平台。目前推广使用的具有自主产权的电力***分布式计算平台采用通信中间件传递文件与控制指令,短处比较明显:大文件传输交换效率低,出错几率大,通信效率不高,长处突出表现为:短文件(控制指令)吞吐量大,出错几率极小,通信效率高。
为了发挥现有研究成果——自主产权分布式并行计算平台通信中间件长处,规避实际使用过程中出现的短处,引入分布式文件***改进分布式并行计算平台通信环境是最佳选择。发明内容
本发明的目的就是为了解决上述问题,提供一种基于分布式文件***的仿真分布式并行计算平台及方法,它具有大幅提高了输入计算数据与输出计算结果通信效率,从而大幅提高了整个分布式并行计算平台计算效率,同时分布式文件***的使用,有助于降低网络拥塞状态下大文件传输交换出错几率,提高仿真计算结果可靠性与正确性的优点。
为了实现上述目的,本发明采用如下技术方案:
基于分布式文件***的仿真分布式并行计算平台,包括:若干客户端,用户通过客户端提交任务到调度节点,由调度节点统一分配任务经由交换机传输到若干计算节点参与计算,所述计算节点计算完成后将计算结果传回调度节点,再由调度节点处理计算结果并且直接写入或通过数据接口写入数据库并通知客户端计算完毕。
所述客户端是用于用户提交任务的,相当于客户体验界面,只要遵守了分布式计算平台相关协议和接口,都可以采用tcp机制调用相关接口提交计算任务请求到分布式计算平台参与计算,并通过数据库读取将计算结果展现给用户。
所述调度节点属于整个分布式并行计算平台的核心服务器,用于任务接收,任务调度,任务分配以及超时管理和控制的节点服务器,每一个用户提交的计算任务请求都由它来统一分配和调度,计算完成后,还由它将计算结果写入异地数据库并且通知客户端任务已计算完成。
所述交换机是一种硬件设备,负责连接多台服务器节点的网络桥梁,让每个服务器之间可以通过有线网或无线网互相通信,从而完成不同服务器之间的消息和数据传送。
所述计算节点是分布式计算平台的计算业务核心处理服务器,完成接收和响应从调度节点服务器传送过来的命令和数据,然后对命令加以分析,调用核心计算程序参与计算,计算完毕后还将计算结果打包传送到调度节点,另外还负责将自己的硬件资源信息(cpu核数,磁盘空间信息,内存大小)传送到调度节点。
所述基于分布式文件***的仿真分布式并行计算平台的计算方法,包括如下步骤:
步骤(1):用户通过客户端提交普通计算任务和/或高级计算任务,计算任务通过第一通信中间件netinit将发送给调度节点,其中普通计算任务将数据发送给调度节点的分布式平台DistComp,高级计算任务将数据发送给调度节点的调度壳distcomp_master,所述调度节点的调度壳distcomp_master分别与若干个第三方接入平台的厂家主控程序、分布式平台DistComp和第二通信中间件netinit进行通信;
步骤(2):第二通信中间件将接收到的高级计算任务发送给计算节点的计算壳distcomp_master开始计算,同时计算壳distcomp_master还与分布式平台DistComp和第三方接入平台的厂家计算程序进行通信。
所述步骤(1)中的普通计算任务包括:暂稳PSASP_ST.exe、电压稳定PSASP_VS.exe、小干扰PSASP_SSR.exe、静态电压稳定PSASP_N1.exe、短路电流PSASP_SCC.exe;所述高级计算任务包括:稳定浴度PSASP_DISTATC.exe、暂稳辅助决策PSASP_TSENSE.exe、小干扰辅助决策PSASP_SSTSENSE.exe;高级计算以普通计算结果为输入,旨在解决普通计算中***出现的越限失稳故障等情况,通过调节***内发电机出力,让***解决故障状态,达到稳定运行工况;
所述步骤(1)的普通计算任务的具体计算方法为:
步骤(1a-1):调度节点收到普通任务计算请求,首先分析TaskList子任务配置文件,分析每个子任务计算类型、超时时间及任务编号,并对每个子任务创建一个单独的超时子线程,然后将子任务加入任务队列,将超时子线程加入超时任务线程池;
步骤(1a-2):子任务分析就绪之后,根据计算节点可用资源情况,将各个子任务下发到对应的计算节点参与计算,然后进入查询和超时判断,直到超时定时器被触发或者有计算结果返回;
步骤(1a-3):当调度服务器主控进程DistComp收到计算节点返回的某个子任务计算结果信息时,查询任务队列找到该子任务,然后标注计算状态为完成并且撤销该子任务对应的定时器;
步骤(1a-4):当某个子任务设置的超时定时器函数被触发时,DistComp首先判断该子任务超时次数是否已经达到预先设定的次数,如果已经达到上限,则标注该子任务计算失败并且撤销对应定时器;如果没有达到上限,则重新发送该子任务到某个可用计算节点再次参与计算;
步骤(1a-5):在超时函数处理或者计算结果返回处理过程中,DistComp会判断是否所有子任务都已经完成或者超时失败,如果TaskList配置文件中的每一行任务都已经处理完成,则将结果信息和任务完成状态写入数据库,并通知客户端任务计算完成。
所述步骤(1)的高级计算任务的具体计算方法为:
(1b-1)调度节点的调度壳distcomp_master控制进程收到高级计算任务请求,首先进行协议分析和数据生成,然后分析从客户端发来的TaskControl.conf文件,将厂家主控程序记录在进程列表队列;
(1b-2)调度节点的调度壳distcomp_master分析数据目录,算出需要多少计算节点来计算这次任务,然后向DistComp发送资源请求消息,待消息反馈后分析平台目前可用节点资源是否满足需求,如果满足,跳步骤(1b-3),否则继续发送资源请求消息,直到资源满足为止;
(1b-3)调度节点的调度壳distcomp_master根据资源信息请求反馈生成HostTask.conf配置文件和其他配置文件,将配置文件重新打包到zip文件,并向DistComp发送节点独占请求信息,让DistComp交出计算节点控制权,由调度节点的调度壳distcomp_master完全控制;
(1b-4)成功控制计算节点后,调度节点的调度壳distcomp_master分析TaskControl.conf文件,并同时启动该文件所列的所有厂家管理进程,将进程号记录在队列;
(1b-5)调度节点的调度壳distcomp_master从进程队列里取出一个厂家管理进程,向其发送USR1信号来完成数据和目录生成准备工作,如果在规定时间内未收到该进程反馈的USR1信号,则认为数据准备工作无法就绪,如果目前进程队列为空,则此次任务计算失败,否则从进程队列中继续取出另一个厂家管理进程,继续做(1b-5)工作;
(1b-6)成功收到数据就绪USR1信号后,distcomp_master将zip文件内容及协议内容一起选择多播到计算节点参与计算工作,并设置定时器;
(1b-7)在计算节点结算过程中,每次收到一个结果完成的消息后都向当前正在处理的厂家管理进程发送USR2计算任务完成信号,在定时器时间到达内并且重发次数小于设定值,如果还没有收到厂家管理进程的USR2计算任务完成信号,则分析哪些节点未完成计算并重新生成HostTask.conf文件,将数据重新选择多播到相应节点参与计算,转至(1b-8);
(1b-8)当收到厂家的USR2计算任务完成信号或者超时重发次数已达上限的情况下,将该厂家计算任务置成完成状态,并发送消息通知数据节点进行数据库入库等操作,然后判断厂家进程队列所有进程是否都处理完,如果未处理完,则转至(1b-5),否则表示此次界面提交任务已经全部完成,向DistComp发送计算完成消息,回收独占的计算节点资源,交回DistComp控制。
所述步骤(2)的具体计算方法为:
(2-1)计算节点DistComp收到高级计算任务的计算请求后,从消息队列中取出消息并解析消息,在相应目录生成数据;
(2-2)数据准备工作完成后,向计算节点的计算壳distcomp_interface发送高级计算请求消息;
(2-3)计算节点的计算壳distcomp_interface首先分析TaskControl.conf文件,然后根据其内容分析相应LocalTask_PSASP_DISTATCLF.exe_hostname.conf文件并将所有需要参与计算的高级计算程序记录在队列中;
(2-4)从队列中取出一个第三方接入平台的厂家计算程序并启动和监视进程退出信号并设置定时器,当计算进程计算完成退出后读取结果文件并启动下一个计算进程,待所有计算进程都算完后,向调度节点发送连带结果文件内容的计算成功消息;
(2-5)如果超时时间已过,计算进程未算出结果,则根据重算次数来决定是否重启计算进程重新计算,如果需要重新计算,则转至(2-4),否则向调度节点发送计算失败的消息。
本发明的有益效果:
1、本发明充分利用了分布式文件***MooseFS分流大文件数据交换,对文件数量大、单个文件存储空间占用小的电力***仿真分析计算应用环境下,大幅提高了输入计算数据与输出计算结果通信效率,从而大幅提高了整个分布式并行计算平台计算效率,同时分布式文件***的使用,有助于降低网络拥塞状态下大文件传输交换出错几率,提高仿真计算结果可靠性与正确性。
2、传统分布式并行计算平台使用单一的文件数据传输交换通道,容易因单点软件故障导致整个并行计算平台失效,稳定性不高。使用分布式文件***重新构建分布式并行计算平台之前的分布式计算平台,将分布式文件***运用到分布式并行计算平台后,计算速度、计算准确度和平台稳定性明显提高。此外,分布式文件***MooseFS可以存储多份数据副本,支持总量P级数据存储与M级并发存取,对数据安全性与存储***支持容量上限有大幅提升,可以用分布式文件***构建存储***,取代传统分布式文件***历史数据备份使用的盘阵,减少硬件投资,提高数据安全级别。
3、借助分布式文件***处理电力***仿真计算数据的思想。
4、引入分布式文件***MooseFS分流分布式并行计算平台数据流设计。
5、依据电力***仿真计算数据量多单个文件碎小特点在诸多分布式文件***成熟产品中选型MooseFS。
6、历史数据基于分布式文件***MooseFS多副本留存,提高电力***仿真计算历史数据存储***数据安全级别与存储容量。
7、选型分布式文件***具备通用文件***POSIX接口,不需要修改传统分布式并行计算平台应用就可以直接使用,无缝对接原有电力***仿真计算应用。
附图说明
图1为本发明的***架构示意图;
图2为分布式文件***并行计算平台数据流与控制流示意图;
图3为本发明的整体流程示意图;
图4为分布式计算Master节点处理普通计算任务流程图;
图5为分布式计算Master节点处理高级计算任务流程图;
图6计算节点处理高级计算任务流程图。
具体实施方式
下面结合附图与实施例对本发明作进一步说明。
如图1所示,基于分布式文件***的仿真分布式并行计算平台,包括:若干客户端,用户通过客户端提交任务到调度节点,由调度节点统一分配任务经由交换机传输到若干计算节点参与计算,所述计算节点计算完成后将计算结果传回调度节点,再由调度节点处理计算结果并且直接写入或通过数据接口写入数据库并通知客户端计算完毕。
如图2所示,分布式文件***包括若干个磁盘块,包括任务提交端、调度管理模块、数据管理模块和若干节点管理模块;所述任务提交端将接收到的任务发送给调度管理模块和数据管理模块,所述调度管理模块将任务分发给若干计算节点管理模块,所述计算节点管理模块将处理后的结果反馈给调度管理模块,调度管理模块将数据反馈给任务提交端和数据管理模块。
如图3所示,所述基于分布式文件***的仿真分布式并行计算平台的计算方法,包括如下步骤:
步骤(1):用户通过客户端提交普通计算任务和/或高级计算任务,计算任务通过第一通信中间件netinit将发送给调度节点,其中普通计算任务将数据发送给调度节点的分布式平台DistComp,高级计算任务将数据发送给调度节点的调度壳distcomp_master,所述调度壳distcomp_master分别与若干个第三方接入平台的厂家主控程序、分布式平台DistComp和第二通信中间件netinit进行通信;所述第三方接入平台的厂家主控程序可以是PSASP_DISTATCLF_master.exe,也可以是其他主控程序。
步骤(2):第二通信中间件将接收到的高级计算任务发送给计算节点的计算壳distcomp_master开始计算,同时计算壳distcomp_master还与分布式平台DistComp和第三方接入平台的厂家计算程序进行通信;所述第三方接入平台的厂家计算程序可以是PSASP_DISTATC.exe,也可以是其他厂家计算程序。
如图4所示,
步骤(1a-1):调度节点收到普通任务计算请求,首先读取并分析TaskList子任务配置文件,分析每个子任务计算类型、超时时间及任务编号,并对每个子任务创建一个单独的超时子线程,然后将子任务加入任务队列,将超时子线程加入超时任务线程池;
步骤(1a-2):子任务分析就绪之后,根据计算节点可用资源情况,将各个子任务下发到对应的计算节点参与计算,然后进入查询和超时判断,直到超时定时器被触发或者有计算结果返回;
步骤(1a-3):当调度服务器主控进程DistComp收到计算节点返回的某个子任务计算结果信息时,查询任务队列找到该子任务,然后标注计算状态为完成并且撤销该子任务对应的定时器;
步骤(1a-4):当某个子任务设置的超时定时器函数被触发时,DistComp首先判断该子任务超时次数是否已经达到预先设定的次数,如果已经达到上限,则标注该子任务计算失败并且撤销对应定时器;如果没有达到上限,则重新发送该子任务到某个可用计算节点再次参与计算;
步骤(1a-5):在超时函数处理或者计算结果返回处理过程中,DistComp会判断是否所有子任务都已经完成或者超时失败,如果TaskList配置文件中的每一行任务都已经处理完成,则将结果信息和任务完成状态写入数据库,并通知客户端任务计算完成。
如图5所示,所述步骤(1)的高级计算任务的具体计算方法为:
(1b-1)调度节点的调度壳distcomp_master控制进程收到高级计算任务请求,首先进行协议分析和数据生成,然后分析从客户端发来的TaskControl.conf文件,将厂家主控程序记录在进程列表队列;
(1b-2)调度节点的调度壳distcomp_master分析数据目录,算出需要多少计算节点来计算这次任务,然后向分布式计算管理程序DistComp发送资源请求消息,待消息反馈后分析平台目前可用节点资源是否满足需求,如果满足,跳步骤(1b-3),否则继续发送资源请求消息,直到资源满足为止;
(1b-3)调度节点的调度壳distcomp_master根据资源信息请求反馈生成HostTask.conf配置文件和其他配置文件,将配置文件重新打包到zip文件,并向DistComp发送节点独占请求信息,让DistComp交出计算节点控制权,由调度节点的调度壳distcomp_master完全控制;
(1b-4)成功控制计算节点后,调度节点的调度壳distcomp_master分析TaskControl.conf文件,并同时启动该文件所列的所有厂家管理进程,将进程号记录在队列;
(1b-5)调度节点的调度壳distcomp_master从进程队列里取出一个厂家管理进程,向其发送USR1信号来完成数据和目录生成准备工作,如果在规定时间内未收到该进程反馈的USR1信号,则认为数据准备工作无法就绪,如果目前进程队列为空,则此次任务计算失败,否则从进程队列中继续取出另一个厂家管理进程,继续做(1b-5)工作;
(1b-6)成功收到数据就绪USR1信号后,distcomp_master将zip文件内容及协议内容一起选择多播到计算节点参与计算工作,并设置定时器;
(1b-7)在计算节点结算过程中,每次收到一个结果完成的消息后都向当前正在处理的厂家管理进程发送USR2计算任务完成信号,在定时器时间到达内并且重发次数小于设定值,如果还没有收到厂家管理进程的USR2计算任务完成信号,则分析哪些节点未完成计算并重新生成HostTask.conf文件,将数据重新选择多播到相应节点参与计算,转至(1b-8);
(1b-8)当收到厂家的USR2计算任务完成信号或者超时重发次数已达上限的情况下,将该厂家计算任务置成完成状态,并发送消息通知数据节点进行数据库入库等操作,然后判断厂家进程队列所有进程是否都处理完,如果未处理完,则转至(1b-5),否则表示此次界面提交任务已经全部完成,向DistComp发送计算完成消息,回收独占的计算节点资源,交回DistComp控制。
所述步骤(1)的高级计算任务的具体计算方法为:
步骤(101):调度壳控制程序distcomp_master接收高级计算任务;转入步骤(102);
步骤(102):判断是否有任务,如果有就进入步骤103,如果没有就返回步骤101;
步骤(103):数据协议分析,向分布式计算管理程序DistComp发送资源请求消息,待分布式计算管理程序DistComp的消息反馈,然后进入步骤(105);
步骤(104):分析平台目前可用节点资源是否满足需求;如果满足就进入步骤(105);如果不满足就继续向分布式计算管理程序DistComp发送资源请求消息;
步骤(105):生成HostTask.conf配置文件和其他配置文件,向分布式计算管理程序DistComp发出节点独占请求信息,分布式计算管理程序DistComp生成消息反馈,然后进入步骤(106);
步骤(106):判断独占是否成功,如果成功,就进入步骤(107),如果失败,那就回到主流程继续申请,直到成功申请到可用资源;
步骤(107):读取第三方接入平台的厂家主控程序;分别进入步骤(108)和步骤(115);
步骤(108):数据准备,向步骤(115)的厂家管理进程发送USR1信号,同时进入步骤(109);
步骤(109):判断是否超时,如果超时就进入步骤(113);如果未超时就进入步骤(110);
步骤(110):将高级计算任务选择多播到计算节点参与计算;进入步骤(111);
步骤(111):收到结果消息;将步骤(115)发送USR2信号;并进入步骤(112);
步骤(112):如果判断USR2信号超时,判断超时的次数是否超过设定值,如果是就重新生成HostTask.com文件,并返回步骤(110);如果否就进入步骤(113);
步骤(113):判断厂家管理进程是否处理完,如果处理完就进入步骤(114);
步骤(114):发送计算完成消息,独占节点资源收回;然后进程进入无任务状态,等待接收用户提交的下一个任务;
步骤(115):启动厂家管理进程或者其他第三方接入平台的厂家管理进程;厂家管理进程向步骤(110)发送USR1信号;厂家管理进程还将结果送入步骤(116);
步骤(116):结果汇总;发送USR2信号;进入步骤(117);
步骤(117):判断是否接收到USR2信号;如果是表示计算顺利完成,进入步骤(113);如果否表示第三方程序出问题了,这个可以根据设定的超时来实现,超时时间到触发超时处理函数,在函数块中将该任务标注计算失败。
如图6所示,
所述步骤(2)的具体计算方法为:
(2-1)计算节点DistComp收到高级计算任务的计算请求后,从消息队列中取出消息并解析消息,在相应目录生成数据;
(2-2)数据准备工作完成后,向计算节点的计算壳distcomp_interface发送高级计算请求消息;
(2-3)读取配置文件,所述配置文件包括客户端发来的TaskControl.conf文件和LocalTask_PSASP_DISTATCLF.exe_hostname.conf文件,计算节点的计算壳distcomp_interface首先分析客户端发来的TaskControl.conf文件,然后根据其内容分析相应LocalTask_PSASP_DISTATCLF.exe_(hostname).conf文件并将所有需要参与计算的高级计算程序记录在消息队列中;
(2-4)从消息队列中取出一个第三方接入平台的厂家计算程序并启动和监视进程退出信号并设置定时器,当计算进程计算完成退出后读取结果文件并启动下一个计算进程,待所有计算进程都算完后,向调度节点发送连带结果文件内容的计算成功消息;
(2-5)如果超时时间已过,计算进程未算出结果,则根据重算次数来决定是否重启计算进程重新计算,如果需要重新计算,则转至(2-4),否则向调度节点发送计算失败的消息。
所述第三方接入平台的厂家程序包括主控管理程序和核心库或业务核心程序。
专业术语介绍表
上述虽然结合附图对本发明的具体实施方式进行了描述,但并非对本发明保护范围的限制,所属领域技术人员应该明白,在本发明的技术方案的基础上,本领域技术人员不需要付出创造性劳动即可做出的各种修改或变形仍在本发明的保护范围以内。
Claims (6)
1.基于分布式文件***的仿真分布式并行计算平台,其特征是,包括:若干客户端,用户通过客户端提交任务到调度节点,由调度节点统一分配任务经由交换机传输到若干计算节点参与计算,所述计算节点计算完成后将计算结果传回调度节点,再由调度节点处理计算结果并且直接写入或通过数据接口写入数据库并通知客户端计算完毕。
2.如权利要求1所述基于分布式文件***的仿真分布式并行计算平台的计算方法,其特征是,包括如下步骤:
步骤(1):用户通过客户端提交普通计算任务和/或高级计算任务,计算任务通过第一通信中间件netinit将发送给调度节点,其中普通计算任务将数据发送给调度节点的分布式平台DistComp,高级计算任务将数据发送给调度节点的调度壳distcomp_master,所述调度节点的调度壳distcomp_master分别与若干个第三方接入平台的厂家主控程序、分布式平台DistComp和第二通信中间件netinit进行通信;
步骤(2):第二通信中间件将接收到的高级计算任务发送给计算节点的计算壳distcomp_master开始计算,同时计算壳distcomp_master还与分布式平台DistComp和第三方接入平台的厂家计算程序进行通信。
3.如权利要求2所述的方法,其特征是,
所述步骤(1)中的普通计算任务包括:暂稳PSASP_ST.exe、电压稳定PSASP_VS.exe、小干扰PSASP_SSR.exe、静态电压稳定PSASP_N1.exe、短路电流PSASP_SCC.exe;所述高级计算任务包括:稳定浴度PSASP_DISTATC.exe、暂稳辅助决策PSASP_TSENSE.exe、小干扰辅助决策PSASP_SSTSENSE.exe。
4.如权利要求2所述的方法,其特征是,所述步骤(1)的普通计算任务的具体计算方法为:
步骤(1a-1):调度节点收到普通任务计算请求,首先分析TaskList子任务配置文件,分析每个子任务计算类型、超时时间及任务编号,并对每个子任务创建一个单独的超时子线程,然后将子任务加入任务队列,将超时子线程加入超时任务线程池;
步骤(1a-2):子任务分析就绪之后,根据计算节点可用资源情况,将各个子任务下发到对应的计算节点参与计算,然后进入查询和超时判断,直到超时定时器被触发或者有计算结果返回;
步骤(1a-3):当调度服务器主控进程DistComp收到计算节点返回的某个子任务计算结果信息时,查询任务队列找到该子任务,然后标注计算状态为完成并且撤销该子任务对应的定时器;
步骤(1a-4):当某个子任务设置的超时定时器函数被触发时,DistComp首先判断该子任务超时次数是否已经达到预先设定的次数,如果已经达到上限,则标注该子任务计算失败并且撤销对应定时器;如果没有达到上限,则重新发送该子任务到某个可用计算节点再次参与计算;
步骤(1a-5):在超时函数处理或者计算结果返回处理过程中,DistComp会判断是否所有子任务都已经完成或者超时失败,如果TaskList配置文件中的每一行任务都已经处理完成,则将结果信息和任务完成状态写入数据库,并通知客户端任务计算完成。
5.如权利要求2所述的方法,其特征是,所述步骤(1)的高级计算任务的具体计算方法为:
(1b-1)调度节点的调度壳distcomp_master控制进程收到高级计算任务请求,首先进行协议分析和数据生成,然后分析从客户端发来的TaskControl.conf文件,将厂家主控程序记录在进程列表队列;
(1b-2)调度节点的调度壳distcomp_master分析数据目录,算出需要多少计算节点来计算这次任务,然后向DistComp发送资源请求消息,待消息反馈后分析平台目前可用节点资源是否满足需求,如果满足,跳步骤(1b-3),否则继续发送资源请求消息,直到资源满足为止;
(1b-3)调度节点的调度壳distcomp_master根据资源信息请求反馈生成HostTask.conf配置文件和其他配置文件,将配置文件重新打包到zip文件,并向DistComp发送节点独占请求信息,让DistComp交出计算节点控制权,由调度节点的调度壳distcomp_master完全控制;
(1b-4)成功控制计算节点后,调度节点的调度壳distcomp_master分析TaskControl.conf文件,并同时启动该文件所列的所有厂家管理进程,将进程号记录在队列;
(1b-5)调度节点的调度壳distcomp_master从进程队列里取出一个厂家管理进程,向其发送USR1信号来完成数据和目录生成准备工作,如果在规定时间内未收到该进程反馈的USR1信号,则认为数据准备工作无法就绪,如果目前进程队列为空,则此次任务计算失败,否则从进程队列中继续取出另一个厂家管理进程,继续做(1b-5)工作;
(1b-6)成功收到数据就绪USR1信号后,distcomp_master将zip文件内容及协议内容一起选择多播到计算节点参与计算工作,并设置定时器;
(1b-7)在计算节点结算过程中,每次收到一个结果完成的消息后都向当前正在处理的厂家管理进程发送USR2计算任务完成信号,在定时器时间到达内并且重发次数小于设定值,如果还没有收到厂家管理进程的USR2计算任务完成信号,则分析哪些节点未完成计算并重新生成HostTask.conf文件,将数据重新选择多播到相应节点参与计算,转至(1b-8);
(1b-8)当收到厂家的USR2计算任务完成信号或者超时重发次数已达上限的情况下,将该厂家计算任务置成完成状态,并发送消息通知数据节点进行数据库入库操作,然后判断厂家进程队列所有进程是否都处理完,如果未处理完,则转至(1b-5),否则表示此次界面提交任务已经全部完成,向DistComp发送计算完成消息,回收独占的计算节点资源,交回DistComp控制。
6.如权利要求2所述的方法,其特征是,所述步骤(2)的具体计算方法为:
(2-1)计算节点DistComp收到高级计算任务的计算请求后,从消息队列中取出消息并解析消息,在相应目录生成数据;
(2-2)数据准备工作完成后,向计算节点的计算壳distcomp_interface发送高级计算请求消息;
(2-3)计算节点的计算壳distcomp_interface首先分析TaskControl.conf文件,然后根据其内容分析相应LocalTask_PSASP_DISTATCLF.exe_hostname.conf文件并将所有需要参与计算的高级计算程序记录在队列中;
(2-4)从队列中取出一个第三方接入平台的厂家计算程序并启动和监视进程退出信号并设置定时器,当计算进程计算完成退出后读取结果文件并启动下一个计算进程,待所有计算进程都算完后,向调度节点发送连带结果文件内容的计算成功消息;
(2-5)如果超时时间已过,计算进程未算出结果,则根据重算次数来决定是否重启计算进程重新计算,如果需要重新计算,则转至(2-4),否则向调度节点发送计算失败的消息。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410079472.0A CN103873321B (zh) | 2014-03-05 | 2014-03-05 | 基于分布式文件***的仿真分布式并行计算平台及方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410079472.0A CN103873321B (zh) | 2014-03-05 | 2014-03-05 | 基于分布式文件***的仿真分布式并行计算平台及方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103873321A true CN103873321A (zh) | 2014-06-18 |
CN103873321B CN103873321B (zh) | 2017-03-22 |
Family
ID=50911466
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410079472.0A Active CN103873321B (zh) | 2014-03-05 | 2014-03-05 | 基于分布式文件***的仿真分布式并行计算平台及方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103873321B (zh) |
Cited By (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243610A (zh) * | 2014-09-30 | 2014-12-24 | 浪潮软件股份有限公司 | 一种分布式文件传输服务方法 |
CN104519140A (zh) * | 2015-01-08 | 2015-04-15 | 浪潮(北京)电子信息产业有限公司 | 一种分布式并行计算的服务器***及其管理方法 |
CN104516967A (zh) * | 2014-12-25 | 2015-04-15 | 国家电网公司 | 一种电力***海量数据管理***及其使用方法 |
CN105224404A (zh) * | 2015-10-08 | 2016-01-06 | 南京南瑞继保电气有限公司 | 基于集群技术的继电保护定值整定计算方法 |
CN105656989A (zh) * | 2015-12-10 | 2016-06-08 | 天津海量信息技术有限公司 | 基于蜂群思维的分布式计算方法 |
CN106301698A (zh) * | 2016-08-10 | 2017-01-04 | 东软集团股份有限公司 | 一种超时重发控制方法及发送装置、接收装置 |
WO2017036244A1 (zh) * | 2015-09-06 | 2017-03-09 | 中国电力科学研究院 | 配电网数字仿真*** |
CN106503321A (zh) * | 2016-10-17 | 2017-03-15 | 北京理工大学 | 一种分布式仿真***的逆序模型调度方法 |
CN106503320A (zh) * | 2016-10-17 | 2017-03-15 | 北京理工大学 | 一种分布式仿真***的顺序模型调度方法 |
CN106648905A (zh) * | 2017-01-12 | 2017-05-10 | 南京南瑞集团公司 | 一种电力大数据分布控制***及其构建方法 |
CN106776453A (zh) * | 2016-12-20 | 2017-05-31 | 墨宝股份有限公司 | 一种控制提供信息技术服务的网络计算集群的方法 |
CN108173840A (zh) * | 2017-12-26 | 2018-06-15 | 广西师范学院 | 基于云平台的智能物流终端集成中间件 |
CN108989439A (zh) * | 2018-07-26 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种分布式存储服务质量控制方法及装置 |
CN109167354A (zh) * | 2018-10-08 | 2019-01-08 | 国网天津市电力公司电力科学研究院 | 一种基于文件交换的电网预想故障并行分析计算方法 |
CN109343939A (zh) * | 2018-07-31 | 2019-02-15 | 国家电网有限公司 | 一种分布式集群及并行计算任务调度方法 |
CN109815002A (zh) * | 2017-11-21 | 2019-05-28 | 中国电力科学研究院有限公司 | 一种基于在线仿真的分布式并行计算平台及其方法 |
CN109936587A (zh) * | 2017-12-15 | 2019-06-25 | 北京京东尚科信息技术有限公司 | 控制方法、控制装置、电子设备及存储介质 |
CN110096358A (zh) * | 2019-04-11 | 2019-08-06 | 上海交通大学 | 动力装备远程中心分布式存储与分布式计算方法 |
CN110895488A (zh) * | 2018-09-12 | 2020-03-20 | 北京奇虎科技有限公司 | 任务调度方法及装置 |
CN112989685A (zh) * | 2021-04-27 | 2021-06-18 | 北京智芯仿真科技有限公司 | 具有保密功能的集成电路云平台电磁仿真并行方法及装置 |
CN112988239A (zh) * | 2019-12-17 | 2021-06-18 | 深圳市优必选科技股份有限公司 | 数据运算方法、装置及终端设备 |
CN113176910A (zh) * | 2021-04-29 | 2021-07-27 | 南方电网科学研究院有限责任公司 | 一种分布式文件***算法并行执行方法 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441580A (zh) * | 2008-12-09 | 2009-05-27 | 华北电网有限公司 | 分布式并行计算平台***及其计算任务分配方法 |
US20120207105A1 (en) * | 2011-02-11 | 2012-08-16 | Qualcomm Incorporated | Cooperation and operation of macro node and remote radio head deployments in heterogeneous networks |
-
2014
- 2014-03-05 CN CN201410079472.0A patent/CN103873321B/zh active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101441580A (zh) * | 2008-12-09 | 2009-05-27 | 华北电网有限公司 | 分布式并行计算平台***及其计算任务分配方法 |
US20120207105A1 (en) * | 2011-02-11 | 2012-08-16 | Qualcomm Incorporated | Cooperation and operation of macro node and remote radio head deployments in heterogeneous networks |
Cited By (33)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104243610B (zh) * | 2014-09-30 | 2017-07-07 | 浪潮软件股份有限公司 | 一种分布式文件传输服务方法 |
CN104243610A (zh) * | 2014-09-30 | 2014-12-24 | 浪潮软件股份有限公司 | 一种分布式文件传输服务方法 |
CN104516967A (zh) * | 2014-12-25 | 2015-04-15 | 国家电网公司 | 一种电力***海量数据管理***及其使用方法 |
CN104519140A (zh) * | 2015-01-08 | 2015-04-15 | 浪潮(北京)电子信息产业有限公司 | 一种分布式并行计算的服务器***及其管理方法 |
WO2017036244A1 (zh) * | 2015-09-06 | 2017-03-09 | 中国电力科学研究院 | 配电网数字仿真*** |
US10922452B2 (en) | 2015-09-06 | 2021-02-16 | China Electric Power Research Institute Company Limited | Digital simulation system of power distribution network |
CN105224404A (zh) * | 2015-10-08 | 2016-01-06 | 南京南瑞继保电气有限公司 | 基于集群技术的继电保护定值整定计算方法 |
CN105224404B (zh) * | 2015-10-08 | 2019-05-07 | 南京南瑞继保电气有限公司 | 基于集群技术的继电保护定值整定计算方法 |
CN105656989A (zh) * | 2015-12-10 | 2016-06-08 | 天津海量信息技术有限公司 | 基于蜂群思维的分布式计算方法 |
CN105656989B (zh) * | 2015-12-10 | 2019-04-12 | 天津海量信息技术股份有限公司 | 基于蜂群思维的分布式计算方法 |
CN106301698A (zh) * | 2016-08-10 | 2017-01-04 | 东软集团股份有限公司 | 一种超时重发控制方法及发送装置、接收装置 |
CN106503320A (zh) * | 2016-10-17 | 2017-03-15 | 北京理工大学 | 一种分布式仿真***的顺序模型调度方法 |
CN106503321A (zh) * | 2016-10-17 | 2017-03-15 | 北京理工大学 | 一种分布式仿真***的逆序模型调度方法 |
CN106503320B (zh) * | 2016-10-17 | 2019-09-13 | 北京理工大学 | 一种分布式仿真***的顺序模型调度方法 |
CN106503321B (zh) * | 2016-10-17 | 2019-09-13 | 北京理工大学 | 一种分布式仿真***的逆序模型调度方法 |
CN106776453A (zh) * | 2016-12-20 | 2017-05-31 | 墨宝股份有限公司 | 一种控制提供信息技术服务的网络计算集群的方法 |
CN106648905A (zh) * | 2017-01-12 | 2017-05-10 | 南京南瑞集团公司 | 一种电力大数据分布控制***及其构建方法 |
CN109815002A (zh) * | 2017-11-21 | 2019-05-28 | 中国电力科学研究院有限公司 | 一种基于在线仿真的分布式并行计算平台及其方法 |
CN109936587A (zh) * | 2017-12-15 | 2019-06-25 | 北京京东尚科信息技术有限公司 | 控制方法、控制装置、电子设备及存储介质 |
CN108173840B (zh) * | 2017-12-26 | 2020-09-15 | 南宁师范大学 | 基于云平台的智能物流终端集成*** |
CN108173840A (zh) * | 2017-12-26 | 2018-06-15 | 广西师范学院 | 基于云平台的智能物流终端集成中间件 |
CN108989439B (zh) * | 2018-07-26 | 2021-06-29 | 郑州云海信息技术有限公司 | 一种分布式存储服务质量控制方法及装置 |
CN108989439A (zh) * | 2018-07-26 | 2018-12-11 | 郑州云海信息技术有限公司 | 一种分布式存储服务质量控制方法及装置 |
CN109343939A (zh) * | 2018-07-31 | 2019-02-15 | 国家电网有限公司 | 一种分布式集群及并行计算任务调度方法 |
CN109343939B (zh) * | 2018-07-31 | 2022-01-07 | 国家电网有限公司 | 一种分布式集群及并行计算任务调度方法 |
CN110895488A (zh) * | 2018-09-12 | 2020-03-20 | 北京奇虎科技有限公司 | 任务调度方法及装置 |
CN110895488B (zh) * | 2018-09-12 | 2023-10-20 | 三六零科技集团有限公司 | 任务调度方法及装置 |
CN109167354A (zh) * | 2018-10-08 | 2019-01-08 | 国网天津市电力公司电力科学研究院 | 一种基于文件交换的电网预想故障并行分析计算方法 |
CN109167354B (zh) * | 2018-10-08 | 2022-02-22 | 国网天津市电力公司电力科学研究院 | 一种基于文件交换的电网预想故障并行分析计算方法 |
CN110096358A (zh) * | 2019-04-11 | 2019-08-06 | 上海交通大学 | 动力装备远程中心分布式存储与分布式计算方法 |
CN112988239A (zh) * | 2019-12-17 | 2021-06-18 | 深圳市优必选科技股份有限公司 | 数据运算方法、装置及终端设备 |
CN112989685A (zh) * | 2021-04-27 | 2021-06-18 | 北京智芯仿真科技有限公司 | 具有保密功能的集成电路云平台电磁仿真并行方法及装置 |
CN113176910A (zh) * | 2021-04-29 | 2021-07-27 | 南方电网科学研究院有限责任公司 | 一种分布式文件***算法并行执行方法 |
Also Published As
Publication number | Publication date |
---|---|
CN103873321B (zh) | 2017-03-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103873321A (zh) | 基于分布式文件***的仿真分布式并行计算平台及方法 | |
US10924535B2 (en) | Resource load balancing control method and cluster scheduler | |
US11604665B2 (en) | Multi-tiered-application distribution to resource-provider hosts by an automated resource-exchange system | |
US10819776B2 (en) | Automated resource-price calibration and recalibration by an automated resource-exchange system | |
US10412020B2 (en) | Background processes in update load balancers of an auto scaling group | |
Campbell et al. | Extreme scale with full sql language support in microsoft sql azure | |
CN110083455B (zh) | 图计算处理方法、装置、介质及电子设备 | |
CN102307133B (zh) | 一种公有云平台虚拟机调度方法 | |
US20180063017A1 (en) | Methods and systems for automated resource exchange among computing facilities | |
CN202565304U (zh) | 分布式计算任务调度及执行*** | |
US10038640B2 (en) | Managing state for updates to load balancers of an auto scaling group | |
Essa et al. | Mobile agent based new framework for improving big data analysis | |
CN105700829A (zh) | 云服务器的虚拟私有存储阵列服务 | |
US20160323187A1 (en) | Managing load balancers associated with auto-scaling groups | |
CN106257893A (zh) | 存储服务器任务响应方法、客户端、服务器及*** | |
CN109614227A (zh) | 任务资源调配方法、装置、电子设备及计算机可读介质 | |
CN108319499A (zh) | 任务调度方法及装置 | |
CN108228330A (zh) | 一种串行化的多进程任务调度方法和装置 | |
Mahato et al. | Balanced task allocation in the on‐demand computing‐based transaction processing system using social spider optimization | |
CN106354566A (zh) | 一种命令处理的方法以及服务器 | |
EP3289458A1 (en) | Managing load balancers associated with auto-scaling groups | |
Tawfeeg et al. | Cloud dynamic load balancing and reactive fault tolerance techniques: a systematic literature review (SLR) | |
RU122505U1 (ru) | Аппаратно-вычислительный комплекс для предоставления доступа к программному обеспечению в концепции облачных вычислений | |
CN113032947A (zh) | 一种基于虚拟应用技术的工业设计仿真*** | |
US10924543B1 (en) | Deployment strategy for maintaining integrity of replication groups |
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 |