一种基于条件故障情形的交错立方体上的故障诊断方法与流程

文档序号:19835794发布日期:2020-02-04 12:59阅读:226来源:国知局
一种基于条件故障情形的交错立方体上的故障诊断方法与流程
本发明涉及多处理器故障诊断方法领域,特别涉及一种基于条件故障情形的交错立方体上的故障诊断方法。
背景技术
:近年来,高性能计算机的研究一直是影响国家战略安全的研究领域之一。高性能计算机的网络拓扑结构是指多个处理器和高速链路按照一定规则相互连接而构成的网络结构,称为多处理器互连网络,简称互连网络。由于大规模的互连网络中有很多处理器,很难避免某些节点出现故障,所以这些节点可能会影响整个网络的稳定性,从而导致瘫痪造成经济损失。为确保互连网络可以正常运行,当节点出现故障时,能够及时地准确的找出故障节点并进行替换,这种能力就叫做系统的故障诊断。故障诊断被系统能够保证不可替换的被诊断出的故障处理器的最大数目,它在衡量互连网的可靠性和容错性方面起着重要的作用。随着高性能计算机中处理器数目的快速增加,系统会出现故障处理器的可能也在急剧增大,极大地降低了系统的可靠性,为保证系统能够正常工作,就必须准确及时的定位。preparate,metze和chien给系统故障诊断时同时提出一个经典诊断模型——pmc诊断模型使用文献中三位作者的姓名的首字母来命名,在多个领域广泛使用。chang等在2007年提出一个能够快速判断任意一个网络是否pmc模型进行诊断的结构,然而chang提出的结构无法适用于大部分的网络。近年来,研究者们做出了大量关于特殊网络在pmc模型下的诊断度和-诊断性的研究成果。hakimi和amin证明了一个系统在pmc模型下是可诊断的,还给出了系统在pmc模型下是可诊断的充分必要条件。dahbura和masson研究了在pmc模型下交错立方体的诊断性。郭晨等提出了一种基于互测pmc模型的条件诊断算法。林丽美等研究了分层立方网络的诊断度和时间复杂度为的诊断算法。一个互连网络的拓扑结构可用一个图来表示,其中处理器和处理器之间的通信链路可分别用顶点集和边集表示,文献中也研究了多种应用其它场景的故障检测方法。交错立方体是一种重要的互连网络,具有极强的应用前景。迄今为止,交错立方体中部分处理器和链路出现故障的情形下的故障诊断算法还未被讨论过,本专利将讨论交错立方体上存在故障边和故障顶点时,基于pmc模型的系统故障诊断算法。技术实现要素:为了克服现有技术中的不足,本发明提供一种基于条件故障情形的交错立方体上的故障诊断方法,能在节点出现故障时及时地准确的找出故障节点并进行替换。为了达到上述发明目的,解决其技术问题所采用的技术方案如下:本发明公开了一种基于条件故障情形的交错立方体上的故障诊断方法,利用诊断模型和图论方法,研究n维交错立方体cn的故障诊断算法,一个n维交错立方体cn由两个n-1维的交错立方体连接而成,分别记为和其中,和中各顶点的最高有效位分别是0和1,设则(u,v)∈e(cn)当且仅当二进制串的最高有效位不同,包括以下步骤:步骤1:cn中任意两个顶点u和v满足当n≥2时,k(cn)=(n+1)且(u,v)∈e(cn),给定u和v是cn两个不同的顶点,e'={(u,v)|u=un-1un-2…u2u1u0,v=un-1un-2…u2v1v0};步骤2:给定u,v和x是cn上三个不同的顶点,且这些顶点满足条件一(u,v)∈e(cn)与条件二(v,x)∈e(cn),则可得令e'={(u,v)|u=un-1un-2…u2u1u0,v=un-1un-2…u2v1v0}以及步骤3:对于故障集合而言,f1和f2是可区分的故障顶点,故障顶点集合f∈v,(f1,f2)是一对可区分对,否则就不是;若n≥4,假设cn中存在一个由一条故障边和多个故障顶点组成的集合s且|s|≤n,令f1和f2表示cn中两个不同的故障顶点集合,且满足|f1|≤δ(cn)和|f2|≤δ(cn),|f1|-|f2|={u},|f2|-|f1|={v},|f1|+|f2|=2δ(cn-s),(u,v)∈e(cn),f1、δf1是一对可区分对,对于任意两个不同的故障顶点集合f1,f2∈a,满足δ(f1)∩δ(f2)=φ,(f1,f2)是一对可区分对,否则不是;步骤4:给定cn存在由一个故障边和多个故障顶点组成的集合s和|s|≤n,当n≥4时,cn-s是可诊断的,令f,m表示空集,cn-s为g,k为δ(g),令u为findffnode(g,k)调用diagmain(g,u,m,f,k),使诊断出的故障顶点集合为k。进一步的,步骤1具体包括以下步骤:步骤11:当时,则步骤12:当(u,v)∈e'时,则即u和v有两个公共邻居,进一步的,步骤2具体包括以下步骤:步骤21:当且时,则且那么w(u,v,x)≥3(n+1)-0-0-1=3n+2;步骤22:当(u,v)∈e'且则且那么w(u,v,x)≥3(n+1)-0-2-1=3n;步骤23:当(x,v)∈e'且有w(u,v,x)≥3n;步骤24:当且时,则且那么w(u,v,x)≥3(n+1)-0-0-2=3n+1;步骤25:当(u,v),(u,x),(v,x)∈e'时,则有w(u,v,x)≥3(n+1)-0-2-3=3n-2。进一步的,步骤3具体包括以下步骤:步骤31:当(u,v)∈s时,可得满足步骤3;步骤32:当时,此时(u,v)∈e(cn),有进而可以得由于|f1|≤δ(cn-s),|f2|≤δ(cn-s),且顶点u和v在f1δf2中,故可得|f1∩f2|≤δ(cn-s)-1,进一步可以得到可得:所以所以与|f1|+|f2|≤2δ(cn-s)矛盾了,满足步骤3;所以|f1|-|f2|={u},|f2|-|f1|={v}时,|s|≤n,满足|f1|≤δ(cn-s)和|f2|≤δ(cn-s),则f1和f2是一对可区分对。进一步的,步骤4具体包括以下步骤:步骤41:当n≥4时,给定一个n维交错立方体cn和满足一定条件的故障集合s,能够在cn-s上诊断出δ(g)个故障顶点,调用fingffnode找出一个无故障顶点u,分别用m和f表示一个无故障集合和故障集合,pmc(u,v)表示顶点u对顶点v的测试结果:步骤42:调用函数diagmain遍历网络g的顶点,通过对整个网络g的顶点进行分类,将识别出的故障顶点放入故障顶点集合f中,无故障顶点放入无故障顶点集合m中,最终精确诊断出g上的δ(g)个故障顶点。本发明由于采用以上技术方案,使之与现有技术相比,具有以下的优点和积极效果:本发明适用于一种重要的多处理器互连网络——交错立方体上进行基于条件故障情形下的故障诊断方法,该方法能在交错立方体拓扑结构中节点出现故障时及时地准确的找出故障节点并进行替换,能在交错立方体拓扑结构节点出现故障时及时地准确的找出故障节点并进行替换,在多种故障参数下该方法的高效性和稳定性和适用的故障顶点规模方面均优于文献方法,极大地增加了交错立方体拓扑结构的可靠性,保证系统能够正常工作。附图说明为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作简单的介绍。显而易见,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。附图中:图1是本发明一种基于条件故障情形的交错立方体上的故障诊断方法中cn中顶点u和v无共同邻居示例图;图2是本发明一种基于条件故障情形的交错立方体上的故障诊断方法中cn中顶点u和v有共同邻居示例图;图3是本发明一种基于条件故障情形的交错立方体上的故障诊断方法中cn中顶点u和v符合(u,v)∈s的邻居分布示例图;图4是本发明一种基于条件故障情形的交错立方体上的故障诊断方法中cn中顶点u和v符合的邻居分布示例图;图5是本发明一种基于条件故障情形的交错立方体上的故障诊断方法中fingffnode方法逻辑图;图6是本发明一种基于条件故障情形的交错立方体上的故障诊断方法中diagmain方法逻辑图。具体实施方式以下将结合本发明的附图,对本发明实施例中的技术方案进行清楚、完整的描述和讨论,显然,这里所描述的仅仅是本发明的一部分实例,并不是全部的实例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明的保护范围。多处理器互连网络简称互连网络,是指多个处理器和高速链路按照一定规则相互连接而构成的网络,现在越来越广泛出现在计算机技术的相关运用和领域中。系统的故障诊断是一个系统中能够准确找出所有故障节点的最大个数,若系统中出现的故障节点的个数不超过其诊断度t时,则该系统能确保所有故障点都可被正确诊断出来那么系统是t-可诊断的。一个互连网络的拓扑结构可用一个图来表示,其中处理器与处理器之间的通信链路可分别用顶点集和边集表示。本实施例所用到的图的符号和定义遵循hsu和lin所著图论书中的规范,使用g=(v(g),e(g))表示一个图,v(g)表示顶点集(节点的集合),e(g)表示边集,图g中任意两个顶点u和v,若(u,v)∈e(g),则u和v是邻居,顶点u在图g的邻居集合表示为ng(u)={v|u,v∈e(g)};顶点u和v之间的距离表示为dist(u,v);顶点u的度数表示为degg(u)=|ng(u)|。图g的最小顶点度数表示为δ(g),图g的连通性表示k(g)。本发明的目的避免节点故障,使网络稳定及时准确诊断网络安全性,利用pmc诊断模型和图论方法,研究n-维交错立方体cn的诊断度和诊断算法。一个n维交错立方体是一个具有2n个顶点和(n+1)2n-1条边的(n+1)-正则图,记为cn,其中n≥2。它的每个顶点用0到2n-1之间的一个长度为n的二进制串xn-1xn-2…x0表示,其中xn-1为最高有效位,x0为最低有效位,二进制串xi的补所有顶点的二进制串互不相同。如果两个顶点的二进制串序列只有一位不同,则构成一条边,且二进制串的最后两位看作一位。本发明采用的pmc诊断模型中,网络中相邻的顶点可相互测试。给定图g中任意两个相邻的顶点u和v,顶点u对顶点v进行了一次测试可以表示为一个有序对<u,v>,其中u表示测试者,v表示被测试对象,根据u和v的测试状态可得出相应的测试结果0或1。如表1所示,当且仅当测试者u是无故障的,才可以精确的给出被测顶点v的正确测试结果,例如若v是无故障的,则测试结果是0;若v是有故障的,则测试结果是1。若测试者u是有故障的,则对被测试顶点v的诊断结果是不准确的,测试结果可以随机为0或1。测试者u的状态被测试者v的状态测试结果无故障无故障0无故障故障1故障无故障0或1故障故障0或1表1pmc诊断模型示例具体的,本发明公开了一种基于条件故障情形的交错立方体上的故障诊断方法,利用诊断模型和图论方法,研究n维交错立方体cn的故障诊断算法,一个n维交错立方体cn由两个n-1维的交错立方体连接而成,分别记为和其中,和中各顶点的最高有效位分别是0和1,设则(u,v)∈e(cn)当且仅当二进制串的最高有效位不同,包括以下步骤:步骤1:cn中任意两个顶点u和v满足当n≥2时,k(cn)=(n+1)且(u,v)∈e(cn),给定u和v是cn两个不同的顶点,e'={(u,v)|u=un-1un-2…u2u1u0,v=un-1un-2…u2v1v0};进一步的,步骤1具体包括以下步骤:步骤11:当时,则在一个界面上两个顶点无共同顶点,n≥2,u和v有n+1个顶点,即结果为2n+2。如图1所示。步骤12:当(u,v)∈e'时,则即u和v有两个公共邻居,在一个界面上两个顶点无共同顶点,n≥2,u和v有n+1个顶点,即结果为2n。如图2所示。即可得到当n≥2时,步骤2:当n≥3时,给定u、v和x是cn上三个不同的顶点,且这些顶点满足(u,v)∈e(cn)与(v,x)∈e(cn),则有在cn中相邻的顶点最多有两个共同邻居,且距离为2的顶点最多有2个共同邻居,令e'={(u,v)|u=un-1un-2…u2u1u0,v=un-1un-2…u2v1v0}以及进一步的,步骤2具体包括以下步骤:步骤21:当且时,则且那么w(u,v,x)≥3(n+1)-0-0-1=3n+2;cn中不同的三个顶点,u和x有一个公共顶点v。步骤22:当(u,v)∈e'且则且那么w(u,v,x)≥3(n+1)-0-2-1=3n;cn中不同的三个顶点,v和x有两个公共顶点,u和v无公共顶点,u和x有一个公共顶点。步骤23:当(x,v)∈e'且与上面步骤22情形类似,则且那么w(u,v,x)≥3n;cn中有三个顶点,v和x有无公共顶点,u和v有一个公共顶点。步骤24:当且时,则且即有两个公共顶点,那么w(u,v,x)≥3(n+1)-0-0-2=3n+1;cn中有三个顶点,(u,v)和(v,x)无公共顶点,u和x有两个顶点。步骤25:当(u,v),(u,x),(v,x)∈e'时,则即cn中三个顶点,分别有两个顶点是有两个公共点的,有w(u,v,x)≥3(n+1)-0-2-3=3n-2。综上所述,可得步骤3:对于故障集合而言,f1和f2是可区分的故障顶点,故障顶点集合f∈v,(f1,f2)是一对可区分对,否则就不是;若n≥4,假设cn中存在一个由一条故障边和多个故障顶点组成的集合s且|s|≤n,令f1和f2表示cn中两个不同的故障顶点集合,且满足|f1|≤δ(cn-s)和|f2|≤δ(cn-s),|f1|-|f2|={u},|f2|-|f1|={v},|f1|+|f2|=2δ(cn-s),(u,v)∈e(cn),f1δf2是一对可区分对,对于任意两个不同的故障顶点集合f1,f2∈a,满足(f1,f2)是一对可区分对,否则不是;进一步的,使用s表示cn中由一条故障边和多个故障顶点组成的集合s且|s|≤n,即s是v(cn)∪e(cn)的一个子集。当|s|=0时,f1和f2是一对可区分对。因此,仅需考虑当|s|≥1时的情形。因为(u,v)∈e(cn),有因为|f1|≤δ(cn-s)和|f2|≤δ(cn-s),可以得到|f1|+|f2|≤2δ(cn-s)。进而得到δ(cn-s)<δ(cn)=n+1。假设f1和f2是一对不可区分对,则对于在f1δf2=(f1-f2)∪(f2-f1)中的任意顶点x,都有此时,步骤3具体包括以下步骤:步骤31:当(u,v)∈s时,可得这与条件|f1|+|f2|≤2δ(cn-s)矛盾,故该情况不成立。如图3所示。步骤32:当时,此时(u,v)∈e(cn),有进而可以得如图4所示,由于|f1|≤δ(cn-s)和|f2|≤δ(cn-s),且顶点u和v在f1δf2中,故可得|f1∩f2|≤δ(cn-s)-1,进一步可以得到且得:由此可以得出下列情形,即中至少存在一个顶点x,根据先前假设,f1和f2是一对不可区分对,则对于任意顶点x∈f1δf2=(f1-f2)∪(f2-f1),都满足进而得到所以然而这与|f1|+|f2|≤2δ(cn-s)矛盾了,满足步骤3;综上所述,若|f1|-|f2|={u},|f2|-|f1|={v}时,|s|≤n,满足|f1|≤δ(cn-s)和|f2|≤δ(cn-s),则f1和f2是一对可区分对。步骤4:给定cn存在由一个故障边和多个故障顶点组成的集合s和|s|≤n,当n≥4时,cn-s是可诊断的,令f,m表示空集,cn-s为g,k为δ(g),令u为findffnode(g,k)调用diagmain(g,u,m,f,k),使诊断出的故障顶点集合为k。进一步的,步骤4具体包括以下步骤:步骤41:当n≥4时,给定一个n维交错立方体cn和满足一定条件的故障集合s,能够在cn-s上诊断出δ(g)个故障顶点,调用fingffnode找出一个无故障顶点u。该步骤下,分别用m和f表示一个无故障集合和故障集合,pmc(u,v)表示顶点u对顶点v的测试结果,令g=cn-s,δ=δ(g)。具体步骤如图5所示;步骤42:调用函数diagmain遍历网络g的顶点,通过对整个网络g的顶点进行分类,将识别出的故障顶点放入故障顶点集合f中,无故障顶点放入无故障顶点集合m中,最终精确诊断出g上的δ(g)个故障顶点,具体步骤如图6所示。以上所述,仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求的保护范围为准。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1