Server test method, test platform, test equipment and external storage medium

By updating the Switch firmware of the AI ​​server, updating the topology structure and performing target testing tasks, the problem of inefficiency in manually configuring deep learning environments and frameworks in the existing technology is solved, automated testing and performance evaluation are realized, and testing efficiency is improved. Save human resources.

CN119512830APending Publication Date: 2025-02-25FULIAN PRESION ELECTRONICS (TIANJIN) CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202311076120.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-08-23
Publication Date
2025-02-25

AI Technical Summary

Technical Problem

The benchmark performance testing of existing AI servers relies on manual configuration of deep learning environments and frameworks, resulting in repeated installations, error-prone, time-consuming and labor-intensive. The analysis of test results also requires manual processing, which is very labor-intensive and time-consuming.

Method used

Provide a server testing method, which updates the server's topology by updating the Switch's firmware, and controls the server to perform target test tasks corresponding to the updated topology to generate test results.

Benefits of technology

It realizes automated testing of different application scenarios, comprehensively and accurately evaluates server performance, improves testing efficiency, and saves human resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119512830A_ABST
    Figure CN119512830A_ABST
Patent Text Reader

Abstract

The invention provides a server test method, a test platform, test equipment and an external storage medium. The server test method is applied to a test platform, the test platform is in communication connection with a server, the server comprises a plurality of processing units and a plurality of Switches, and the processing units and the Switches are interconnected according to a topological structure. The server testing method comprises the following steps: updating the topological structure by updating firmware of the plurality of Switches based on a target firmware upgrade package; and controlling the server to execute a target test task corresponding to the updated topological structure, and generating a test result. According to the server testing method, the server can be automatically tested according to different application scenes, and comprehensive and accurate performance testing is realized, so that the server has better performance, the testing efficiency is improved, and manpower is saved.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the field of testing technology, and in particular to a server testing method, a testing platform, a testing device and an external storage medium. Background Art

[0002] In recent years, high-tech industries such as artificial intelligence, the Internet of Things, cloud computing, and big data have developed rapidly. In order to meet the collection and organization of various data in the above-mentioned high-tech industries, AI servers in various heterogeneous forms have been widely used, which has put forward higher requirements and challenges on the computing power of AI servers. The benchmark performance test of deep learning model training and reasoning of AI computing platforms is the main reference indicator for measuring the computing power of AI servers.

[0003] At present, the general practice of benchmarking the deep learning model of the AI ​​computing platform is to manually configure the deep learning basic environment and deep learning framework according to the hardware configuration of the server, especially the different GPU models. In the process of configuring dozens or even hundreds of servers, there are shortcomings such as repeated installation of the deep learning basic environment and framework, prone to errors, time-consuming and labor-intensive, and human resource consumption. In addition, the benchmarking performance test of the deep learning framework of the AI ​​computing platform and the analysis and collation of the test results also need to be performed manually, which is not only labor-intensive, but also time-consuming and labor-intensive. Summary of the invention

[0004] In view of the above, it is necessary to provide a server testing method, testing platform, testing equipment and external storage medium to solve the technical problem that server testing relies on manual labor and is inefficient for different application scenarios.

[0005] In a first aspect, an embodiment of the present application provides a server testing method, which is applied to a testing platform, wherein the testing platform is communicatively connected to a server, wherein the server includes a plurality of processing units and a plurality of switches, wherein the plurality of processing units and the plurality of switches are interconnected according to a topology structure, and the method includes:

[0006] Updating the topology structure by updating the firmware of the multiple Switches based on the target firmware upgrade package; and

[0007] The server is controlled to execute a target test task corresponding to the updated topology structure, and a test result is generated.

[0008] When facing different application scenarios, the server testing method implemented in this embodiment first updates the server topology by updating the firmware of the Switch, then controls the server to execute the target test task corresponding to the updated topology, and finally generates the test results, thereby evaluating the performance of the server according to the test results. The above method can automatically test the server for different application scenarios, realize comprehensive and accurate performance testing, test the information transmission efficiency of different connection methods in different application environments, and provide customer performance references, so that the server can have better performance, improve testing efficiency, and save manpower.

[0009] In some embodiments, before updating the firmware of the plurality of Switches based on the target firmware upgrade package, the method further includes:

[0010] The test script is copied to the server, the test information includes N types of topology information and N test tasks, each type of topology information in the N types of topology information corresponds to a test task in the N test tasks, wherein N is a positive integer greater than or equal to 1.

[0011] In some embodiments, before updating the firmware of the plurality of Switches based on the target firmware upgrade package, the method further includes:

[0012] According to the level order of the version number corresponding to each firmware upgrade package in the N firmware upgrade packages, a target firmware upgrade package is determined from the N firmware upgrade packages.

[0013] In some embodiments, after controlling the server to complete the target test task, the method further includes:

[0014] Determining whether each firmware upgrade package in the N firmware upgrade packages has been determined as a target firmware upgrade package;

[0015] If at least one firmware upgrade package among the N firmware upgrade packages is not determined as a target firmware upgrade package, determine a target firmware upgrade package from the at least one firmware upgrade package, and update the topology structure by updating the firmware of the multiple Switches based on the currently determined target firmware upgrade package; and

[0016] The server is controlled to execute the target test task corresponding to the updated topology structure until the firmware of the multiple Switches is updated based on each firmware upgrade package in the N firmware upgrade packages, and the test task corresponding to the updated topology structure is executed, and the test is ended.

[0017] In some embodiments, before copying the test information to the server, the method further comprises:

[0018] Obtaining the N types of topological structure information;

[0019] In response to a user input signal, the test task corresponding to each of the N types of topology structure information is created.

[0020] In some embodiments, before controlling the server to execute the target test task corresponding to the updated topology structure, the method further includes:

[0021] Detecting whether the operating environment of the server meets the test environment requirements;

[0022] If the operating environment of the server does not meet the test environment requirements, a pre-stored environment configuration tool is copied to the server and the environment configuration tool is installed on the server to execute the target test task.

[0023] In some embodiments, after generating the test results, the method further includes:

[0024] The test result is saved to evaluate the performance of the server according to the test result.

[0025] In a second aspect, an embodiment of the present application further provides a test platform, the test platform comprising:

[0026] A test device, wherein the test device is communicatively connected to a server, wherein the server includes a plurality of processing units and a plurality of switches, wherein the plurality of processing units and the plurality of switches are interconnected according to a topology structure, and the test device is communicatively connected to the switches;

[0027] The test equipment includes:

[0028] A firmware update module, configured to update the topology structure by updating the firmware of the multiple Switches based on a target firmware upgrade package;

[0029] The test module is used to control the server to execute the target test task corresponding to the updated topology structure and generate a test result.

[0030] In a third aspect, an embodiment of the present application further provides a testing device, the testing device comprising:

[0031] A memory storing at least one instruction;

[0032] The processor executes the at least one instruction to implement the server testing method as described in the above embodiment.

[0033] In a fourth aspect, an embodiment of the present application further provides an external storage medium, in which test information, test results, and an environment configuration tool used in the server testing method as described in the above embodiment are stored. BRIEF DESCRIPTION OF THE DRAWINGS

[0034] Figure 1 It is a structural schematic diagram of a testing device provided in one embodiment of the present application.

[0035] Figure 2 It is a structural diagram of a server platform provided in one embodiment of the present application.

[0036] Figure 3 It is a flow chart of a server testing method provided in one embodiment of the present application.

[0037] Main component symbols

[0038] Test platform 100

[0039] Test equipment 10

[0040] Memory 11

[0041] Processor 12

[0042] Computer Programs 13

[0043] Firmware Update Module 131

[0044] Test Module 132

[0045] Sending module 133

[0046] Determination module 134

[0047] Acquisition module 135

[0048] Response module 136

[0049] Detection module 137

[0050] Save module 138

[0051] Server 20

[0052] Processing unit 21

[0053] Touch screen 30

[0054] External storage medium 40

[0055] Switch 50 DETAILED DESCRIPTION

[0056] The embodiments of the present application are described in detail below, and examples of the embodiments are shown in the accompanying drawings, wherein the same or similar reference numerals throughout represent the same or similar elements or elements having the same or similar functions. The embodiments described below with reference to the accompanying drawings are exemplary and are only used to explain the present application, and cannot be understood as limiting the present application.

[0057] In the following description, many specific details are set forth to facilitate a full understanding of the present invention. The embodiments described are only a part of the embodiments of the present invention, rather than all of the embodiments. Based on the embodiments of the present invention, all other embodiments obtained by ordinary technicians in this field without creative work are within the scope of protection of the present invention.

[0058] In the description of the present application, unless otherwise defined, all technical and scientific terms used herein have the same meaning as those commonly understood by those skilled in the art of the present invention. The terms used in the specification of the present invention herein are only for the purpose of describing specific embodiments and are not intended to limit the present invention.

[0059] In the embodiments of the present application, it should be noted that, unless otherwise clearly specified and limited, words such as "for example" are used to indicate examples, illustrations or descriptions. Any embodiment or design described as "for example" in the embodiments of the present application should not be interpreted as being more preferred or more advantageous than other embodiments or designs. Specifically, the use of words such as "for example" is intended to present related concepts in a concrete way. In the absence of conflict, the following embodiments and features in the embodiments may be combined with each other.

[0060] In the embodiments of the present application, it should be noted that, unless otherwise clearly specified and limited, the term "connection" should be understood in a broad sense, for example, it can be a fixed connection, a detachable connection, or an integral connection; it can be a mechanical connection, an electrical connection, or mutual communication; it can be a direct connection, or an indirect connection through an intermediate medium, it can be the internal connection of two elements or the interaction relationship between two elements. For ordinary technicians in this field, the specific meanings of the above terms in this application can be understood according to specific circumstances.

[0061] The disclosure below provides many different embodiments or examples to realize the different structures of the present application. In order to simplify the disclosure of the present application, the parts and settings of specific examples are described below. Of course, they are only examples, and the purpose is not to limit the present application. In addition, the present application can repeat reference numbers and / or reference letters in different examples, and this repetition is for the purpose of simplification and clarity, which itself does not indicate the relationship between the various embodiments and / or settings discussed.

[0062] In order to more clearly understand the above-mentioned purpose, features and advantages of the present invention, the present invention is described in detail below in conjunction with the accompanying drawings and specific embodiments. It should be noted that the embodiments of the present application and the features in the embodiments can be combined with each other without conflict.

[0063] This application takes an AI (Artificial Intelligence) server as a test object and describes the server testing method, testing platform, testing equipment and external storage medium provided in the embodiments of the present application.

[0064] In order to meet the collection and organization of various data in high-tech industries such as artificial intelligence, Internet of Things, cloud computing and big data, AI servers in various heterogeneous forms are widely used, which puts higher demands and challenges on the data processing capabilities of AI servers.

[0065] The CPU and GPU interconnection is a commonly used processing unit combination in AI servers. NVIDIA has launched three basic PCIe topologies for the interconnection between CPU and GPU, namely Balance Mode, Common Mode, and Cascade Mode. AI servers have different topologies for different application scenarios. The computing power of the Balance Mode in most application scenarios is similar to that of the Common Mode. It is impossible to make a better choice of topology model based on the application scenario alone. The P2P performance of the GPU in different modes is different, and the degree of CPU resource utilization is also different.

[0066] Obviously, different application scenarios have different actual requirements for processing units. Due to space and operation limitations, a server often does not support the simultaneous design of multiple processing unit architectures. Designing an automated testing method for AI servers to detect whether the performance of servers with different topology configurations meets the standards for different application scenarios is of great significance for optimizing the configuration of server computing resources.

[0067] See also Figure 1-Figure 3 In order to solve the above problems, the embodiment of the present application provides a server testing method, a testing platform 100, a testing device 10 and an external storage medium 40. The server testing method provided in the embodiment of the present application can be applied to the testing platform 100 including the testing device 10. The following is an introduction in combination with the application scenario provided in the embodiment of the present application.

[0068] See also Figure 1 , is a schematic diagram of the structure of a testing device 10 provided in one embodiment of the present application.

[0069] like Figure 1As shown, the test device 10 includes, but is not limited to, a memory 11, a processor 12, and a computer program 13 stored in the memory 11 and executable by the processor 12, for example, a test program for testing the AI ​​server.

[0070] Exemplarily, the computer program 13 may be divided into one or more modules / units, for example, a firmware update module 131, a test module 132, a sending module 133, a determination module 134, an acquisition module 135, a response module 136, a detection module 137, and a storage module 138. One or more modules / units are stored in the memory 11 and executed by the processor 12 to complete the present application. One or more modules / units may be a series of computer program instruction segments capable of completing specific functions, and the instruction segments are used to describe the execution process of the computer program 13 in the test device 10.

[0071] The hardware of the test device 10 includes, but is not limited to: a microprocessor, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), a digital signal processor (DSP), an embedded device, etc.

[0072] The test device 10 may be an embedded chip such as an STM32 single-chip microcomputer, a PIC single-chip microcomputer, an 8051 single-chip microcomputer, an AVR single-chip microcomputer, etc. The present application does not limit the type of the test device 10 .

[0073] The network where the test device 10 is located includes, but is not limited to: the Internet, a wide area network, a metropolitan area network, a local area network, a virtual private network (VPN), etc.

[0074] See also Figure 2 , is a schematic diagram of the structure of a test platform 100 provided in one embodiment of the present application.

[0075] like Figure 2As shown, the test platform 100 includes the test device 10. The test device 10 is communicatively connected to the server 20. For example, the test device 10 can be communicatively connected to the server 20 via a USB port. The server 20 can be an AI server, and the server 20 includes a plurality of processing units 21 and a plurality of Switches, and the plurality of processing units 21 and a plurality of Switches 50 are interconnected according to a topological structure, and the test device 10 is communicatively connected to the plurality of Switches 50. For example, the test device 10 can be communicatively connected to the plurality of Switches 50 via a UART port or an I2C bus interface. The plurality of processing units 21 can include a CPU and a GPU.

[0076] The firmware update module 131 is used to update the topology structure by updating the firmware of the multiple Switches 50 based on the target firmware upgrade package. The test module 132 is used to control the server 20 to execute the target test task corresponding to the updated topology structure and generate a test result.

[0077] In this embodiment, the test device 10 may be a single chip microcomputer STM32F407 supporting USB Host and USB Device functions. In other embodiments of the present application, other embedded chips may be used to replace the test device 10 according to actual needs.

[0078] When facing different application scenarios, the test platform 100 of this embodiment first updates the topology of the server 20 through the firmware update module 131 based on the firmware of the updated Switch 50, and then controls the server 20 to execute the target test task corresponding to the updated topology through the test module 132, generates the test results, and then evaluates the performance of the server 20 according to the test results. The above test platform 100 can perform automated testing on the server 20 for different application scenarios, realize comprehensive and accurate performance testing, so that the server 20 can have better performance, improve test efficiency, and save manpower.

[0079] In some embodiments of the present application, the sending module 133 is used to copy the test information to the server 20 before updating the firmware of the multiple Switches 50 based on the target firmware upgrade package, and the test information includes N types of topology structure information and N test tasks, each type of topology structure information in the N types of topology structure information corresponds to a test task in the N test tasks, wherein N is a positive integer greater than or equal to 1.

[0080] In some embodiments of the present application, the determination module 134 is used to determine a target firmware upgrade package from the N firmware upgrade packages according to the hierarchical order of the version numbers corresponding to each of the N firmware upgrade packages before updating the firmware of the multiple Switches 50 based on the target firmware upgrade package.

[0081] For example, N firmware upgrade packages include version numbers V1, V2, V3, ... n The corresponding firmware upgrade package, the above version numbers are in descending order of level: V1, V2, V3...V n .

[0082] In this embodiment, the higher the level of the version number, the newer the version of the firmware upgrade package corresponding to it. For example, the determination module 134 can determine that the firmware upgrade package corresponding to V1 is the target firmware upgrade package for the first time, and the firmware upgrade package corresponding to V2 is the target upgrade package next time, and so on.

[0083] In some embodiments of the present application, the determination module 134 is further used to determine whether each firmware upgrade package in the N firmware upgrade packages has been determined as a target firmware upgrade package after controlling the server 20 to execute the target test task once.

[0084] If at least one firmware upgrade package among the N firmware upgrade packages is not determined as the target firmware upgrade package, the determination module 134 is also used to determine the target firmware upgrade package from the at least one firmware upgrade package. The firmware update module 131 is also used to update the topology structure by updating the firmware of the multiple Switches 50 based on the currently determined target firmware upgrade package. The test module 132 is also used to control the server 20 to execute the target test task corresponding to the updated topology structure until the firmware of the multiple Switches 50 is updated based on each firmware upgrade package in the N firmware upgrade packages and the test task corresponding to the updated topology structure is executed, and the test is terminated.

[0085] In some embodiments of the present application, the acquisition module 135 is used to acquire the N types of topology information before copying the test information to the server 20. The response module 136 is used to create the test task corresponding to each type of topology information in the N types of topology information in response to a user input signal.

[0086] In some embodiments of the present application, the detection module 137 is used to detect whether the operating environment of the server 20 meets the test environment requirements before controlling the server 20 to execute the target test task corresponding to the updated topology structure.

[0087] For example, detecting whether the operating environment of the server 20 meets the test environment requirements may include, but is not limited to, detecting whether the software and applications installed on the server 20 are the same as or similar to the test environment.

[0088] In some embodiments of the present application, if the operating environment of the server 20 does not meet the test environment requirements, the sending module 133 is also used to copy a pre-stored environment configuration tool to the server 20 and install the environment configuration tool to the server 20 to perform the target test task. For example, the environment configuration tool may include test software such as CUDA toolkit.

[0089] For example, if the server 20 does not have the software or application required to execute the target test task, it means that the operating environment of the server 20 does not meet the test environment requirements.

[0090] In some embodiments of the present application, the saving module 138 is used to save the test result after the test result is generated, so as to evaluate the performance of the server 20 according to the test result.

[0091] For example, the test results include performance parameters related to the GPU and the CPU, including P2P data between GPUs, measured bandwidth of the GPU, measured bandwidth between the CPU and GPU, memory bandwidth data, etc.

[0092] In this embodiment, the test platform 100 further includes a touch screen 30, and the touch screen 30 is communicatively connected to the test device 10. The touch screen 30 is used to respond to user operations.

[0093] In the above embodiment, the user can input the corresponding test command through the touch screen 30 to generate an input signal and send it to the test device 10, which has the characteristics of convenient interaction, beautiful interface, sensitive response, precise control and accurate output. In addition, the touch screen 30 can also be used to visualize the test process, reduce the user's operation difficulty in an interactive way with a graphical interface, further improve the test efficiency, and save labor costs.

[0094] The embodiment of the present application further provides an external storage medium 40, which is connected to the test device 10. The test information, the test results, and the environment configuration tool are stored in the external storage medium 40. For example, the external storage medium 40 may include any entity or device capable of carrying computer program codes, a USB flash drive, a memory card, etc.

[0095] In the above embodiment, the external storage medium 40 pre-stores the relevant environment configuration tools for building the test environment, the test information, and the test results generated by executing the test task, which saves on-site debugging time and further improves the test efficiency.

[0096] In the above embodiment, the test device 10 can be communicated with the server 20 through the USB port, and then perform file transfer and system control functions between the test device 10 and the server 20, and can easily deploy automated testing of the server 20. It has strong applicability, small module size, no usage restrictions, reduces the difficulty of user training, improves testing efficiency, and saves labor costs and testing resources.

[0097] See also Figure 3 , is a flow chart of a server testing method provided in an embodiment of the present application. In the present application, according to different requirements, the order of each step in the flow chart can be adjusted according to actual requirements, and some steps can be omitted.

[0098] In this embodiment, the execution subject of the server testing method can be Figure 1 The test device 10 shown is used to test the server 20. This embodiment is described by taking the test device 10 and the server 20 as an example of being connected to each other through the USB port. The server 20 includes a plurality of processing units 21 and a plurality of Switches 50, and the plurality of processing units 21 and the plurality of Switches 50 are interconnected according to a topological structure. The test device 10 can be connected to the Switch 50 through a UART port or an I2C bus interface. The processing unit 21 can be a CPU or a GPU.

[0099] The server testing method comprises:

[0100] S100, obtaining N types of topological structure information.

[0101] Specifically, before starting the test, N types of interconnection forms between the multiple processing units 21 and the multiple Switches 50 of the server 20 to be tested in different application scenarios, that is, the above-mentioned N types of topology structure information, are obtained in advance.

[0102] S200 , creating the test task corresponding to each type of topology structure information in the N types of topology structure information in response to a user input signal.

[0103] Specifically, the user inputs corresponding test instructions through the touch screen 30 according to the N types of topological structure information obtained, and the touch screen 30 generates an input signal and sends it to the test device 10, and then the test device 10 responds to the user's input signal to create the test task corresponding to each of the N types of topological structure information.

[0104] S300, detecting whether the operating environment of the server meets the test environment requirements.

[0105] Specifically, the detecting whether the operating environment of the server meets the test environment requirement may include, but is not limited to, detecting whether the software and application programs installed on the server 20 are the same as or similar to the test environment.

[0106] For example, if the server 20 does not have the software or application required to execute the target test task, it means that the operating environment of the server 20 does not meet the test environment requirements.

[0107] In some embodiments, if the operating environment of the server 20 does not meet the test environment requirements, step S400 is executed to copy a pre-stored environment configuration tool to the server and install the environment configuration tool to the server.

[0108] For example, if the server 20 has software or applications required to execute the target test task, it indicates that the operating environment of the server 20 meets the test environment requirements.

[0109] In some embodiments, if the operating environment of the server 20 meets the test environment requirements, step S500 is executed to copy the test information to the server.

[0110] S400, copying a pre-stored environment configuration tool to the server and installing the environment configuration tool to the server.

[0111] For example, the environment configuration tool may include testing software such as the CUDA toolkit.

[0112] S500: Copy the test information to the server.

[0113] Specifically, the test information includes N types of topology structure information and N test tasks, each type of topology structure information in the N types of topology structure information corresponds to a test task in the N test tasks, wherein N is a positive integer greater than or equal to 1.

[0114] S600: Determine a target firmware upgrade package from the N firmware upgrade packages according to the level order of the version number corresponding to each of the N firmware upgrade packages.

[0115] For example, N firmware upgrade packages include version numbers V1, V2, V3, ... n The corresponding firmware upgrade package, the above version numbers are in descending order of level: V1, V2, V3...V n .

[0116] In this embodiment, the higher the level of the version number, the newer the version of the firmware upgrade package corresponding to it. The determination module 134 can determine that the firmware upgrade package corresponding to V1 is the target firmware upgrade package for the first time, and the next time (that is, the process executes to step S600 again), it can determine that the firmware upgrade package corresponding to V2 is the target upgrade package, and so on.

[0117] S700: Update the topology structure by updating the firmware of the multiple Switches based on a target firmware upgrade package.

[0118] Specifically, updating the firmware of the multiple Switch 50s based on the target firmware upgrade package includes: updating the switch settings and upstream and downstream attribute settings of the ports of the multiple Switch 50s to adjust the number of GPUs participating in the calculation, and adjusting the interconnection relationship between the GPU and the CPU through the multiple Switch 50s, thereby completing an update of the topology structure.

[0119] S800, controlling the server to execute a target test task corresponding to the updated topology structure, and generating a test result.

[0120] Specifically, the test device 10 controls the server 20 to call the test task corresponding to the updated topology structure, that is, the above-mentioned target test task, and then executes the target test task to generate a test result.

[0121] S900: Determine whether each firmware upgrade package in the N firmware upgrade packages has been determined as a target firmware upgrade package.

[0122] In some embodiments, if at least one firmware upgrade package among the N firmware upgrade packages has not been determined as the target firmware upgrade package, it indicates that there are still test tasks that have not been completed. The test device 10 needs to execute steps S600-S800 again until the firmware of the multiple Switches has been updated based on each firmware upgrade package in the N firmware upgrade packages, and the test tasks corresponding to the updated topology structure have been executed, thereby ending the test.

[0123] In some embodiments, if each of the N firmware upgrade packages has been determined as a target firmware upgrade package, it indicates that the test task has been completed, that is, all servers 20 of N topology structures have been tested, and the test is ended.

[0124] S1000, saving the test result to evaluate the performance of the server according to the test result.

[0125] For example, the test device 10 executes a save instruction to save the test result to the external storage medium 40, and at the same time, uses the touch screen 30 to visualize the test process and test result, so as to evaluate the performance of the server 20 according to the test result.

[0126] When facing different application scenarios, the server 20 testing method of this implementation first updates the topology of the server 20 by updating the firmware of Switch 50, then controls the server 20 to execute the target test task corresponding to the updated topology, and finally generates the test results, thereby evaluating the performance of the server 20 according to the test results. The above method can perform automated testing on the server 20 for different application scenarios, realize comprehensive and accurate performance testing, thereby making the server 20 have better performance, improving testing efficiency, and saving manpower.

[0127] In one embodiment, following the above description, Figure 1 In the description of the test device 10 in the example, the processor 12 may be a central processing unit (CPU), or other general-purpose processors, digital signal processors (DSP), application-specific integrated circuits (ASIC), field-programmable gate arrays (FPGA) or other programmable logic devices, discrete gates or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor. The processor 12 may also be any conventional processor, etc. The processor 12 is the computing core and control center of the test device 10, and uses various interfaces and lines to connect the various parts of the entire test device 10, and obtain the operating system of the test device 10 and various installed applications, program codes, etc.

[0128] The processor 12 obtains the operating system and various installed applications of the test device 10. The processor 12 obtains the application to implement the steps in the above-mentioned server test method embodiments, for example Figure 3 Steps shown.

[0129] The memory 11 can be used to store computer programs 13 and / or modules. The processor 12 implements various functions of the test device 10 by running or acquiring the computer programs 13 and / or modules stored in the memory 11, and calling the data stored in the memory 11. The memory 11 can mainly include a program storage area and a data storage area, wherein the program storage area can store an operating system, an application required for at least one function, etc.; the data storage area can store data created according to the use of the server 20, etc. In addition, the memory 11 can include a non-volatile memory, such as a hard disk, a memory, a plug-in hard disk, a smart memory card (Smart Media Card, SMC), a secure digital card (SecureDigital, SD), a flash card (Flash Card), at least one disk storage device, a flash memory device, or other non-volatile solid-state storage devices.

[0130] If the modules / units integrated in the test device 10 are implemented in the form of software functional units and sold or used as independent products, they can be stored in the external storage medium 40. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, and can also be completed by instructing the relevant hardware through the computer program 13. The computer program 13 can be stored in the external storage medium 40. When the computer program 13 is obtained by the processor 12, the steps of the above-mentioned various method embodiments can be implemented.

[0131] The computer program 13 includes computer program code, which may be in source code form, object code form, an accessible file, or some intermediate form.

[0132] In some embodiments, in combination Figure 1 As shown, the memory 11 in the test device 10 stores a plurality of instructions to implement a server testing method.

[0133] Specifically, the specific implementation method of the processor 12 for the above instructions can refer to Figure 3 The description of the relevant steps in the corresponding embodiments will not be repeated here.

[0134] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are only schematic, for example, the division of modules is only a logical function division, and there may be other division methods in actual implementation.

[0135] The modules described as separate components may or may not be physically separated, and the components shown as modules may or may not be physical units, that is, they may be located in one place or distributed on multiple network units. Some or all of the modules may be selected according to actual needs to achieve the purpose of the solution of this embodiment.

[0136] Each functional module in each embodiment of the present application can be integrated into one unit, or each unit can exist physically separately, or two or more units can be integrated into one unit. The above integrated unit can be implemented in the form of hardware or in the form of hardware plus software functional modules.

[0137] Therefore, no matter from which point of view, the embodiments should be regarded as illustrative and non-restrictive, and the scope of the present application is limited by the appended claims rather than the above description, so it is intended that all changes falling within the meaning and scope of the equivalent elements of the claims are included in the present application. Any attached figure mark in the claims should not be regarded as limiting the claims involved.

[0138] In addition, it is clear that the word "comprising" does not exclude other units or steps, and the singular does not exclude the plural. Multiple units or devices stated in this application can also be implemented by one unit or device through software or hardware. The words first, second, etc. are used to indicate names, and do not indicate any particular order.

[0139] Finally, it should be noted that the above embodiments are only used to illustrate the technical solution of the present application and are not intended to limit it. Although the present application has been described in detail with reference to the preferred embodiments, a person of ordinary skill in the art should understand that the technical solution of the present application may be modified or replaced by equivalents without departing from the spirit and scope of the technical solution of the present application.

Claims

1. A server testing method, applied to a testing platform, characterized in that: The test platform is in communication connection with a server, the server includes a plurality of processing units and a plurality of switches, the plurality of processing units and the plurality of switches are interconnected according to a topology structure, and the method includes: Updating the topology structure by updating the firmware of the multiple Switches based on the target firmware upgrade package; and The server is controlled to execute a target test task corresponding to the updated topology structure, and a test result is generated.

2. The server testing method according to claim 1, characterized in that: Before updating the firmware of the multiple Switches based on the target firmware upgrade package, the method further includes: Copy the test information to the server, the test information including N types of topology information and N test tasks, each type of topology information in the N types of topology information corresponds to a test task in the N test tasks, wherein N is a positive integer greater than or equal to 1.

3. The server testing method according to claim 2, characterized in that: Before updating the firmware of the multiple Switches based on the target firmware upgrade package, the method further includes: According to the level order of the version number corresponding to each firmware upgrade package in the N firmware upgrade packages, a target firmware upgrade package is determined from the N firmware upgrade packages.

4. The server testing method according to claim 3, characterized in that: After controlling the server to complete the target test task, the method further includes: Determining whether each firmware upgrade package in the N firmware upgrade packages has been determined as a target firmware upgrade package; If at least one firmware upgrade package among the N firmware upgrade packages is not determined as a target firmware upgrade package, determine a target firmware upgrade package from the at least one firmware upgrade package, and update the topology structure by updating the firmware of the multiple Switches based on the currently determined target firmware upgrade package; and The server is controlled to execute the target test task corresponding to the updated topology structure until the firmware of the multiple Switches is updated based on each firmware upgrade package in the N firmware upgrade packages, and the test task corresponding to the updated topology structure is executed, and the test is ended.

5. The server testing method according to claim 2, characterized in that: Before copying the test information to the server, the method further includes: Obtaining the N types of topological structure information; In response to a user input signal, the test task corresponding to each of the N types of topology structure information is created.

6. The server testing method according to claim 1, characterized in that: Before controlling the server to execute the target test task corresponding to the updated topology structure, the method further includes: Detecting whether the operating environment of the server meets the test environment requirements; If the operating environment of the server does not meet the test environment requirements, a pre-stored environment configuration tool is copied to the server and the environment configuration tool is installed on the server to execute the target test task.

7. The server testing method according to claim 1, characterized in that: After generating the test results, the method further includes: The test result is saved to evaluate the performance of the server according to the test result.

8. A test platform, characterized in that: The test platform comprises: A test device, wherein the test device is communicatively connected to a server, wherein the server includes a plurality of processing units and a plurality of switches, wherein the plurality of processing units and the plurality of switches are interconnected according to a topology structure, and the test device is communicatively connected to the plurality of switches; The test equipment includes: A firmware update module, configured to update the topology structure by updating the firmware of the multiple Switches based on a target firmware upgrade package; The test module is used to control the server to execute the target test task corresponding to the updated topology structure and generate a test result.

9. A testing device, characterized in that: The test equipment includes: A memory storing at least one instruction; A processor executes the at least one instruction to implement the server testing method according to any one of claims 1 to 7.

10. An external storage medium, characterized in that: The external storage medium stores test information, test results, and an environment configuration tool used in the server testing method according to any one of claims 1 to 7.