Neighbor-based processor fault diagnosis method, system and apparatus
Patent Information
- Application Number
- CN202610960615.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2026-06-30
- Publication Date
- 2026-09-22
AI Technical Summary
[0004]现有技术主要存在以下不足:广度优先搜索策略内存占用较高,在大规模网络中,广度优先需要维护整个诊断前沿的队列,队列大小可能随网络规模指数增长,对存储资源要求较高
本发明筛选初始结点,仅需结点被邻结点评价的一致性比例超过第一阈值、且对邻结点多次测试的稳定性比例超过第二阈值,即可作为初始结点,无需寻找严格的全0互相测试集团,显著降低了诊断启动的条件门槛,在故障率较高或网络规模较小时仍能正常启动。
Abstract
Description
Technical Field
[0001] This invention belongs to the field of processor fault diagnosis, specifically relating to a method, system, and apparatus for processor fault diagnosis based on neighbor nodes. Background Technology
[0002] System-level fault diagnosis is a crucial means of ensuring the reliable operation of multiprocessor computer systems. With the rapid development of massively parallel computing systems, the number of processors is constantly increasing, and network topologies are becoming increasingly complex. How to quickly and accurately diagnose faulty nodes in the system has become an important research topic in this field.
[0003] Currently, fault diagnosis methods based on PMC models are among the most widely studied diagnostic strategies. In the PMC model, test results initiated by normal nodes are reliable, while test results initiated by faulty nodes are unreliable.
[0004] The existing technology has the following main shortcomings: the breadth-first search strategy has a high memory consumption. In large-scale networks, breadth-first search needs to maintain a queue for the entire diagnostic frontier. The queue size may grow exponentially with the network size, which places high demands on storage resources.
[0005] Lacking directional priority and backtracking mechanisms, existing technologies treat all neighboring nodes equally, resulting in unpredictable diagnostic behavior. Furthermore, when a path is blocked by a fault, it is impossible to effectively backtrack and explore other branches. Summary of the Invention
[0006] The purpose of this invention is to provide a method, system, and apparatus for processor fault diagnosis based on neighbor nodes.
[0007] A processor fault diagnosis method based on neighbor nodes, wherein the nodes are processor units in an interconnection network, each node has a unique address and can test the status of its neighbor nodes, and includes the following steps: S1. Calculate the results of each node being tested by its neighboring nodes, and record the proportion of identical test results as the many-to-one ratio; and record the results of each node being tested multiple times by its neighboring nodes, and record the proportion of identical test results as the one-to-many ratio; and select nodes with values greater than the corresponding threshold as initial nodes. S2. Starting from the initial node, test the neighboring nodes with unknown states in a clockwise direction, starting from the vertical upward direction. If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node, starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction; If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node; If all directions of the current node have been tested, backtrack to the previous node that reached the current node, take that node as the new current node, and continue testing the nodes whose directions are unknown but have not yet been tested, starting from the vertical upward direction and proceeding clockwise. Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes. S3. For nodes whose remaining state is unknown, if there is a connected component in its induced subgraph with a number of nodes not less than a preset threshold, then all nodes in that component are tested against each other in multiple rounds; if there is a node whose test results are completely identical to those of all its neighboring nodes, then it is marked as a good state point.
[0008] In S1, nodes that are greater than the corresponding threshold are selected as initial nodes, specifically as follows: Condition 1: Among the test results of all neighboring nodes of this node, the proportion of many-to-one identical test results is greater than the first proportion threshold; Condition 2: Among the results of multiple tests performed on any neighboring node of this node, the proportion of one-to-many identical results is greater than the second proportion threshold. A node that satisfies both of the above conditions is taken as the initial node.
[0009] If there are multiple nodes in S1 that simultaneously satisfy both condition one and condition two, the node with the highest value after multiplying the many-to-one ratio and the one-to-many ratio is selected as the initial node. If the multiplication results in the same value, the shortest distance to the network boundary is calculated, and the node with the larger distance is selected as the initial node.
[0010] In S2, each node pre-maintains a fixed order list of all its neighboring nodes, sorted based on the address values of the neighboring nodes or determined by a preset dimensional order; the vertical upward direction is the direction of the first neighboring node in the node's neighboring node order list; the clockwise direction is the direction of traversing each neighboring node in the order of the node's neighboring node order list; each node independently performs directional traversal according to its own neighboring node order list.
[0011] S3 specifically involves: collecting all nodes whose states are still unknown, constructing their induced subgraphs, finding all connected components, and for connected components with ≥3 nodes, performing multiple rounds of mutual testing on all nodes within that component; if there exists a node v such that in each round of testing, all neighboring nodes of v within the connected component have the same test results for v, then v is marked as a good state point and added to the set of good nodes.
[0012] The specific details of the multi-round mutual testing are as follows: Here, n represents the number of neighboring nodes within the connected component of the current node. This method is applicable to the exchanged cross-cube network ECQ(s,t) topology, where s and t are network dimension parameters, and t ≥ s ≥ 1.
[0013] Nodes whose state is still unknown after S3 ends are marked as fault state points and added to the fault node set.
[0014] A processor fault diagnosis system based on neighbor nodes is used to implement a processor fault diagnosis method based on neighbor nodes, including: The initial selection module counts the results of each node being tested by its neighboring nodes, as well as the results of each node being tested multiple times by its neighboring nodes, to obtain the many-to-one ratio and the one-to-many ratio, and selects nodes that are greater than the corresponding threshold as initial nodes. The fault diagnosis module starts from the initial node and tests the neighboring nodes with unknown states in a clockwise direction, beginning from the vertical upward direction. If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node, starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction; If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node; If all directions of the current node have been tested, backtrack to the previous node that reached the current node, take that node as the new current node, and continue testing the nodes whose directions are unknown but have not yet been tested, starting from the vertical upward direction and proceeding clockwise. Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes. The remaining fault diagnosis module, for nodes with unknown remaining states, if there is a connected component in its induced subgraph with no less than a preset threshold number of nodes, then all nodes in that component are tested against each other in multiple rounds; if there is a node whose test results are completely identical to those of all its neighboring nodes, then it is marked as a good state point.
[0015] A processor fault diagnosis device based on neighbor nodes includes a processor and a memory, wherein the processor implements a processor fault diagnosis method based on neighbor nodes when executing a computer program stored in the memory.
[0016] Compared with the prior art, the beneficial effects of the present invention are as follows: This invention selects initial nodes only if the consistency ratio of a node evaluated by its neighboring nodes exceeds a first threshold and the stability ratio of multiple tests on its neighboring nodes exceeds a second threshold. This eliminates the need to find strict all-zero mutual test groups, significantly reducing the threshold for diagnostic startup and enabling normal startup even with high failure rates or small network sizes.
[0017] This invention employs a depth-first search strategy for diagnostic diffusion. Compared to the breadth-first search in existing technologies, which requires maintaining the entire diagnostic frontier queue, this significantly reduces memory usage and is more suitable for large-scale networks.
[0018] This invention uses a backtracking mechanism to automatically backtrack to the previous node to continue probing other directions when a path is blocked by a faulty node or all directions have been tested, ensuring that all nodes connected to the initial node can be visited without missing any branches. Detailed Implementation
[0019] To further understand the content of this invention, the invention will be described in detail with reference to the embodiments.
[0020] This invention relates to a processor fault diagnosis method based on neighbor nodes, wherein the nodes are processor units in an interconnection network, each node has a unique address and is capable of testing the status of its neighbor nodes, and the method includes the following steps: S1. Calculate the results of each node being tested by its neighboring nodes, and record the proportion of identical test results as the many-to-one ratio; and record the results of each node being tested multiple times by its neighboring nodes, and record the proportion of identical test results as the one-to-many ratio; and select nodes with values greater than the corresponding threshold as the initial nodes.
[0021] This invention is applicable to the ECQ(s,t) topology of a switched cross-cube network, where s and t are network dimension parameters, and t≥s≥1.
[0022] Fault diagnosis based on the PMC model is one of the most widely studied diagnostic strategies. In the PMC model, test results initiated by normal nodes are reliable, while test results initiated by faulty nodes are unreliable. In other words, the behavior of normal nodes is consistent and predictable, while the behavior of faulty nodes is chaotic and unpredictable.
[0023] Statistically analyze the test results of each node by its neighboring nodes, as well as the results of each node testing its neighboring nodes multiple times. Select the node whose many-to-one ratio of identical test results among all neighboring nodes' test results for that node is greater than a first ratio threshold; and whose one-to-many ratio of identical results among multiple tests of any neighboring node is greater than a second ratio threshold as the initial node.
[0024] If multiple nodes simultaneously meet the conditions, the node with the highest value after multiplying the many-to-one ratio and the one-to-many ratio is selected as the initial node. If the multiplication results in the same value, the shortest distance to the network boundary is calculated, and the node with the larger distance is selected as the initial node.
[0025] Furthermore, the range of the first ratio threshold is 0.5 < first ratio threshold ≤ 1; the range of the second ratio threshold is 0.5 < second ratio threshold ≤ 1, and it is recommended that the first ratio threshold be 0.67 and the second ratio threshold be 0.8.
[0026] Specifically, assuming X is a normal node, normal neighboring nodes will truthfully report that X is normal (test result = 0). Faulty neighboring nodes may report incorrectly (either 0 or 1). If the proportion of faulty neighboring nodes is not high, then most neighboring nodes will test X with a result of 0, so the proportion of identical test results (all 0) will be very high.
[0027] Assuming X is a faulty node, normal neighboring nodes will test and report that X is faulty (test result = 1). Faulty neighboring nodes may report randomly (either 0 or 1). Normal neighboring nodes may report 1, while faulty neighboring nodes may report 0 or 1. Therefore, the test results will be relatively low if they are the same, because the opinions of normal neighboring nodes and faulty neighboring nodes may be inconsistent.
[0028] Normal nodes are more likely to receive unanimous praise from their neighbors; faulty nodes are less likely to receive unanimous opinions from their neighbors.
[0029] If the proportion of faulty neighboring nodes is high, they may unanimously say that X is normal, thus deceiving condition one. Therefore, condition two should be added.
[0030] Assume X is a normal node: The test of X on its neighbor Y depends on the actual state of Y. If the state of Y is stable, the test result of X is stable, and even if the state of Y changes, the probability of the change is extremely low.
[0031] Suppose X is a faulty node. The test behavior of the faulty node is unpredictable (in the PMC model, the test result of the faulty node can be 0 or 1, which is arbitrary). Even if the state of Y remains completely unchanged, the test results of X on Y may fluctuate between 0 and 1, randomly jumping. Therefore, the probability of multiple test results being the same is very low.
[0032] When both conditions are met simultaneously: normal nodes can easily meet both conditions at the same time, while faulty nodes can hardly meet both conditions at the same time. This is the filtering logic of this invention. The two conditions characterize the node from different dimensions, and the filtering accuracy is greatly improved when they are superimposed.
[0033] Therefore, the selected initial node is a normal node, that is, a node in good condition.
[0034] Even if there are errors in the initial node screening results, the anomalies can still be detected through inconsistent test results during the subsequent diagnosis process. For example, if the test results for neighboring nodes are chaotic, and if the initial node is actually faulty, the test results for neighboring nodes will be unreliable, which may lead to internal contradictions in the diagnostic results and thus be discovered. By increasing the first and second proportional thresholds, the error probability can be reduced to a negligible level.
[0035] Compared to the overly stringent startup conditions in existing technologies, this invention trades an acceptablely low error probability for the startability and applicability of the diagnostics.
[0036] S2. Starting from the initial node, test the neighboring nodes with unknown states in a clockwise direction, starting from the vertical upward direction. If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node, starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction; If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node; If all directions of the current node have been tested, backtrack to the previous node that reached the current node, take that node as the new current node, and continue testing the nodes whose directions are unknown but have not yet been tested, starting from the vertical upward direction and proceeding clockwise. Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes.
[0037] This is a depth-first, clockwise backtracking search strategy. Specifically, the present invention relates to the ECQ network, where although the address is a binary string, it is essentially a "graph", so there is no need to forcibly compress the high-dimensional address into a two-dimensional plane.
[0038] Starting from the initial node, each node maintains a fixed order list of all its neighboring nodes in advance, and the order is determined based on the address values of the neighboring nodes or based on a preset dimension order; the vertical upward direction is the direction of the first neighboring node in the order list of the node's neighboring nodes; the clockwise direction is the direction of traversing each neighboring node in the order of the node's neighboring node order list; each node independently performs directional traversal according to its own order list of neighboring nodes.
[0039] The initial node is a high-probability normal node that has been screened by S1 and is in good condition. It serves as the starting point for the entire diagnosis. It should be noted that the vertical and clockwise directions in this invention are abstract directional definitions and do not refer to actual geographical directions.
[0040] Establishing unified traversal rules can make subsequent diagnostic actions predictable and reproducible, avoid repeatedly testing diagnosed nodes, improve efficiency, and ensure the reliability of subsequent test results by starting from a reliable starting point in a good state.
[0041] If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node. Starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction.
[0042] In the PMC model, the test result initiated by a normal node is 0, indicating that the tested node must be normal. Therefore, it can be marked as a good state point without additional verification. Taking this neighboring node as the new current node means that the diagnostic path jumps to this newly confirmed normal node. Starting from the new node again in the vertical upward direction means resetting the direction order on the new node and starting the exploration from the first direction.
[0043] The depth-first strategy of this invention is to follow a single path to the end, quickly discover all nodes in the entire chain, and reduce the number of tests by utilizing the reliability of nodes in good condition, without having to perform redundant tests on the same node multiple times.
[0044] If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node.
[0045] In the PMC model, the test result initiated by a normal node is 1, indicating that the tested node must be faulty. Therefore, the neighboring node can be directly marked as a faulty state point. The faulty node cannot be used as a springboard to continue to explore, so we do not jump to that node, but continue to test the next direction on the current node and explore other neighboring nodes of the current node.
[0046] This allows for rapid identification of faulty nodes, removing them from the propagation chain and preventing diagnosis from being blocked by faulty nodes. It eliminates the need to wait for a response from a faulty node, allowing for direct skipping and maintaining the continuity of the diagnostic direction, while continuing to try other directions from the current node.
[0047] If all directions of the current node have been tested, backtrack to the previous node, take that node as the new current node, and continue testing the untested directions of unknown nodes in a clockwise direction, starting from the vertical upward direction.
[0048] Having tested all directions means that all neighboring nodes of the current node have been marked. At this point, it is impossible to continue from the current node. Therefore, it is necessary to backtrack to the node that led to the current node, i.e., the parent node on the path. On the parent node, continue to test the directions that have not yet been tested, explore other branches, and try to ensure full coverage so as not to miss nodes on other branches because one path has been reached.
[0049] It can achieve a complete traversal. By backtracking, all nodes connected to the initial node will be visited. Only the path / stack needs to be recorded, and the entire queue to be tested does not need to be recorded.
[0050] Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes.
[0051] Repeatedly execute the delve, skip, and backtrack operations. There are two termination conditions: one is that the initial node has been backtracked, and the other is that all directions of the initial node have been tested. This indicates that the entire search space has been fully explored and there are no unprocessed branches. Finally, all marked nodes are classified and output as either a good set or a faulty set.
[0052] Completely diagnose all nodes connected to the initial node, clearly classify the diagnostic results, and at the same time, in order to avoid ignoring good nodes that are completely surrounded by faulty nodes, continue to execute S3 to check for omissions.
[0053] S3. For nodes whose remaining state is unknown, if there is a connected component in its induced subgraph with a number of nodes not less than a preset threshold, then all nodes in that component are tested against each other in multiple rounds; if there is a node whose test results are completely identical to those of all its neighboring nodes, then it is marked as a good state point.
[0054] This step mainly involves searching for the remaining neighboring nodes that cannot be determined, further diagnosing the faults of the remaining nodes; and combining the test rules to diagnose the faults between the remaining nodes, thus making a diagnosis.
[0055] Furthermore, during the experimental reasoning process, it was found that unidentified regions with more than 3 nodes are most likely to contain nodes in good state. These nodes in good state are often surrounded by one or even multiple layers of faulty nodes, causing them to be ignored and not reached in the search of S2.
[0056] Specifically, collect all nodes whose states are still unknown, construct their induced subgraphs, find all connected components, and for connected components with ≥3 nodes, perform multiple rounds of mutual testing on all nodes within that component; if there exists a node v such that in each round of testing, all neighboring nodes of v within the connected component have the same test results for v, then v is marked as a good state point and added to the set of good nodes.
[0057] The backup diagnostic mechanism is triggered only when the number of nodes in a connected component is greater than or equal to 3. If the number of nodes in a connected component is less than 3, i.e., 1 or 2 isolated unknown nodes, or nodes whose state is still unknown after S3 ends, they are marked as fault state points and added to the fault node set.
[0058] The specific execution method of multi-round mutual testing is as follows: In each round of testing, each node in the connected component tests all its neighboring nodes in that component in turn, and records the test results. The test results are divided into 0 (normal) and 1 (fault).
[0059] After all nodes complete one round of testing, the next round begins. Multiple rounds of testing are conducted independently, and test results are not shared between rounds. The specific details of mutual testing between multiple rounds are as follows: Here, n represents the number of neighboring nodes within the connected component of the current node.
[0060] The multi-round design of mutual testing is to eliminate the random behavior of faulty nodes. The number of rounds is linked to the connectivity component values of neighboring nodes. The more neighboring nodes there are, the more test rounds are required because there are more potential sources of interference.
[0061] Nodes whose status remains unknown after S3 are highly likely to be surrounded by faulty nodes, as they exist in isolated regions unreachable by S2 and unconfirmable by S3. Even if a few normal nodes exist, their communication capabilities are severely limited by the presence of surrounding faulty nodes, and their contribution to the overall system operation is negligible. Further investigation would significantly increase diagnostic computational overhead, disproportionate to the gains. Therefore, from an engineering practice perspective, marking them as faults is a reasonable technical trade-off.
[0062] Preferably, the present invention supports parallel acceleration, and multiple nodes that meet the conditions can be selected as initial nodes to perform diagnostic diffusion in parallel. Each starting point diagnoses independently and shares the global diagnostic state, which significantly shortens the diagnosis time. At the same time, multiple starting points can verify each other, improving the robustness of diagnosis.
[0063] A processor fault diagnosis system based on neighbor nodes is used to implement a processor fault diagnosis method based on neighbor nodes, including: The initial selection module counts the results of each node being tested by its neighboring nodes, as well as the results of each node being tested multiple times by its neighboring nodes, to obtain the many-to-one ratio and the one-to-many ratio, and selects nodes that are greater than the corresponding threshold as initial nodes. The fault diagnosis module starts from the initial node and tests the neighboring nodes with unknown states in a clockwise direction, beginning from the vertical upward direction. If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node, starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction; If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node; If all directions of the current node have been tested, backtrack to the previous node that reached the current node, take that node as the new current node, and continue testing the nodes whose directions are unknown but have not yet been tested, starting from the vertical upward direction and proceeding clockwise. Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes. The remaining fault diagnosis module, for nodes with unknown remaining states, if there is a connected component in its induced subgraph with no less than a preset threshold number of nodes, then all nodes in that component are tested against each other in multiple rounds; if there is a node whose test results are completely identical to those of all its neighboring nodes, then it is marked as a good state point.
[0064] A processor fault diagnosis device based on neighbor nodes includes a processor and a memory, wherein the processor implements a processor fault diagnosis method based on neighbor nodes when executing a computer program stored in the memory.
Claims
1. A processor fault diagnosis method based on neighbor nodes, wherein the nodes are processor units in an interconnection network, each node has a unique address and is capable of testing the status of its neighbor nodes, characterized in that, Includes the following steps: S1. Calculate the test results of each node by its neighboring nodes, and record the proportion of identical test results as the many-to-one ratio. And the results of each node performing multiple tests on its neighboring nodes, where the proportion of identical test results is recorded as the one-to-many ratio; nodes with values greater than the corresponding threshold are selected as initial nodes; S2. Starting from the initial node, test the neighboring nodes with unknown states in a clockwise direction, starting from the vertical upward direction. If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node, starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction; If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node; If all directions of the current node have been tested, backtrack to the previous node that reached the current node, take that node as the new current node, and continue testing the nodes whose directions are unknown but have not yet been tested, starting from the vertical upward direction and proceeding clockwise. Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes. S3. For nodes whose remaining state is unknown, if there is a connected component in its induced subgraph with a number of nodes not less than a preset threshold, then all nodes in that component are tested against each other in multiple rounds; if there is a node whose test results are completely identical to those of all its neighboring nodes, then it is marked as a good state point.
2. The processor fault diagnosis method based on neighbor nodes according to claim 1, characterized in that, In S1, nodes that are greater than the corresponding threshold are selected as initial nodes, specifically as follows: Condition 1: Among the test results of all neighboring nodes of this node, the proportion of identical test results in many-to-one relationships is greater than the first proportion threshold. Condition 2: In the results of multiple tests performed on any of the neighboring nodes by the node, the proportion of identical results in a one-to-many relationship is greater than the second proportion threshold. A node that satisfies both of the above conditions is taken as the initial node.
3. The processor fault diagnosis method based on neighbor nodes according to claim 2, characterized in that, If there are multiple nodes in S1 that simultaneously satisfy both condition one and condition two, the node with the highest value after multiplying the many-to-one ratio and the one-to-many ratio is selected as the initial node. If the multiplication results in the same value, the shortest distance to the network boundary is calculated, and the node with the larger distance is selected as the initial node.
4. The processor fault diagnosis method based on neighbor nodes according to claim 1, characterized in that, In S2, each node pre-maintains a fixed order list of all its neighboring nodes, sorted based on the address values of the neighboring nodes or determined by a preset dimensional order; the vertical upward direction is the direction of the first neighboring node in the node's neighboring node order list; the clockwise direction is the direction of traversing each neighboring node in the order of the node's neighboring node order list; each node independently performs directional traversal according to its own neighboring node order list.
5. The processor fault diagnosis method based on neighbor nodes according to claim 1, characterized in that, S3 specifically involves: collecting all nodes whose states are still unknown, constructing their induced subgraphs, finding all connected components, and for connected components with ≥3 nodes, performing multiple rounds of mutual testing on all nodes within that component; if there exists a node v such that in each round of testing, all neighboring nodes of v within the connected component have the same test results for v, then v is marked as a good state point and added to the set of good nodes.
6. The processor fault diagnosis method based on neighbor nodes according to claim 5, characterized in that, The specific details of the multi-round mutual testing are as follows: Here, n represents the number of neighboring nodes within the connected component of the current node.
7. The processor fault diagnosis method based on neighbor nodes according to claim 1, characterized in that, The method is applicable to the ECQ(s,t) topology of the exchanged cross-cube network, where s and t are network dimension parameters, and t≥s≥1.
8. The processor fault diagnosis method based on neighbor nodes according to claim 1, characterized in that, Nodes whose state is still unknown after S3 ends are marked as fault state points and added to the fault node set.
9. A processor fault diagnosis system based on neighbor nodes, used to implement the processor fault diagnosis method based on neighbor nodes as described in any one of claims 1-8, characterized in that, include: The initial selection module counts the test results of each node by its neighboring nodes, and the proportion of identical test results is recorded as the many-to-one ratio. And the results of each node testing its neighboring nodes multiple times, where the proportion of identical test results is recorded as the one-to-many ratio, and nodes with a value greater than the corresponding threshold are selected as the initial nodes; The fault diagnosis module starts from the initial node and tests the neighboring nodes with unknown states in a clockwise direction, beginning from the vertical upward direction. If the test result is 0, then mark the neighboring node as a good state point, and use the neighboring node as the new current node, starting from the vertical upward direction, continue to test the unknown state nodes among its neighboring nodes in the clockwise direction; If the test result is 1, then mark the neighboring node as a fault state point, and continue testing the next neighboring node in the clockwise direction on the current node; If all directions of the current node have been tested, backtrack to the previous node that reached the current node, take that node as the new current node, and continue testing the nodes whose directions are unknown but have not yet been tested, starting from the vertical upward direction and proceeding clockwise. Repeat the above process until you backtrack to the initial node and all directions of the initial node have been tested; at this point, all nodes marked as good state points constitute the set of good nodes, and all nodes marked as fault state points constitute the set of fault nodes. The remaining fault diagnosis module, for nodes with unknown remaining states, if there is a connected component in its induced subgraph with no less than a preset threshold number of nodes, then all nodes in that component are tested against each other in multiple rounds; if there is a node whose test results are completely identical to those of all its neighboring nodes, then it is marked as a good state point.
10. A processor fault diagnosis device based on neighbor nodes, characterized in that, It includes a processor and a memory, wherein when the processor executes a computer program stored in the memory, it implements the processor fault diagnosis method based on any one of claims 1-8.