CN110287020A - 一种实时操作系统平台下的高效并行计算方法 - Google Patents

一种实时操作系统平台下的高效并行计算方法 Download PDF

Info

Publication number
CN110287020A
CN110287020A CN201910388708.1A CN201910388708A CN110287020A CN 110287020 A CN110287020 A CN 110287020A CN 201910388708 A CN201910388708 A CN 201910388708A CN 110287020 A CN110287020 A CN 110287020A
Authority
CN
China
Prior art keywords
node
software
operating system
time
cluster
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.)
Pending
Application number
CN201910388708.1A
Other languages
English (en)
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.)
715th Research Institute of CSIC
Original Assignee
715th Research Institute of CSIC
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 715th Research Institute of CSIC filed Critical 715th Research Institute of CSIC
Priority to CN201910388708.1A priority Critical patent/CN110287020A/zh
Publication of CN110287020A publication Critical patent/CN110287020A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5083Techniques for rebalancing the load in a distributed system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本发明公开了一种实时操作系统平台下的高效并行计算方法,主要包括定义运算节点,P/E架构部署两个步骤。本发明首次在信号处理平台上提出并实现“P/E架构”,提供了一种高效计算调度方法,并运用于多型声纳软件中,极大的提升了平台资源利用率;提升了信号处理软件的容错性能,本方法由于运算集群内各节点互不影响、能够等效替代,当某一个或几个运算节点故障时,他们的工作会被集群内其他节点分担,软件可以继续正常运行,且容错能力随着运算集群规模的扩大而增强;降低了软件的设计难度和开发周期,采用本架构,开发人员只需要将精力集中于运算的分解,不同项目之间只需要根据计算负载调整运算集群规模,软件架构可以通用。

Description

一种实时操作系统平台下的高效并行计算方法
技术领域
本发明涉及软件设计和任务调度的领域,具体涉及一种实时操作系统平台下的高效并行计算方法。
背景技术
随着以DSP芯片搭配嵌入式实时操作系统的声纳信号处理平台的发展和普及,信号处理软件架构面临通用化、网络化的设计要求,同时,新型号的声纳信号处理软件规模不断扩大,计算压力急剧增加,如何高效利用处理平台资源,合理分摊计算负载,已成为设计人员必须重点考虑的问题。
传统的声纳信号处理软件架构设计以顺序串行运算为核心,每步运算配以固定的硬件资源,对于计算负载大的环节,将耗费大量时间,且其他硬件资源存在一定空闲状态,同时,当某一运算步骤出现错误时候,软件将终止运行,没有容错量,从整体上看也没有高效利用平台资源。传统架构下每个硬件节点都做固定工作,因而常常出现运算节点忙碌时,其他节点空闲等待的状态;另外传统的信号处理软件无论软件还是硬件,只要某一计算步骤或芯片出现问题,那么整个软件都将终止运行。
发明内容
本发明的目的在于克服现有技术存在的不足,而提供一种实时操作系统平台下的高效并行计算方法。
本发明的目的是通过如下技术方案来完成的:这种实时操作系统平台下的高效并行计算方法,主要包括以下步骤:
1)定义运算节点,将负载较大的计算任务分解至最小计算单元,将最小计算单元定义为运算节点。
2)P/E架构部署,确定发布者,并将它和各运算节点部署到平台,所有运算节点形成该环节的运算集群。
所述发布者负责发布计算任务和运算节点。
所述运算集群内的所有运算节点合力完成任务,各节点保持忙碌直至任务结束,且节点间相互独立,互不影响,并能等效替换,形成“发布,执行”软件架构。
本发明的有益效果为:本发明首次在信号处理平台上提出并实现“P/E架构”,提供了一种高效计算调度方法,并运用于多型声纳软件中,极大的提升了平台资源利用率;提升了信号处理软件的容错性能,本方法由于运算集群内各节点互不影响、能够等效替代,当某一个或几个运算节点故障时,他们的工作会被集群内其他节点分担,软件可以继续正常运行,且容错能力随着运算集群规模的扩大而增强;降低了软件的设计难度和开发周期,采用本架构,开发人员只需要将精力集中于运算的分解,不同项目之间只需要根据计算负载调整运算集群规模,软件架构可以通用;把平台看成等效节点组成的集群,将运算环节分解并部署到集群内,通过发布者发布任务,所有节点共同完成计算的运行模式,在任务完成前所有节点保持忙碌,充分利用了平台资源,极大的缩短了软件的运行时间,使得在相同平台资源下,能部署更大运算负载的软件和实现更多的功能;已应用于多型声纳软件,运算效率和软件容错性得到了很好的验证。
附图说明
图1为本发明的部署框图。
具体实施方式
下面将结合附图对本发明做详细的介绍:
实施例:如附图所示,这种实时操作系统平台下的高效并行计算方法,主要包括以下步骤:
1)定义运算节点,将负载较大的计算任务分解至最小计算单元,将最小计算单元定义为运算节点。
2)P/E架构部署,确定发布者,并将它和各运算节点部署到平台,所有运算节点形成该环节的运算集群。发布者负责发布计算任务和运算节点。运算集群内的所有运算节点合力完成任务,各节点保持忙碌直至任务结束,且节点间相互独立,互不影响,并能等效替换,形成“发布(Publish),执行(Execute)”软件架构。
本实施例具体实现步骤:
①、②、③、④为计算步骤;C0、C1、C2、C3、C4为相同的运算节点;P1为输入数据;U1、U2、U3、U4为步骤①、②、③、④分解后的最小等效运算单元。
1)假设信号处理软件中有一链路,它由“①、②、③、④”四个步骤组成,分别部署在C1、C2、C3、C4上,当数据P1为该流水输入,步骤②在处理P1时,步骤③、④处于等待P1的状态,若步骤②出错或者C2故障,那么整个处理流程即将终止,没有容错性,在新平台下,采用本方法,假设四个步骤分解后最小等效运算单元分别为U1、U2、U3、U4,将C1、C2、C3、C4定义为该流程的运算集群,定义C0为该流程任务发布者;
2)运行时,由C0发布任务,以任务②为例,当该任务发布后,C1、C2、C3、C4内的运算节点U2一起工作,共同完成任务,结束时个运算节点上报结束信号给发布者,在任务结束前没有哪个节点会处于空闲等待状态,资源利用最大化,对于不同项目,开发人员只需要集中精力在运算环节分解上,分解完成后只需要根据项目的运算负载确定运算集群的规模,软件框架可以通用,大幅降低开发难度和开发周期。
3)在耗时上,若①、②、③、④耗时分别为T1、T2、T3、T4,最小等效单元U1、U2、U3、U4耗时分别为UT1、UT2、UT3、UT4,部署规模分别为G1、G2、G3、G4,采用传统设计架构一次流程需要耗时为Ttotal
Ttotal=T1+T2+T3+T4
采用本方法,设①、②、③、④耗时分别为Ts1、Ts2、Ts3、Ts4,那么
Ttotal=Ts1+Ts2+Ts3+Ts4
4)假设T1、T2、T3、T4分别为100ms、200ms、300ms、400ms,UT1、UT2、UT3、UT4分别为5ms、20ms、50ms、40ms,G1、G2、G3、G4均为4,那么采用传统设计架构数据P1经过①、②、③、④需要耗时:Ttotal=1000ms左右,而采用本方法:
a)集群内所有节点均正常工作,耗时如下:
步骤①耗时:Ts1=25ms左右,步骤②耗时:Ts2=60ms左右,步骤③耗时:Ts3=100ms左右,步骤④耗时:Ts4=120ms左右。总共耗时:Ttotal=305ms左右,较传统方法耗时明显缩短。
b)假设C4故障无法工作,由于集群内各节点是等效的,那么原本任务内需要C4完成的工作量将由C1、C2、C3分担,此时耗时情况如下
步骤①耗时:Ts1=35ms左右,步骤②耗时:Ts2=80ms左右,步骤③耗时:Ts3=100ms左右,步骤④耗时:Ts4=160ms左右。总共耗时:Ttotal=375ms左右,较传统方法耗时明显缩短。
c)假设C3、C4同时故障无法工作,此时耗时情况如下:
步骤①耗时:Ts1=50ms左右,步骤②耗时:Ts2=100ms左右,步骤③耗时:Ts3=150ms左右,步骤④耗时:Ts4=200ms左右。总共耗时:Ttotal=500ms左右,较传统方法耗时明显缩短。
d)假设C2、C3、C4同时故障无法工作,此时耗时情况如下:
步骤①耗时:Ts1=100ms左右,步骤②耗时:Ts2=200ms左右,步骤③耗时:Ts3=300ms左右,步骤④耗时:Ts4=400ms左右。总共耗时:Ttotal=1000ms左右,此时与传统方法耗时一致。
在C2、C3、C4节点故障下,软件能够正常运行,另外即使部分节点故障,较传统方法耗时仍有明显缩短。
可以理解的是,对本领域技术人员来说,对本发明的技术方案及发明构思加以等同替换或改变都应属于本发明所附的权利要求的保护范围。

Claims (3)

1.一种实时操作系统平台下的高效并行计算方法,其特征在于:主要包括以下步骤:
1)定义运算节点,将负载较大的计算任务分解至最小计算单元,将最小计算单元定义为运算节点;
2)P/E架构部署,确定发布者,并将它和各运算节点部署到平台,所有运算节点形成该环节的运算集群。
2.根据权利要求1所述的实时操作系统平台下的高效并行计算方法,其特征在于:所述发布者负责发布计算任务和运算节点。
3.根据权利要求1所述的实时操作系统平台下的高效并行计算方法,其特征在于:所述运算集群内的所有运算节点合力完成任务,各节点保持忙碌直至任务结束,且节点间相互独立,互不影响,并能等效替换,形成“发布,执行”软件架构。
CN201910388708.1A 2019-05-10 2019-05-10 一种实时操作系统平台下的高效并行计算方法 Pending CN110287020A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910388708.1A CN110287020A (zh) 2019-05-10 2019-05-10 一种实时操作系统平台下的高效并行计算方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910388708.1A CN110287020A (zh) 2019-05-10 2019-05-10 一种实时操作系统平台下的高效并行计算方法

Publications (1)

Publication Number Publication Date
CN110287020A true CN110287020A (zh) 2019-09-27

Family

ID=68001899

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910388708.1A Pending CN110287020A (zh) 2019-05-10 2019-05-10 一种实时操作系统平台下的高效并行计算方法

Country Status (1)

Country Link
CN (1) CN110287020A (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110231470A1 (en) * 2005-01-06 2011-09-22 Thompson J Barry Systems and methods for network virtualization
CN106104483A (zh) * 2014-03-14 2016-11-09 Arm有限公司 微处理器系统中的异常处理
CN106202192A (zh) * 2016-06-28 2016-12-07 浪潮软件集团有限公司 一种基于工作流的大数据分析方法
US20180191813A1 (en) * 2017-01-02 2018-07-05 International Business Machines Corporation MQTT cluster shared subscription hub for fat-pipe cloud applications

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110231470A1 (en) * 2005-01-06 2011-09-22 Thompson J Barry Systems and methods for network virtualization
CN106104483A (zh) * 2014-03-14 2016-11-09 Arm有限公司 微处理器系统中的异常处理
CN106202192A (zh) * 2016-06-28 2016-12-07 浪潮软件集团有限公司 一种基于工作流的大数据分析方法
US20180191813A1 (en) * 2017-01-02 2018-07-05 International Business Machines Corporation MQTT cluster shared subscription hub for fat-pipe cloud applications

Similar Documents

Publication Publication Date Title
Beaudry Performance-related reliability measures for computing systems
CN107436806A (zh) 一种资源调度方法及系统
Gotoda et al. Task scheduling algorithm for multicore processor system for minimizing recovery time in case of single node fault
CN109522108A (zh) 一种基于Kernel合并的GPU任务调度系统及方法
CN105912387A (zh) 数据处理作业调度方法及装置
CN110321644B (zh) 一种面向卫星系统的分布式仿真系统及其仿真方法
CN107203421A (zh) 一种云计算环境中自适应的组合工作流方法
CN103324479B (zh) 松散环境下分布式大数据计算的中间件体系框架
CN110287020A (zh) 一种实时操作系统平台下的高效并行计算方法
Chavan et al. A review on software architecture styles with layered robotic software architecture
CN105183485B (zh) 一种可视化软硬件协同开发方法
CN104360962B (zh) 匹配于高性能计算机结构的多级嵌套数据传输方法与系统
CN107942753B (zh) 机器人与终端设备的软件的通讯框架和通讯方法
Jacques-Silva et al. Towards autonomic fault recovery in system-s
CN111147541B (zh) 基于参数服务器的节点处理方法、装置、设备及存储介质
CN106843822B (zh) 一种执行代码生成方法及设备
Billionnet Allocating tree structured programs in a distributed system with uniform communication costs
CN108055239A (zh) 一种rssp-i安全协议分离部署方法
CN104166593A (zh) 一种计算多应用功能异步并发调度方法
Girault et al. An Active Replication Scheme That Tolerates Failures in Distributed Embedded Real-Time Systems: Processors and communication Links Failures
Gomaa et al. Model-based run-time software adaptation for distributed hierarchical service coordination
Chen et al. Self adaptive application level fault tolerance for parallel and distributed computing
Yuan et al. Modeling and customization of fault tolerant architecture using object-Z/XVCL
Wilke Coordination languages and MPI perturbation theory: The FOX tuple space framework for resilience
Li et al. A replication structure for efficient and fault-tolerant parallel and distributed simulations

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20190927