A rack server testing method, system, electronic device and storage medium

By conducting pre-testing and comprehensive testing on rack servers, the limitations of traditional testing methods in terms of testing scope and insufficient verification of interconnect performance are resolved, ensuring the stability and overall performance of rack servers.

CN120276924BActive Publication Date: 2026-03-03INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-06-06
Publication Date
2026-03-03

AI Technical Summary

Technical Problem

Traditional testing methods only test individual components independently, lacking systematic verification of the entire rack server. This leads to abnormal inter-component collaboration and insufficient verification of interconnection performance, which can easily result in communication bottlenecks or system crashes.

Method used

A rack server testing method is provided, which determines test parameters by obtaining component information, performs pre-testing to determine whether the hardware and software environment meet the requirements, and sequentially tests the compute nodes, interconnect nodes and the whole system to ensure stability.

Benefits of technology

The testing scope was expanded, fully verifying the interconnectivity of the rack servers, avoiding the influence of hardware and software environments, and improving the comprehensiveness and accuracy of the testing.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120276924B_ABST
    Figure CN120276924B_ABST
Patent Text Reader

Abstract

The application discloses a cabinet server test method and system, electronic equipment and a storage medium, and relates to the technical field of computers. When the cabinet server is installed, the cabinet server is pre-detected to ensure that the hardware and software environment meet the test requirements, so that the influence of the hardware environment and the software environment on the cabinet server test is avoided. When the test requirements are met, the computing nodes, the interconnection nodes and the cabinet server are tested in sequence. When the computing node test is passed, the interconnection node is tested. When the interconnection node test is passed, the cabinet server is tested. The technical problems of limited test range and insufficient interconnection performance verification are solved, and the technical effects of expanding the test range and fully verifying the interconnection performance are achieved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This application relates to the field of computer technology, and in particular to a rack server testing method, system, electronic device, and storage medium. Background Technology

[0002] In large data centers, servers are housed in racks that provide power. Powering on all the servers in a rack creates a significant impact on the entire system. To ensure the safety of rack-mounted servers during use, they are typically tested to identify and address any issues. Traditional testing methods focus on individual components, lacking a systematic verification of the entire rack-mounted server and making it difficult to detect anomalies in inter-component coordination. Furthermore, traditional testing methods fail to adequately verify the stability of interconnect nodes, leading to communication bottlenecks or system crashes in actual deployments. Summary of the Invention

[0003] This application provides a rack server testing method, system, electronic device, and storage medium to at least address the problems of limited testing scope and insufficient interconnect performance verification in related technologies.

[0004] This application provides a rack server testing method. The rack server includes at least compute nodes and interconnect nodes. The rack server testing method includes:

[0005] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0006] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0007] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0008] The stability of the rack server is determined based on the test results.

[0009] This application also provides a rack server testing system, wherein the rack server includes at least compute nodes and interconnect nodes, and the rack server testing system includes:

[0010] The acquisition module is used to obtain component information of the rack server in response to the completion of rack server installation;

[0011] The determination module is used to determine test parameters based on component information;

[0012] The pre-detection module is used to pre-detect the rack servers and obtain the pre-detection results;

[0013] The first judgment module is used to determine whether the hardware and software environment of the rack server meets the test requirements based on the pre-test results.

[0014] The testing module is used to test the compute nodes, interconnect nodes, and the entire rack server in sequence according to the test parameters if the test requirements are met, and obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes are tested, and when the interconnect nodes pass the test, the entire rack server is tested.

[0015] The second judgment module is used to determine the stability of the rack server based on the test results.

[0016] This application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for executing the computer program to implement at least the following steps in a rack server testing method:

[0017] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0018] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0019] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0020] The stability of the rack server is determined based on the test results.

[0021] This application also provides a computer-readable storage medium storing a computer program, wherein when executed by a processor, the computer program implements at least the following steps: a rack server testing method.

[0022] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0023] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0024] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0025] The stability of the rack server is determined based on the test results.

[0026] This application also provides a computer program product, including a computer program that, when executed by a processor, implements at least the following steps in a rack server testing method:

[0027] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0028] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0029] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0030] The stability of the rack server is determined based on the test results.

[0031] This application enables pre-testing of the rack server after installation to ensure that the hardware and software environment meets the testing requirements, thus avoiding any impact on the rack server testing due to hardware and software environment issues. When the testing requirements are met, the compute nodes, interconnect nodes, and the entire rack server are tested sequentially. When the compute nodes pass the test, the interconnect nodes are tested, and when the interconnect nodes pass the test, the entire rack server is tested. This solves the technical problems of limited testing scope and insufficient interconnect performance verification, achieving the technical effect of expanding the testing scope and fully verifying interconnect performance. Attached Figure Description

[0032] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0033] Figure 1 This is a flowchart illustrating a rack server testing method in one embodiment;

[0034] Figure 2 This is a detailed flowchart of a rack server testing method in one embodiment;

[0035] Figure 3 This is a structural block diagram of a rack server testing system in one embodiment;

[0036] Figure 4 This is a diagram of the internal structure of an electronic device in one embodiment. Detailed Implementation

[0037] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.

[0038] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.

[0039] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0040] Example 1

[0041] In one embodiment, such as Figure 1 As shown, a rack server testing method is provided. The rack server includes at least compute nodes and interconnect nodes. The rack server testing method includes:

[0042] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0043] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0044] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0045] The stability of the rack server is determined based on the test results.

[0046] Specifically, after the rack server is installed, it undergoes pre-testing to ensure that the hardware and software environment meets the testing requirements, thus avoiding any impact on the rack server testing due to hardware and software environment issues. Once the testing requirements are met, the compute nodes, interconnect nodes, and the entire rack server are tested sequentially. When the compute nodes pass the test, the interconnect nodes are tested, and when the interconnect nodes pass the test, the entire rack server is tested. This solves the technical problems of limited testing scope and insufficient interconnect performance verification, achieving the technical effect of expanding the testing scope and fully verifying interconnect performance.

[0047] In a specific embodiment, before the test execution, global resource scheduling and environment configuration are performed on the heterogeneous architecture of the rack server, such as compute nodes, interconnect nodes, and power modules. First, the physical layout and logical topology of all components within the rack server are identified, primarily by obtaining the power supply capacity and redundancy configuration of the power modules through the intelligent platform management interface or management standards based on the Hypertext Transfer Protocol Security (HTTP) service; the model, quantity, memory capacity, CPU core distribution, and other component information of the graphics processing units (GPUs) within each compute node; and the interconnect topology of the interconnect nodes. Second, GPU utilization thresholds are defined based on the actual conditions of each node, such as 90%-100%, interconnect bandwidth utilization, GPU temperature difference, and test duration. Finally, a pre-inspection is performed on the rack server to ensure that the hardware and software environments meet the test requirements.

[0048] In one specific embodiment, compute nodes and interconnect nodes can be tested in parallel, and the entire rack server is only tested if both compute nodes and interconnect nodes pass the test; otherwise, the rack server is deemed unstable. Test results can be stored using triples, with binary 1s and 0s representing pass and fail, respectively. The value of the first element in the triple determines whether the compute node passes the test; the value of the second element determines whether the interconnect node passes the test; the result of the AND operation between the first and second elements determines whether the entire rack server should be tested, obtaining the value of the third element in the triple; the value of the third element determines whether the entire rack server passes the test, thus determining the stability of the rack server. For example, if the values ​​of the first and second elements are both 1, it is determined that both the compute nodes and interconnect nodes have passed the test; if the result of the sum of the values ​​of the first and second elements is 1, it is determined that the entire rack server needs to be tested; if the value of the third element is 1, it is determined that the entire rack server has passed the test and is stable; if the value of the third element is 0, it is determined that the entire rack server has failed the test and is unstable.

[0049] In one embodiment, a pre-test is performed on the rack server to obtain the pre-test results, and the hardware environment of the rack server is determined based on the pre-test results to see if it meets the test requirements, including:

[0050] Obtain the power module information in the rack server and configure the power switching script based on the power module information. The power module information includes at least the main power module information and the redundant power module information.

[0051] Perform a power switching operation on the rack server according to the power switching script;

[0052] If the power switching fails, it indicates that the power module of the rack server does not meet the test requirements.

[0053] If the power switch is successful, it confirms that the power module of the rack server meets the test requirements.

[0054] Specifically, by pre-testing the power modules in the rack servers, we can ensure that the power modules meet the test requirements and avoid the impact on the rack server test due to the lack of redundant power modules or other reasons.

[0055] In one specific embodiment, a single power outage of the main power module is simulated according to the power switching script to ensure that the bus can seamlessly switch power supply paths.

[0056] In one embodiment, such as Figure 2As shown, the number of test results takes the first target value, the second target value, or the third target value, and the type of test result is pass or fail. The compute nodes, interconnect nodes, and the entire rack server are tested sequentially according to the test parameters to obtain the test results, including:

[0057] The computing node is tested according to the test parameters to obtain the first test result, and the stability of the computing node is determined based on the first test result.

[0058] If the computing node is unstable, the number of test results is set to the first target value, and the type of the first test result is set to fail.

[0059] If the computing node is stable, the number of test results is set to the first target value, and the type of the first test result is set to pass. The interconnected node is then tested according to the test parameters to obtain the second test result. The stability of the interconnected node is determined based on the second test result.

[0060] If the interconnected nodes are unstable, the number of test results will be changed to the second target value, and the type of the second test result in the test results will be set to fail.

[0061] If the interconnection nodes are stable, the number of test results is modified to the second target value, and the type of the second test result is set to pass. The entire rack server is tested according to the test parameters to obtain the third test result. The overall connectivity of the rack server is determined based on the third test result.

[0062] If the entire rack server is not connected, change the number of test results to the third target value, and set the type of the third test result in the test results to fail.

[0063] If the entire rack server is connected, the number of test results will be changed to the third target value, and the type of the third test result in the test results will be set to pass.

[0064] Specifically, the compute nodes, interconnect nodes, and the entire rack server are tested sequentially to obtain test results. The stability of the rack server is then determined based on the number and type of test results.

[0065] In this implementation, the first target value is 1, the second target value is 2, and the third target value is 3. Each computing node, interconnect node, and key component is racked to form a complete rack server. Operating data from each component of the rack server is collected, including the temperature of the graphics processing unit, interconnect node bandwidth, communication latency, power consumption, and system logs. The system determines whether the operating data is abnormal. If the operating data is normal, stress tests are performed on the computing nodes and interconnect nodes; otherwise, alarm information is generated. Furthermore, the system automatically detects the location and power-on status of each node through intelligent platform management interface commands and saves this information in the logs. Even if nodes are moved, the actual location after the change can be obtained, thus avoiding identification errors caused by misplacement after production or maintenance, which could lead to program errors or failures.

[0066] In one embodiment, determining the stability of the rack server based on test results includes:

[0067] Determine the possible values ​​for the number of test results;

[0068] If the quantity is either the first target value or the second target value, then the rack server is determined to be unstable.

[0069] If the quantity is the third target value, then determine the type of the third test result in the test results;

[0070] If the third test result is "fail", then the rack server is determined to be unstable.

[0071] If the third test result is "pass", then the rack server is considered stable.

[0072] Specifically, after individual components such as compute nodes and interconnect nodes have passed testing, the entire rack server is tested. This expands the testing scope while ensuring the stability of interconnect nodes, which is beneficial for discovering coordination anomalies between components.

[0073] In one embodiment, the computing node is tested according to test parameters to obtain a first test result, including:

[0074] Based on the test duration and number of CPU cores in the test parameters, the floating-point operation capability of the CPU in the computing node is tested to obtain the fourth test result.

[0075] Based on the test duration in the test parameters, read and write stress tests were performed on the memory and hard disk in the computing node to obtain the fifth and sixth test results.

[0076] Based on the results of the fourth, fifth, and sixth tests, the first test result is determined.

[0077] Specifically, the stability of computing nodes is determined by stress testing the central processing unit, memory, and hard drive.

[0078] In one specific embodiment, stress tests of varying intensities are performed on components such as the CPU, memory, and hard disk according to the test duration, utilization threshold, and test tasks specified in the test parameters. The CPU is stress-tested by simulating large-scale data processing tasks, such as using linear system software package commands to perform large-scale matrix operations to test the CPU's floating-point arithmetic capabilities. The memory and hard disk are stress-tested by continuously reading and writing data, such as using disk testing tools to perform different types of stress tests on the hard disk, such as sequential reads and random writes. Performance metrics of each component, such as CPU utilization, memory read / write speed, and hard disk I / O rates, are monitored in real time. Simultaneously, the status of the computing node's baseboard management controller, log information, and the status of various sensors are also monitored during the stress tests.

[0079] In one specific embodiment, the core of the rack server is the graphics processing unit (GPU). After ensuring that the CPU, memory, and hard drive of the compute node are functioning correctly, and ruling out hardware link and component issues, the interconnection between the interconnect nodes (composed of switching components separated from the compute node) and the GPU of the compute node is specifically tested to verify the core interconnection capabilities of the rack server. A large number of parallel computing tasks are sent to the GPU to simulate high-load application scenarios, such as sending large-scale matrix multiplication tasks to the GPU using a parallel test program. The data transmission rate between GPUs is monitored, and the stability of the interconnect nodes under high load is checked to see if packet loss or other anomalies occur.

[0080] In one embodiment, the computing node is connected to the interconnect node, and the interconnect node is tested according to test parameters to obtain a second test result, including:

[0081] Based on the test parameters, stress tests were conducted on the interconnected nodes;

[0082] Record the data transmission rate and communication latency between the interconnected nodes and the computing nodes, using the time intervals in the test parameters as the period.

[0083] The data transmission rate is compared with the data transmission rate threshold in the test parameters to obtain the first comparison result;

[0084] The communication latency time is compared with the communication latency time threshold in the test parameters to obtain a second comparison result;

[0085] The second test result is determined based on the first comparison result and the second comparison result.

[0086] Specifically, the data transmission rate and communication latency of the interconnected nodes and computing nodes are compared with the corresponding thresholds in the test parameters to determine the stability of the interconnected nodes.

[0087] In one specific embodiment, stress testing needs to be performed on the interconnect nodes individually to ensure their stability. After the interconnect node enters its own independent operating system, it obtains its Internet Protocol address information, and then, according to the received stress test instructions, sends massive amounts of deep learning training sample data to the graphics processing unit to simulate the high-load data transmission requirements under complex artificial intelligence scenarios. Simultaneously, in this implementation, key performance indicators such as data transmission rate and communication latency between the interconnect node and each graphics processing unit are recorded every 10 seconds. If the rate is not up to standard, an error is reported promptly, and the R&D personnel are requested to analyze it. All data is also recorded in parallel for subsequent order analysis.

[0088] In one embodiment, the entire rack server is tested according to test parameters to obtain a third test result, including:

[0089] Identify peripheral nodes and receive requests sent by peripheral nodes. Based on the response results of the requests, obtain the response time and packet loss rate.

[0090] The response time and the timeout threshold in the test parameters are compared to obtain a third comparison result;

[0091] The packet loss rate is compared with the packet loss rate threshold in the test parameters to obtain the fourth comparison result;

[0092] The third test result is determined based on the third and fourth comparison results.

[0093] Specifically, the response time and packet loss rate in the overall test of the rack server are compared with the corresponding thresholds in the test parameters to determine the overall connectivity of the rack server.

[0094] In a specific embodiment, the specifications and versions of the switches and power modules in the rack server section are first checked to prevent the use of incorrect equipment. Next, the presence status and corresponding power consumption of the power supply on the power module are tested to ensure normal power supply. Then, a separate server or a node within the rack server is used as a peripheral node, with internal connections primarily through the Internet Protocol (IP) addresses of the baseboard management controllers of the compute nodes and interconnect nodes. An overall connectivity test of the rack server is then performed. This can be done by sending probe packets to various components within the rack server to check if the links between components are clear and if data can be transmitted normally. For example, the Internet Packet Explorer command using the Internet Control Message Protocol (ICP) can be used to probe the IP addresses of devices such as switches, compute nodes, and interconnect nodes to verify network connectivity. Alternatively, port scanning tools can be used to check the reachability of open ports on each device to determine service-level connectivity between devices.

[0095] In addition, pre-testing of the rack servers, obtaining pre-test results, and determining whether the hardware environment of the rack servers meets the testing requirements based on the pre-test results also includes:

[0096] Verify the firmware version and physical connection status of compute nodes and interconnect nodes;

[0097] If the verification fails, it indicates that the hardware environment of the rack server does not meet the test requirements.

[0098] If the verification is successful, it confirms that the firmware version and physical connection status of the rack server meet the test requirements.

[0099] Obtain the pre-boot execution environment script for the server corresponding to the rack server, and calculate the first hash value of the pre-boot execution environment script;

[0100] Deploy the pre-boot execution environment script and calculate the second hash value of the pre-boot execution environment script;

[0101] Compare the first hash value with the second hash value;

[0102] If the first hash value matches the second hash value, then the version in the pre-boot execution environment script is compared with the corresponding version in the rack server;

[0103] If the version in the pre-boot execution environment script is consistent with the corresponding version in the rack server, then the software environment of the rack server meets the test requirements.

[0104] This includes comparing the version in the pre-boot execution environment script with the corresponding version in the rack server, including:

[0105] The first operating system version in the pre-boot execution environment script is compared with the second operating system version in the rack server; the first kernel version in the pre-boot execution environment script is compared with the second kernel version in the rack server; and the first driver version in the pre-boot execution environment script is compared with the second driver version in the rack server.

[0106] Specifically, by determining whether the hardware and software environments in the rack server meet the testing requirements, we can rule out hardware-related reasons that cause the test to fail, and avoid situations where the program cannot be executed or fails due to a lack of software dependencies.

[0107] In specific implementation, this embodiment mainly verifies the firmware version and physical connection status of computing nodes and interconnect nodes; simulates a single power failure of the power module to ensure that the bus can seamlessly switch power supply paths; since the factory is a diskless system, each time the pre-boot execution environment script is used to boot into the system, it is necessary to check the compatibility and integrity of the software environment such as environment version and driver version in each script to avoid the program failing to execute or fail due to missing dependencies.

[0108] In addition, the data generated during the above testing process, including performance data of each component, test time, and test results, are analyzed and processed to display test results, performance indicator charts, fault reports, and other information, allowing operators to intuitively understand the test situation and analyze the causes. After filtering the database tables, error information is read and fed back to the corresponding production line management personnel, who then check the faults and perform corresponding replacement procedures.

[0109] It should be understood that, although Figure 1 , Figure 2 The steps in the flowchart are shown sequentially as indicated by the arrows, but these steps are not necessarily executed in the order indicated by the arrows. Unless otherwise specified herein, there is no strict order in which these steps are executed, and they can be performed in other orders. Figure 1 , Figure 2 At least some of the steps in the process may include multiple sub-steps or multiple stages. These sub-steps or stages are not necessarily completed at the same time, but can be executed at different times. The execution order of these sub-steps or stages is not necessarily sequential, but can be executed in turn or alternately with other steps or at least some of the sub-steps or stages of other steps.

[0110] Example 2

[0111] In one embodiment, such as Figure 3 As shown, a rack server testing system is provided. The rack server includes at least compute nodes and interconnect nodes. The rack server testing system includes:

[0112] The acquisition module is used to obtain component information of the rack server in response to the completion of rack server installation;

[0113] The determination module is used to determine test parameters based on component information;

[0114] The pre-detection module is used to pre-detect the rack servers and obtain the pre-detection results;

[0115] The first judgment module is used to determine whether the hardware and software environment of the rack server meets the test requirements based on the pre-test results.

[0116] The testing module is used to test the compute nodes, interconnect nodes, and the entire rack server in sequence according to the test parameters if the test requirements are met, and obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes are tested, and when the interconnect nodes pass the test, the entire rack server is tested.

[0117] The second judgment module is used to determine the stability of the rack server based on the test results.

[0118] In one embodiment, the pre-detection module and the first judgment module are specifically used for:

[0119] Obtain the power module information in the rack server and configure the power switching script based on the power module information. The power module information includes at least the main power module information and the redundant power module information.

[0120] Perform a power switching operation on the rack server according to the power switching script;

[0121] If the power switching fails, it indicates that the power module of the rack server does not meet the test requirements.

[0122] If the power switch is successful, it confirms that the power module of the rack server meets the test requirements.

[0123] In one embodiment, the number of test results is a first target value, a second target value, or a third target value, and the type of test result is pass or fail. The test module is specifically used for:

[0124] The computing node is tested according to the test parameters to obtain the first test result, and the stability of the computing node is determined based on the first test result.

[0125] If the computing node is unstable, the number of test results is set to the first target value, and the type of the first test result is set to fail.

[0126] If the computing node is stable, the number of test results is set to the first target value, and the type of the first test result is set to pass. The interconnected node is then tested according to the test parameters to obtain the second test result. The stability of the interconnected node is determined based on the second test result.

[0127] If the interconnected nodes are unstable, the number of test results will be changed to the second target value, and the type of the second test result in the test results will be set to fail.

[0128] If the interconnection nodes are stable, the number of test results is modified to the second target value, and the type of the second test result is set to pass. The entire rack server is tested according to the test parameters to obtain the third test result. The overall connectivity of the rack server is determined based on the third test result.

[0129] If the entire rack server is not connected, change the number of test results to the third target value, and set the type of the third test result in the test results to fail.

[0130] If the entire rack server is connected, the number of test results will be changed to the third target value, and the type of the third test result in the test results will be set to pass.

[0131] In one embodiment, the second determination module is specifically used for:

[0132] Determine the possible values ​​for the number of test results;

[0133] If the quantity is either the first target value or the second target value, then the rack server is determined to be unstable.

[0134] If the quantity is the third target value, then determine the type of the third test result in the test results;

[0135] If the third test result is "fail", then the rack server is determined to be unstable.

[0136] If the third test result is "pass", then the rack server is considered stable.

[0137] In one embodiment, the test module is further used for:

[0138] Based on the test duration and number of CPU cores in the test parameters, the floating-point operation capability of the CPU in the computing node is tested to obtain the fourth test result.

[0139] Based on the test duration in the test parameters, read and write stress tests were performed on the memory and hard disk in the computing node to obtain the fifth and sixth test results.

[0140] Based on the results of the fourth, fifth, and sixth tests, the first test result is determined.

[0141] In one embodiment, the compute node is connected to the interconnect node, and the test module is further used for:

[0142] Based on the test parameters, stress tests were conducted on the interconnected nodes;

[0143] Record the data transmission rate and communication latency between the interconnected nodes and the computing nodes, using the time intervals in the test parameters as the period.

[0144] The data transmission rate is compared with the data transmission rate threshold in the test parameters to obtain the first comparison result;

[0145] The communication latency time is compared with the communication latency time threshold in the test parameters to obtain a second comparison result;

[0146] The second test result is determined based on the first comparison result and the second comparison result.

[0147] In one embodiment, the test module is further used for:

[0148] Identify the peripheral nodes and receive requests sent by them. Based on the response results of the requests, obtain the response time and packet loss rate. Compare the response time with the timeout threshold in the test parameters to obtain a third comparison result.

[0149] The packet loss rate is compared with the packet loss rate threshold in the test parameters to obtain the fourth comparison result;

[0150] The third test result is determined based on the third and fourth comparison results.

[0151] Specific limitations regarding the rack server testing system can be found in the limitations of the rack server testing methods described above, and will not be repeated here. Each module in the aforementioned rack server testing system can be implemented entirely or partially through software, hardware, or a combination thereof. These modules can be embedded in or independent of the processor within the electronic device, or stored in the memory of the electronic device as software, so that the processor can call and execute the corresponding operations of each module.

[0152] Example 3

[0153] In one embodiment, an electronic device is provided, including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the processor executes the computer program to perform the following steps:

[0154] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0155] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0156] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0157] The stability of the rack server is determined based on the test results.

[0158] When the program instructions are read and executed by one or more processors, they can also perform operations corresponding to the steps in the above method embodiments, as described above, and will not be repeated here. Reference Figure 4 This exemplifies the architecture of an electronic device, which may include a processor 410, a video display adapter 411, a disk drive 412, an input / output interface 413, a network interface 414, and a memory 420. The processor 410, video display adapter 411, disk drive 412, input / output interface 413, network interface 414, and memory 420 can communicate with each other via a communication bus 430.

[0159] The processor 410 can be implemented using a general-purpose central processing unit (CPU), microprocessor, application specific integrated circuit (ASIC), or one or more integrated circuits, and is used to execute relevant programs to achieve the technical solution provided in this application.

[0160] The memory 420 can be implemented as a read-only memory (ROM), random access memory (RAM), static storage device, dynamic storage device, etc. The memory 420 can store the operating system 421 for controlling the operation of the electronic device 400, and the basic input / output system (BIOS) 422 for controlling the low-level operations of the electronic device 400. Additionally, it can store a web browser 423, data storage management 424, and an icon / font processing system 425, etc. The aforementioned icon / font processing system 425 can be the application program that specifically implements the aforementioned steps in this embodiment. In summary, when implementing the technical solution provided in this application through software or firmware, the relevant program code is stored in the memory 420 and executed by the processor 410.

[0161] Input / output interface 413 is used to connect input / output modules to realize information input and output. Input / output modules can be configured as components in the device (not shown in the figure) or externally connected to the device to provide corresponding functions. Input devices may include keyboards, mice, touch screens, microphones, various sensors, etc., and output devices may include displays, speakers, vibrators, indicator lights, etc.

[0162] Network interface 414 is used to connect a communication module (not shown in the figure) to enable communication and interaction between this device and other devices. The communication module can communicate via wired means (such as USB, Ethernet cable, etc.) or wireless means (such as mobile network, WIFI, Bluetooth, etc.).

[0163] Bus 430 includes a pathway for transmitting information between various components of the device, such as processor 410, video display adapter 411, disk drive 412, input / output interface 413, network interface 414, and memory 420.

[0164] In addition, the electronic device 400 can also obtain information on specific acquisition conditions from the virtual resource object acquisition condition information database 441 for condition judgment.

[0165] It should be noted that although the above-described electronic device 400 only shows a processor 410, a video display adapter 411, a disk drive 412, an input / output interface 413, a network interface 414, a memory 420, and a bus 430, in specific implementations, the electronic device may also include other components necessary for normal operation. Furthermore, those skilled in the art will understand that the above-described device may only include the components necessary for implementing the solution of this application, and does not necessarily include all the components shown in the figures.

[0166] As can be seen from the above description of the embodiments, those skilled in the art can clearly understand that this application can be implemented by means of software plus necessary general-purpose hardware platforms. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product can be stored in a storage medium, such as ROM / RAM, magnetic disk, optical disk, etc., and includes several instructions to cause an electronic device (which may be a personal computer, cloud server, or network device, etc.) to execute the methods of various embodiments or some parts of the embodiments of this application.

[0167] Example 4

[0168] In one embodiment, a computer-readable storage medium is provided having a computer program stored thereon, the computer program performing the following steps when executed by a processor:

[0169] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0170] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0171] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0172] The stability of the rack server is determined based on the test results.

[0173] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a non-volatile computer-readable storage medium. When executed, the computer program can include the processes of the embodiments of the above methods. Any references to memory, storage, databases, or other media used in the embodiments provided in this application can include non-volatile and / or volatile memory. Non-volatile memory may include read-only memory (ROM), programmable ROM (PROM), electrically programmable ROM (EPROM), electrically erasable programmable ROM (EEPROM), or flash memory. Volatile memory may include random access memory (RAM) or external cache memory. By way of illustration and not limitation, RAM is available in a variety of forms, such as static RAM (SRAM), dynamic RAM (DRAM), synchronous DRAM (SDRAM), dual data rate SDRAM (DDRSDRAM), enhanced SDRAM (ESDRAM), synchronous link DRAM (SLDRAM), RAMbus direct RAM (RDRAM), direct memory bus dynamic RAM (DRDRAM), and memory bus dynamic RAM (RDRAM), etc.

[0174] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0175] The above embodiments merely illustrate several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

[0176] Example 5

[0177] In one embodiment, a computer program product is provided, on which a computer program is stored, the computer program performing the following steps when executed by a processor:

[0178] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0179] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0180] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0181] The stability of the rack server is determined based on the test results.

[0182] In one embodiment, a computer program product is provided, including a non-volatile computer-readable storage medium storing a computer program that, when executed by a processor, performs the following steps:

[0183] In response to the completion of rack server installation, obtain the rack server component information and determine the test parameters based on the component information;

[0184] Perform pre-testing on the rack servers, obtain the pre-testing results, and determine whether the hardware and software environment of the rack servers meets the test requirements based on the pre-testing results;

[0185] If the test requirements are met, the compute nodes, interconnect nodes, and the entire rack server will be tested sequentially according to the test parameters to obtain the test results. Specifically, when the compute nodes pass the test, the interconnect nodes will be tested, and when the interconnect nodes pass the test, the entire rack server will be tested.

[0186] The stability of the rack server is determined based on the test results.

[0187] Those skilled in the art will understand that all or part of the processes in the methods of the above embodiments can be implemented by a computer program instructing related hardware. The computer program can be stored in a computer program product, and when the computer program is executed, it can include the processes of the embodiments of the methods described above.

[0188] The technical features of the above embodiments can be combined in any way. For the sake of brevity, not all possible combinations of the technical features in the above embodiments are described. However, as long as there is no contradiction in the combination of these technical features, they should be considered to be within the scope of this specification.

[0189] The above embodiments merely illustrate several implementation methods of this application, and while the descriptions are relatively specific and detailed, they should not be construed as limiting the scope of the invention patent. It should be noted that those skilled in the art can make various modifications and improvements without departing from the concept of this application, and these all fall within the protection scope of this application. Therefore, the protection scope of this patent application should be determined by the appended claims.

Claims

1. A method for testing a rack server, wherein the rack server includes at least a compute node and an interconnect node, the interconnect node being composed of a switching component separated from the compute node, and the interconnect node being used to connect to a graphics processing unit in the compute node, characterized in that, The method includes: In response to the completion of the rack server installation, the component information of the rack server is obtained, and the test parameters are determined based on the component information; The rack server is pre-tested to obtain pre-test results, and the hardware and software environment of the rack server is determined based on the pre-test results to see if they meet the test requirements. If the test requirements are met, the compute node, interconnect node, and rack server as a whole are tested sequentially according to the test parameters to obtain test results. Specifically, the compute node is tested according to the test parameters to obtain a first test result, the interconnect node is tested according to the test parameters to obtain a second test result, and the rack server as a whole is tested according to the test parameters to obtain a third test result. When the compute node passes the test, the interconnect node is tested, and when the interconnect node passes the test, the rack server as a whole is tested. The stability of the rack server is determined based on the test results. The step of determining the stability of the rack server based on the test results includes: Determine the possible values ​​for the number of test results; If the quantity is either the first target value or the second target value, then the rack server is determined to be unstable. If the quantity is a third target value, then the type of the third test result in the test results is determined; If the third test result is "fail", then the rack server is determined to be unstable. If the third test result is "pass", then the rack server is determined to be stable.

2. The method according to claim 1, characterized in that, The process of performing pre-testing on the rack server, obtaining pre-testing results, and determining whether the hardware environment of the rack server meets the test requirements based on the pre-testing results includes: Obtain the power module information in the rack server and configure a power switching script based on the power module information, wherein the power module information includes at least the main power module information and the redundant power module information; Perform a power switching operation on the rack server according to the power switching script; If the power switching fails, it is determined that the power module of the rack server does not meet the test requirements. If the power switch is successful, it is determined that the power module of the rack server meets the test requirements.

3. The method according to claim 1, characterized in that, The number of test results is taken as a first target value, a second target value, or a third target value, and the type of the test result is pass or fail. The test results are obtained by sequentially testing the computing node, interconnect node, and rack server according to the test parameters, including: The computing node is tested according to the test parameters to obtain a first test result, and the stability of the computing node is determined according to the first test result. If the computing node is unstable, the number of test results is determined to be a first target value, and the type of the first test result in the test results is set to fail. If the computing node is stable, then the number of test results is determined to be a first target value, and the type of the first test result in the test results is set to pass; The interconnect node is tested according to the test parameters to obtain a second test result, and the stability of the interconnect node is determined according to the second test result. If the interconnected node is unstable, the number of test results will be modified to the second target value, and the type of the second test result in the test results will be set to fail. If the interconnected node is stable, then the quantity of the test results is modified to the second target value, and the type of the second test result is set to pass; The rack server is tested as a whole according to the test parameters to obtain a third test result, and the overall connectivity of the rack server is determined based on the third test result. If the entire rack server is not connected, the quantity of the test results will be modified to the third target value, and the type of the third test result in the test results will be set to fail. If the entire rack server is connected, the quantity of the test results will be modified to the third target value, and the type of the third test result in the test results will be set to pass.

4. The method according to claim 3, characterized in that, The step of testing the computing node according to the test parameters to obtain a first test result includes: Based on the test duration and number of CPU cores in the test parameters, the floating-point operation capability of the CPU in the computing node is tested to obtain a fourth test result. Based on the test duration in the test parameters, read and write stress tests are performed on the memory and hard disk in the computing node to obtain the fifth test result and the sixth test result. The first test result is determined based on the fourth test result, the fifth test result, and the sixth test result.

5. The method according to claim 3, characterized in that, The computing node is connected to the interconnect node, and the step of testing the interconnect node according to the test parameters to obtain a second test result includes: The interconnected nodes are subjected to stress tests based on the test parameters. Using the time intervals in the test parameters as a period, record the data transmission rate and communication latency between the interconnect node and the computing node; The data transmission rate is compared with the data transmission rate threshold in the test parameters to obtain a first comparison result; The communication delay time is compared with the communication delay time threshold in the test parameters to obtain a second comparison result; The second test result is determined based on the first comparison result and the second comparison result.

6. The method according to claim 3, characterized in that, The step of testing the entire rack server according to the test parameters to obtain a third test result includes: Identify peripheral nodes and receive requests sent by the peripheral nodes. Based on the response results of the requests, obtain the response time and packet loss rate. The response time is compared with the timeout threshold in the test parameters to obtain a third comparison result; The packet loss rate is compared with the packet loss rate threshold in the test parameters to obtain a fourth comparison result; The third test result is determined based on the third comparison result and the fourth comparison result.

7. A rack server testing system for implementing the rack server testing method of claim 1, characterized in that, The rack server includes at least compute nodes and interconnect nodes. The interconnect nodes consist of switching components separated from the compute nodes, and the interconnect nodes are used to connect the graphics processing units in the compute nodes. The system comprises: The acquisition module is used to acquire component information of the rack server in response to the completion of the rack server installation; The determination module is used to determine test parameters based on the component information; The pre-detection module is used to perform pre-detection on the rack servers and obtain pre-detection results; The first judgment module is used to determine whether the hardware and software environment of the rack server meets the test requirements based on the pre-detection results. The testing module is used to test the computing node, the interconnect node, and the rack server as a whole according to the test parameters if the test requirements are met, and to obtain the test results. Specifically, when the computing node passes the test, the interconnect node is tested, and when the interconnect node passes the test, the rack server as a whole is tested. The second judgment module is used to judge the stability of the rack server based on the test results.

8. An electronic device, characterized in that, include: Memory, used to store computer programs; A processor, configured to implement the steps of the rack server testing method as described in any one of claims 1 to 6 when executing the computer program.

9. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program, wherein when the computer program is executed by a processor, it implements the steps of the rack server testing method as described in any one of claims 1 to 6.

Citation Information

Patent Citations

  • Server testing method and device, electronic device and storage medium

    CN113434353A

  • Server testing method, device and electronic equipment

    CN119739574A