基于局域网的数据协同处理方法与流程

文档序号:16879885发布日期:2019-02-15 22:01阅读:302来源:国知局
基于局域网的数据协同处理方法与流程

本发明涉及计算机数据处理技术领域,具体涉及基于局域网的数据协同处理方法。



背景技术:

随着计算机技术及网络技术的发展,在多个计算机组成的局域网络内,可以实现数据信息的共享,同时,随着多媒体技术的发展,各计算机需要处理的数据复杂度越来越高,体积越来越庞大。现有的个体计算机的数据处理能力有限,如果遇到庞大复杂的数据处理任务就会造成个体计算机的运行卡顿甚至宕机,给用户带来不便,而这样的问题目前还没有行之有效的可通过局域网内数据协同分配来处理解决的方法。



技术实现要素:

本发明针对现有技术存在的不足,提供基于局域网的数据协同处理方法,其应用时,可以实现局域网内各计算机的数据协同处理,进而实现计算资源的整合利用,防止出现因个体计算机计算量过大而产生的卡顿现象。

本发明通过以下技术方案实现:

基于局域网的数据协同处理方法,包括以下步骤:

s1、组建局域网,使局域网内各计算机建立信息互联通道,并打通各计算机之间的数据链路;

s2、局域网内各计算机均划分出一定比例的运算单元出来作为共享运算区,并向其他计算机发送共享运算区的划分比例及基本参数信息;

s3、各计算机根据其他计算机分出的共享运算区比例及其对应的运算单元基本参数信息确定其提供的共享运算量,并将局域网内所有其他计算机及其对应的共享运算量制成协同运算量参照表;

s4、局域网内任一计算机接收到运算任务后,对运算任务进行初步解析,并进行任务拆解,分离出可单独运算的部分,估算出各单独运算部分的运算量;

s5、接收到运算任务的主任务计算机将各单独运算部分的运算量与协同运算量参照表进行比对,并进行任务分配,将单独运算部分的任务分别传输至对应的共享运算区;

s6、主任务计算机和其他共享运算区进行运算任务的同步计算,其他共享运算区将运算结果实时反馈至主任务计算机,主任务计算机结合自身的运算过程和其他共享运算区反馈的各单独运算部分的运算结果,完成总的运算任务的计算。

优选地,在步骤s1中,局域网内各计算机之间通过tcp/ip协议建立数据对接。

优选地,在步骤s2中,共享运算区对局域网内其他计算机进行权限开放,同时各计算机的运算单元对共享运算区分配有对应比例的缓冲运算区,缓冲运算区对应共享运算区设置被动权限。

优选地,在步骤s2中,局域网内各计算机还为共享运算区分配有单独的用以存储计算任务的存储单元,该存储单元对局域网内其他计算机进行权限开放。

优选地,在步骤s2中所述的运算单元基本参数信息包括运算单元的型号及其运算能力。

优选地,在步骤s4中,进行任务拆解时,采用协同优化算法将总的运算任务分解成若干单独运算部分,并对单独运算部分进行协同优化。

优选地,局域网内的各计算机将每次的开关机信息发送至其他计算机,其他计算机将对应的开关机信息动态标注在协同运算量参照表中。

优选地,主任务计算机进行任务分配时,不考虑已关机计算机的共享运算区。

优选地,局域网内的各计算机实时显示其共享运算区的分配任务状态,可选择在关机前将已分配计算任务返回至主任务计算机,由主任务计算机重新分配。

优选地,在步骤s5中,分配出的单独运算部分的运算量不大于对应的共享运算区的最大运算量。

本发明具有如下的优点和有益效果:

1、本发明基于局域网的数据协同处理方法,在局域网内各计算机运算单元设置共享运算区实现局域网内各计算机的数据协同处理,进而实现计算资源的整合利用,防止出现因个体计算机计算量过大而产生的卡顿现象。

2、本发明基于局域网的数据协同处理方法,在局域网内各计算机运算单元设置缓冲运算区,用以对超过共享运算区上限的部分运算任务进行缓冲运算,防止协助运算的计算机出现卡顿。

3、本发明基于局域网的数据协同处理方法,采用协同优化算法将总的运算任务分解出可单独运算部分进行同步分别计算再进行最终运算结果的综合,提高计算效率。

附图说明

此处所说明的附图用来提供对本发明实施例的进一步理解,构成本申请的一部分,并不构成对本发明实施例的限定。在附图中:

图1为本发明的实施步骤示意图。

具体实施方式

为使本发明的目的、技术方案和优点更加清楚明白,下面结合实施例和附图,对本发明作进一步的详细说明,本发明的示意性实施方式及其说明仅用于解释本发明,并不作为对本发明的限定。

实施例

如图1所示,基于局域网的数据协同处理方法,包括以下步骤:

s1、组建局域网,使局域网内各计算机建立信息互联通道,并打通各计算机之间的数据链路;

s2、局域网内各计算机均划分出一定比例的运算单元出来作为共享运算区,并向其他计算机发送共享运算区的划分比例及基本参数信息;

s3、各计算机根据其他计算机分出的共享运算区比例及其对应的运算单元基本参数信息确定其提供的共享运算量,并将局域网内所有其他计算机及其对应的共享运算量制成协同运算量参照表;

s4、局域网内任一计算机接收到运算任务后,对运算任务进行初步解析,并进行任务拆解,分离出可单独运算的部分,估算出各单独运算部分的运算量;

s5、接收到运算任务的主任务计算机将各单独运算部分的运算量与协同运算量参照表进行比对,并进行任务分配,将单独运算部分的任务分别传输至对应的共享运算区;

s6、主任务计算机和其他共享运算区进行运算任务的同步计算,其他共享运算区将运算结果实时反馈至主任务计算机,主任务计算机结合自身的运算过程和其他共享运算区反馈的各单独运算部分的运算结果,完成总的运算任务的计算。

在步骤s1中,局域网内各计算机之间通过tcp/ip协议建立数据对接。

在步骤s2中,共享运算区对局域网内其他计算机进行权限开放,同时各计算机的运算单元对共享运算区分配有对应比例的缓冲运算区,缓冲运算区对应共享运算区设置被动权限,只有当共享运算区的运算量达到上限时才会自动开启缓冲运算区,用以对超过共享运算区上限的部分运算量进行缓冲。

在步骤s2中,局域网内各计算机还为共享运算区分配有单独的用以存储计算任务的存储单元,该存储单元对局域网内其他计算机进行权限开放。

在步骤s2中所述的运算单元基本参数信息包括运算单元的型号及其运算能力,以便对共享运算区可提供的运算量进行精确统计。

在步骤s4中,进行任务拆解时,采用协同优化算法将总的运算任务分解成若干单独运算部分,并对单独运算部分进行协同优化。

协同优化算法的原理是将一复杂的目标函数分解成简单的子目标函数,然后再将这些子目标函数进行协同优化。具体说来,协同优化是在优化每一子目标函数同时综合考虑其它子目标函数的结果,使子目标函数之间的优化结果能够一致。优化结果一致是指使每一变量的值在每一子目标函数的优化结果中能够一致。一般来说,可以证明,如果变量的值一致则为最优解。协同优化算法没有局部最优问题同时具有非常良好的收敛特性。它很好地解决了许多实际中非线性优化及组合优化难题。如果目标函数是n个变量的函数:

e(x1,x2,…,xn),简写成e(x),

协同优化算法先将它分解成n个简单的子目标函数:

e(x)=e1(x)+e2(x)+…+en(x).

如果单独优化每一子目标函数,则它们的结果很难达到一致。如变量xi在包含它的子目标函数中的最优解值很难相同。对于i=1,2,…,n,如果我们取ei(x)的最优解中xi的值作为该变量的值,表示成

这里xi是ei(x)的变量集,xi\xi指变量集xi除去元素则很难为原目标函数的最优解。为了使子目标函数之间的优化结果能够一致,协同优化算法在优化每一子目标函数ei(x),同时考虑其它子目标函数的结果:

具体做法是利用其它子目标函数的优化结果通过数值加权修正每一个子目标函数如下:

这里λk,wij为加权系数,满足0≤λk,wij≤1。然后对修正后的子目标函数进行优化,优化结果再叠代放入修正的子目标函数中。协同优化算法的叠代方程如下:

协同优化结果使每一变量的值在每一子目标函数的优化结果中达到一致。如果一致,则子目标函数的优化解既为最优解。

局域网内的各计算机将每次的开关机信息发送至其他计算机,其他计算机将对应的开关机信息动态标注在协同运算量参照表中,主任务计算机进行任务分配时,不考虑已关机计算机的共享运算区。

局域网内的各计算机实时显示其共享运算区的分配任务状态,可选择在关机前将已分配计算任务返回至主任务计算机,由主任务计算机重新分配。

在步骤s5中,分配出的单独运算部分的运算量不大于对应的共享运算区的最大运算量,以便减少单独运算部分的运算量超出共享运算区运算上限的情况。

以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1