Component pressure testing method and device, electronic equipment and storage medium
By combining and performing multiple component stress tests of ARM servers in parallel, the resource competition problem in the prior art that cannot simulate multi-component collaborative work is solved, and the effect of efficiently detecting performance defects and avoiding server downtime is achieved.
Patent Information
- Application Number
- CN202511001266.2
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-07-21
- Publication Date
- 2025-08-19
- Estimated Expiration
- Not applicable · inactive patent
AI Technical Summary
The prior art cannot effectively simulate resource competition during the collaborative work of multiple components of ARM servers, resulting in the inability to detect internal performance defects in time and the low pressure testing efficiency.
By combining multiple components of the server, determine the component combination to perform stress testing tasks in parallel, record performance indicators, ensure that the load of each component is less than the limit load, and simulate resource sharing conflicts in which multiple components work together under real load.
Improve stress testing efficiency, promptly detect internal performance defects of ARM server, avoid server downtime caused by component overload, and save test time.
Smart Images

Figure CN120508489A_ABST
Abstract
Description
Technical Field
[0001] The present application relates to the field of server technology, and in particular to a component stress testing method, device, electronic device, and storage medium. Background Art
[0002] With the advancement of server technology, stress testing of server components such as processors, memory, hard drives, and graphics cards has become increasingly important. Stress testing methods vary for different server types. Advanced Reduced Instruction Set Computer Machine (ARM) servers utilize a highly integrated design, interconnecting heterogeneous computing units such as processors, graphics cards, and neural network processors (NPUs) via on-chip networks or buses, sharing memory, cache, input and output, and other resources.
[0003] In related technologies, stress testing of ARM servers typically involves performing isolated stress tests on each component within the server, such as the processor, memory, hard drive, and graphics card. For example, the processor is stress-tested using the stress testing tool stress-ng, or the memory is stress-tested using the stress testing tool Memtester. This approach not only consumes a significant amount of testing time and has low testing efficiency, but also only performs isolated stress tests on a single component, failing to simulate the resource competition that occurs when multiple components work together under real loads. This results in the ARM server being unable to promptly detect any performance defects within it. Summary of the Invention
[0004] The present application provides a component stress testing method, device, electronic device and storage medium to at least solve the problem in the related art that it is impossible to simulate resource competition when multiple components of a server work together under real load, resulting in the ARM server being unable to promptly discover performance defects existing within it.
[0005] The present application provides a component stress testing method, which includes: when it is detected that the working status of each component of multiple components of a server is normal, combining the multiple components to determine at least one component combination corresponding to the multiple components; respectively determining the stress testing task corresponding to each component in a first component combination, wherein the first component combination is any component combination of at least one component combination; after executing the stress testing task corresponding to each component in the first component combination in parallel, recording the performance indicators of each component in the first component combination, wherein, during the parallel execution of the stress testing tasks, the load of each component is less than the limit load corresponding to each component.
[0006] The present application also provides a component stress testing device, which includes: a combination module, which is used to combine multiple components when it is detected that the working status of each component in the multiple components of the server is normal, and determine at least one component combination corresponding to the multiple components; a processing module, which is used to respectively determine the stress testing task corresponding to each component in the first component combination, wherein the first component combination is any component combination in the at least one component combination; after executing the stress testing task corresponding to each component in the first component combination in parallel, recording the performance indicators of each component in the first component combination, wherein, in the process of executing the stress testing tasks in parallel, the load of each component is less than the limit load corresponding to each component.
[0007] The present application also provides an electronic device, comprising: a memory for storing a computer program; and a processor for implementing the steps of any of the above-mentioned component stress testing methods when executing the computer program.
[0008] The present application also provides a computer-readable storage medium, in which a computer program is stored. When the computer program is executed by a processor, the steps of any of the above-mentioned component stress testing methods are implemented.
[0009] The present application also provides a computer program product, including a computer program, which implements the steps of any of the above-mentioned component stress testing methods when executed by a processor.
[0010] Through this application, since multiple components can be stress-tested at the same time, it is possible to simulate resource sharing conflicts when multiple components work together under the real load of the server, and thus timely discover the performance defects existing in the ARM server. At the same time, stress testing multiple components can save testing time and improve stress testing efficiency. In addition, in the process of executing stress testing tasks in parallel, the load of each component is less than the limit load corresponding to each component. That is, when each component executes stress testing tasks in parallel, it can ensure that the load of each component runs within the safe threshold, avoiding overloading of each component and causing server downtime. BRIEF DESCRIPTION OF THE DRAWINGS
[0011] In order to more clearly illustrate the embodiments of the present application, the following is a brief introduction to the drawings required for use in the embodiments. Obviously, the drawings described below are only some embodiments of the present application. For ordinary technicians in this field, other drawings can be obtained based on these drawings without any creative work.
[0012] Figure 1 A schematic diagram of a flow chart of a component pressure testing method provided in an embodiment of the present application; Figure 2A flow chart of another component pressure testing method provided in an embodiment of the present application; Figure 3 A flowchart of another component pressure testing method provided in an embodiment of the present application; Figure 4 A schematic flow chart of another component pressure testing method provided in an embodiment of the present application; Figure 5 A schematic flow chart of another component pressure testing method provided in an embodiment of the present application; Figure 6 A structural block diagram of a component pressure testing device provided in an embodiment of the present application; Figure 7 A schematic diagram of the hardware structure of an electronic device provided in an embodiment of the present application. DETAILED DESCRIPTION
[0013] The following will be combined with the accompanying drawings in the embodiments of this application to clearly and completely describe the technical solutions in the embodiments of this application. Obviously, the embodiments described are only part of the embodiments of this application, not all of them. Based on the embodiments in this application, all other embodiments obtained by ordinary technicians in this field without making creative efforts are within the scope of protection of this application.
[0014] It should be noted that, in the description of this application, the terms "comprises," "includes," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or device comprising a series of elements includes not only those elements, but also other elements not explicitly listed, or elements inherent to such process, method, article, or device. The terms "first," "second," etc., in this application are used to distinguish similar objects, and are not used to describe a particular order or sequence.
[0015] In order to enable those skilled in the art to better understand the present application, the present application is further described in detail below with reference to the accompanying drawings and specific implementation methods.
[0016] The embodiments of this application are applied to scenarios where an ARM server is to be stress-tested. The ARM server utilizes a system-on-a-chip (SoC) integrated circuit hardware design. The ARM server includes components such as a processor (Central Processing Unit), memory, storage (e.g., hard drive), and a network interface card.
[0017] In related technologies, there are obvious limitations in stress testing the entire system of the ARM architecture. Specifically, various stress testing tools are used to stress test the various components of the ARM server. As shown in Table 1 below: Table 1
[0018] In addition to the limitations of the various stress testing tools listed in Table 1 for stress testing various components of ARM servers, other stress testing tools, such as ARM DS-5 Streamline and Linaro LAVA, can also be used to stress test various components of ARM servers. These methods are not detailed here. These methods not only consume significant testing time and have low stress testing efficiency, but also perform isolated stress tests on individual components, failing to simulate the resource sharing conflicts that occur when multiple components work together under real loads. This results in the inability to promptly identify performance defects within the ARM server. Existing testing tools all default to isolated testing.
[0019] In order to solve the above technical problems, an embodiment of the present application provides a component stress testing method, which includes: when it is detected that the working status of each component in the multiple components of the server is normal, combining the multiple components to determine at least one component combination corresponding to the multiple components; respectively determining the stress testing task corresponding to each component in the first component combination; after executing the stress testing task corresponding to each component in the first component combination in parallel, recording the performance indicators of each component in the first component combination. The embodiment of the present application can perform stress testing on multiple components at the same time, and can simulate the resource sharing conflict when multiple components work together under real load, resulting in the ARM server being unable to promptly discover the performance defects existing within it, and performing stress testing on multiple components at the same time, saving testing time and improving stress testing efficiency.
[0020] The present invention provides a component stress testing method performed by a component stress testing device. The component stress testing device can be a device with computing and communication capabilities. For example, the component stress testing device can be a cloud server, tower server, rack server, blade server, etc.
[0021] The embodiment of the present application provides a component pressure testing method, such as Figure 1 As shown, Figure 1 A schematic flow chart of a component pressure testing method provided in an embodiment of the present application, wherein the component pressure testing method includes the following steps: S101: When it is detected that the working status of each component of the server is normal, the multiple components are combined to determine at least one component combination corresponding to the multiple components.
[0022] The component may be any component included in the server. For example, the component may be the server's processor, memory, hard disk, or network card. Optionally, the multiple components may include other components without limitation.
[0023] Each component combination may include at least one component, such as a combination of memory and processor, or a combination of graphics card and processor.
[0024] In one example, a component stress testing device obtains the component type of each component among multiple components, and when it is detected that the working status of each component among the multiple components of the server is normal, determines a first component from the multiple components, and according to the component type of the first component, determines at least one component that matches the component type of the first component from the multiple components, and combines at least one component corresponding to the component type of the first component and the first component to obtain a component combination.
[0025] The component type may be a computing component type, a storage component type, a network component type, a power supply or a heat dissipation component type.
[0026] Exemplarily, taking the component type of the first component (for example, the first component is a processor) as a computing component type, based on the computing component type of the first component, at least one component matching the computing component type is determined from multiple components to include memory, and at least one component corresponding to the component type of the first component is combined with the first component to obtain a component combination, which includes two components: memory and processor.
[0027] S102, respectively determining the stress test task corresponding to each component in the first component combination.
[0028] The first component combination is any one of the at least one component combination.
[0029] Different components correspond to different stress testing tasks. For example, the stress testing task for the CPU can be a compute-intensive task or a calculation task; the stress testing task for the memory can be a memory bandwidth test task; and the stress testing task for the graphics card can be a graphics rendering task.
[0030] For example, taking the first component combination including memory and processor as an example, the component stress testing device determines that the stress testing task corresponding to the memory in the first component combination is a memory bandwidth testing task, and the stress testing task corresponding to the processor is a computing-intensive task.
[0031] Optionally, after determining the stress testing tasks corresponding to each component in the first component combination, the component stress testing device can execute the stress testing commands corresponding to the stress testing tasks corresponding to each component in the first component combination, and execute the stress testing tasks corresponding to each component in the first component combination in parallel.
[0032] The stress test command corresponds to the stress test task corresponding to each component in the first component combination. For example, the stress test command corresponding to the CPU stress test task and the memory stress test task is stress-ng --cpu 4 --vm 2 --vm-bytes 2G --timeout 60s. The stress test command corresponding to the storage stress test task and the network stress test task is fiodisk-test.fio&iperf3 -c <server>-t 30. The corresponding stress test commands for the graphics card stress test task and the processor stress test task are glmark2&stress-ng --cpu 4.
[0033] S103, after executing the stress test tasks corresponding to each component in the first component combination in parallel, record the performance indicators of each component in the first component combination.
[0034] In the process of executing stress test tasks in parallel, the load of each component is less than the limit load corresponding to each component.
[0035] The performance indicator of a component can be processor utilization of a processor, memory usage of a memory, disk latency of a hard disk, etc.
[0036] In one example, the component stress testing device executes the stress testing tasks corresponding to each component in the first component combination in parallel, and then records the performance indicators of each component in the first component combination.
[0037] Optionally, when the first component combination includes a processor, a memory, and a storage device, the component stress testing device generates a three-dimensional correlation diagram based on recording performance indicators of each component in the first component combination.
[0038] Among them, the three-dimensional correlation diagram shows a schematic diagram of how processor utilization, memory utilization, and storage device latency change over time.
[0039] As can be understood, the tester can determine the key bottleneck information of the server based on the three-dimensional correlation diagram. For example, when the processor utilization is equal to 75%, the memory utilization is greater than 90%, and the storage device latency rises to 800ms.
[0040] based on Figure 1 The method shown can combine multiple components when it is detected that the working status of each component in the multiple components of the server is normal, determine at least one component combination corresponding to the multiple components, and respectively determine the stress test tasks corresponding to each of the components in the first component combination; after executing the stress test tasks corresponding to each component in the first component combination in parallel, record the performance indicators of each component in the first component combination.
[0041] Since multiple components can be stress-tested simultaneously, resource-sharing conflicts when multiple components work together under real server load can be simulated, allowing for timely discovery of performance flaws within the ARM server. Simultaneously stress-testing multiple components can save testing time and improve stress-testing efficiency. Furthermore, during the parallel execution of stress-testing tasks, the load on each component is less than its corresponding limit. This ensures that each component's load remains within a safe threshold when executing stress-testing tasks in parallel, preventing overload of each component and server downtime.
[0042] After executing the stress test tasks corresponding to each component in the first component combination in parallel, and before recording the performance indicators of each component in the first component combination, the embodiment of the present application provides another component stress testing method, such as Figure 2 As shown, Figure 2 A flow chart of another component pressure testing method provided in an embodiment of the present application, the component pressure testing method includes the following steps: 201 , perform incremental stress testing on each of the multiple components, and detect the performance indicator value of each component in real time.
[0043] Exemplarily, the component stress testing apparatus executes a stress testing command corresponding to each of the multiple components, performs incremental stress testing on each of the multiple components, and detects the performance indicator value of each component in real time.
[0044] In one example, a component pressure testing device performs an incremental pressure test on each of a plurality of components according to a preset incremental gradient, and detects the performance index value of each component in real time.
[0045] The preset incremental gradient may be a preset proportion of the load of each component, for example, 20%.
[0046] In another example, when the component is a processor, the component stress testing device performs incremental stress testing on the processor from single thread to multi-thread, and detects the performance indicator value of the processor in real time.
[0047] The stress test command for a single thread is: stress-ng --cpu 1 --timeout 10s.
[0048] The stress test command corresponding to multi-threading is: stress-ng --cpu 4 --timeout 10s.
[0049] When the component is a memory, the component stress testing device performs an incremental stress test on the memory from a small storage block access mode to a large storage block access mode, and detects the performance index value of the memory in real time.
[0050] The stress testing command for the small memory block access mode is: sysbench memory --memory-block-size=1K --memory-total-size=1G run . The memory block size for each memory operation is 1 KB.
[0051] The stress testing command for the large memory block access mode is: sysbench memory --memory-block-size=1M --memory-total-size=10G run . The memory block size for each memory operation is 1M.
[0052] When the component is a storage device, the component stress testing device performs incremental stress testing on the processor from a sequential read-write mode to a random read-write mode, and detects the performance index value of the storage device in real time.
[0053] The corresponding stress test commands for increasing the stress test from sequential read / write mode to random read / write mode are as follows: [seq-read] rw=read bs=1M iodepth=1 [rand-read]rw=randread bs=4k iodepth=32. rw=read indicates the stress test type is sequential read, and rw=randread indicates the stress test type is random read.
[0054] 202. During the incremental stress test, when it is detected that there is an abnormality in the change trend of the performance indicator value corresponding to the target component, the performance indicator value corresponding to the target component at the time when the abnormality occurs is recorded as the extreme load of the target component.
[0055] The target component is any one of the multiple components.
[0056] The performance indicator value for the target component shows an abnormal trend, that is, a sudden increase or decrease in the value. For example, the disk input and output operations per second drop sharply from 20,000 to 5,000. Network latency is greater than 500ms. Database connection pool utilization is greater than 95%.
[0057] In some optional implementations, during the incremental stress test, if it is detected that the performance indicator value corresponding to the target component is greater than a limit threshold, it is determined that there is an abnormality in the change trend of the performance indicator value corresponding to the target component.
[0058] The limit threshold is the maximum value of the corresponding performance indicator value when the target component is in normal operating state.
[0059] In other optional implementations, during the incremental stress test, a performance indicator sequence corresponding to the performance indicator values of the target component at multiple moments is obtained in chronological order; through the cumulative control chart algorithm, it is detected whether the difference between any two performance indicators in the performance indicator sequence is greater than a preset threshold; if the difference between any two performance indicators in the performance indicator sequence is greater than the preset threshold, it is determined that there is an abnormality in the change trend of the performance indicator value corresponding to the target component.
[0060] The preset threshold value can be set according to actual needs and is not limited. For example, the preset threshold value corresponding to the number of input and output operations per second from the disk is 15k.
[0061] As you can see, by determining the load limit for each component, we can ensure that each component's load operates within a safe threshold, preventing overloads that could cause server downtime. Incremental stress testing can identify each component's performance inflection points (such as frequency reduction, packet loss, or a sudden drop in input and output times per second). It can also prevent instantaneous component overload, preventing server crashes or data loss caused by sudden full loads. It can also identify multi-component contention (such as high CPU load causing increased storage latency).
[0062] In executing the above Figure 1 and Figure 2 Before the method, the embodiment of the present application provides another component pressure testing method, such as Figure 3 As shown, Figure 3 A flowchart of another component pressure testing method provided in an embodiment of the present application is provided. The component pressure testing method includes the following steps: S301, detecting whether multiple cores on the processor are online.
[0063] In one example, a detection instruction for detecting whether multiple cores on a processor are online is: cat / sys / devices / system / cpu / cpu* / online.
[0064] S302: If it is detected that multiple cores are online, it is detected whether the actual operating frequency of the processor at the current moment matches the operating mode of the processor.
[0065] The processor's operating mode is also called the CPU power consumption and frequency adjustment mode, or the Governor policy.
[0066] In one example, a detection instruction for detecting whether the actual operating frequency of the processor at a current moment matches the operating mode of the processor is: cat / sys / devices / system / cpu / cpu* / cpufreq / scaling_cur_freq.
[0067] As will be appreciated, the processor's operating mode specifies the processor's ideal operating frequency. By comparing the ideal operating frequency with the actual operating frequency, it can be determined whether the current actual operating frequency of the processor matches the processor's operating mode. If the ideal operating frequency and the actual operating frequency are consistent, then the current actual operating frequency of the processor matches the processor's operating mode. If the ideal operating frequency and the actual operating frequency are inconsistent, then the current actual operating frequency of the processor does not match the processor's operating mode.
[0068] S303: If it is detected that the actual operating frequency matches the operating mode of the processor, then detecting whether the processor supports a preset verification instruction set corresponding to a preset architecture.
[0069] The preset architecture is the ARM architecture, and the preset verification instruction set may be the Neon instruction set.
[0070] In one example, a detection instruction for detecting whether the processor supports a preset verification instruction set corresponding to a preset architecture is: grep Features / proc / cpuinfo | grep neon S304.
[0071] S304: If it is detected that the processor supports the preset verification instruction set, it is determined that the working state of the processor is normal.
[0072] It can be understood that by detecting the working status of the processor, stress testing conditions are provided for subsequent stress testing.
[0073] In one example, a component stress testing device detects the working status of a processor to obtain the number of physical cores, maximum frequency, and average load of the processor; and determines stress test parameters for stress testing the processor based on the number of physical cores, maximum frequency, and average load.
[0074] Specifically, stress testing includes multiple stress test levels. Stress test parameters include the number of threads to stress test the processor, the maximum processor load percentage, and the limit frequency.
[0075] Among them, the number of threads = the number of physical cores × (1 + gradient coefficient × pressure level).
[0076] Maximum processor load percentage = 80% + (gradient coefficient × pressure level × 20%).
[0077] Limit frequency = maximum frequency × (1-gradient coefficient × pressure level × 0.2).
[0078] It is understandable that by detecting the working status of the processor and recording the benchmark performance index value of the processor before the test, it is convenient to reasonably set the stress test parameters (such as the number of threads and load intensity) and evaluate the performance change of the processor.
[0079] Further, if Figure 4 As shown, Figure 4 A schematic flow chart of another component pressure testing method provided in an embodiment of the present application, wherein the component pressure testing method includes the following steps: S401, detecting whether the memory capacity displayed by the memory is consistent with the physical memory capacity.
[0080] Understandably, checking whether the memory capacity displayed by the memory is consistent with the physical memory capacity can determine whether the memory is damaged or whether the server is compatible with the memory.
[0081] S402: If it is detected that the memory capacity displayed by the memory is consistent with the physical memory capacity, then it is detected whether the number of memory error counts within a preset time period is less than a first threshold.
[0082] The preset time period and the first threshold can be set according to actual needs.
[0083] It can be understood that detecting the number of memory error counts within a preset time period can determine whether there is a bad block in the memory.
[0084] S403: If it is detected that the error count is less than the first threshold, detect whether the bandwidth utilization of the memory is greater than a second threshold.
[0085] The command for testing memory bandwidth utilization is sysbench memory --memory-block-size=1K --memory-total-size=10G run.
[0086] S404: If the bandwidth utilization is greater than the second threshold, it is determined that the working state of the memory is normal.
[0087] It is understandable that unoptimized memcpy can lead to insufficient bandwidth utilization on ARM servers. Therefore, it is necessary to detect memory bandwidth utilization to provide sufficient bandwidth for subsequent stress testing.
[0088] Optionally, the component stress test device can also detect the working status of the storage device. The specific detection instructions can be as follows: Command to check the SMART status of the storage device: smartctl -a / dev / nvme0n1.
[0089] The command for checking the file system errors of the storage device is: fsck / dev / mmcblk0p2.
[0090] Instructions for verifying the read and write consistency of storage devices: fio --name=test --filename= / mnt / testfile --rw=randrw --bs=4k --verify=crc32c.
[0091] Optionally, the component stress test device can also test the working status of the network card. The specific test instructions can be as follows: Command to check the network card status: ethtool eth0.
[0092] Verify the protocol stack of the network card (local loopback test) with the command: iperf3 -s & iperf3 -c 127.0.0.1 -t 10.
[0093] To check the external packet loss rate of the network card, run the command: ping -c 100 192.168.1.1 | grep "packetloss".
[0094] Optionally, the component stress test device can also detect the temperature of the processor or graphics card. The detection instruction is: cat / sys / class / thermal / thermal_zone* / temp.
[0095] The component stress test device can also detect the power consumption of the server. The detection command is: cat / sys / class / power_supply / battery / current_now.
[0096] The component stress test device can also trigger a temperature rise test. The test command is: stress-ng --cpu 4 --timeout 60s&monitor_temp.sh.
[0097] Furthermore, after executing the stress test tasks corresponding to each component in the first component combination in parallel and recording the performance indicators of each component in the first component combination, as shown in FIG. Figure 5 As shown, Figure 5 A schematic flow chart of another component pressure testing method provided in an embodiment of the present application, wherein the component pressure testing method includes the following steps: S501: When the load of each component is controlled to be an extreme load, the stress tasks corresponding to each component are executed in parallel on multiple components within a target time period to perform stress testing on each of the multiple components, and at least one operating status indicator value of the server is detected during the stress testing process.
[0098] The at least one operating status indicator value may be the temperature or power consumption of the server.
[0099] The target time period can be set according to actual needs. For example, the target time period can be 24 hours.
[0100] The stress task is related to the component type. For example, a stress task might maintain a high load until temperature protection takes effect. The corresponding stress test command for this stress task is: while true; do stress-ng --cpu 8; done . Another example is a memory exhaustion test task that allocates 99% of memory and observes the behavior of an out-of-memory (OOM) server. The corresponding stress test command for this stress task is: stress-ng --vm-bytes $(free -m | awk ' / Mem: / {print $2*0.99}')M --vm 1 .
[0101] S502: If any operating status indicator value is detected to be greater than the corresponding preset status indicator value during the stress test, it is determined that the server has a downtime risk.
[0102] The preset status indicator value can be set according to actual needs. For example, the preset status indicator value can be the maximum safe temperature value or the maximum safe power consumption value of the server.
[0103] based on Figure 5 The method shown can perform stress testing on all components simultaneously under extreme load, verifying the stability of multiple components included in the server under long-term high load, and further verifying the stability of the server.
[0104] Through the description of the above implementation methods, those skilled in the art can clearly understand that the method according to the above embodiment can be implemented by means of software plus the necessary general hardware platform, and of course it can also be implemented by hardware, but in many cases the former is a better implementation method.
[0105] The embodiment of the present application also provides a component pressure testing device, such as Figure 6 As shown, Figure 6 This is a structural block diagram of a component pressure testing device provided in an embodiment of the present application; the component pressure testing device includes: A combining module 601 is configured to combine the multiple components and determine at least one component combination corresponding to the multiple components when it is detected that the working status of each component of the server is normal; Processing module 602 is used to respectively determine the stress test task corresponding to each component in the first component combination, wherein the first component combination is any component combination of at least one component combination; after executing the stress test task corresponding to each component in the first component combination in parallel, record the performance indicators of each component in the first component combination, wherein, during the parallel execution of the stress test tasks, the load of each component is less than the limit load corresponding to each component.
[0106] In some optional embodiments, after executing the stress test tasks corresponding to each component in the first component combination in parallel, and before recording the performance indicators of each component in the first component combination, the processing module 602 is also used to perform incremental stress testing on each component in the multiple components, and detect the performance indicator value of each component in real time; during the incremental stress test, when it is detected that there is an abnormality in the changing trend of the performance indicator value corresponding to the target component, the performance indicator value corresponding to the target component at the moment the abnormality occurs is recorded as the extreme load of the target component, wherein the target component is any component among the multiple components.
[0107] In some optional embodiments, after executing the stress test tasks corresponding to each component in the first component combination in parallel and recording the performance indicators of each component in the first component combination, the processing module 602 is also used to execute the stress tasks corresponding to each component in parallel on multiple components within a target time period when the load of each component is controlled to be an extreme load, so as to perform stress testing on each component in the multiple components and detect at least one operating status indicator value of the server during the stress testing process; if any operating status indicator value is detected to be greater than the corresponding preset status indicator value during the stress testing process, it is determined that the server is at risk of downtime.
[0108] In some optional embodiments, the multiple components include a processor, memory, and storage device of a server.
[0109] In some optional embodiments, the processing module 602 is specifically used to obtain a performance indicator sequence corresponding to the performance indicator values of the target component at multiple moments in chronological order during the incremental stress test; detect whether the difference between any two performance indicators in the performance indicator sequence is greater than a preset threshold through a cumulative control chart algorithm; if the difference between any two performance indicators in the performance indicator sequence is greater than the preset threshold, it is determined that there is an abnormality in the change trend of the performance indicator value corresponding to the target component.
[0110] In some optional embodiments, the multiple components include a processor of the server; the processing module 602 is also used to detect whether multiple cores on the processor are all online; if it is detected that multiple cores are all online, then it is detected whether the actual operating frequency of the processor at the current moment matches the operating mode of the processor; if it is detected that the actual operating frequency matches the operating mode of the processor, then it is detected whether the processor supports a preset verification instruction set corresponding to the preset architecture; if it is detected that the processor supports the preset verification instruction set, it is determined that the operating status of the processor is normal.
[0111] In some optional embodiments, the multiple components include the memory of the server; the processing module 602 is also used to detect whether the memory capacity displayed by the memory is consistent with the physical memory capacity; if it is detected that the memory capacity displayed by the memory is consistent with the physical memory capacity, then detect whether the error count number of the memory within a preset time period is less than a first threshold; if it is detected that the error count number is less than the first threshold, then detect whether the bandwidth utilization of the memory is greater than a second threshold; if the bandwidth utilization is greater than the second threshold, determine that the working status of the memory is normal.
[0112] For the description of the features in the embodiment corresponding to the component pressure testing device, please refer to the relevant description of the embodiment corresponding to the component pressure testing method, and will not be repeated here.
[0113] The embodiment of the present application also provides an electronic device, such as Figure 7 As shown, Figure 7 The hardware structure diagram of an electronic device provided in an embodiment of the present application is shown. The electronic device includes a processor 10 and a memory 20, wherein the memory 20 stores a computer program, and the processor 10 is configured to run the computer program to perform the steps of any of the above-mentioned component stress testing method embodiments.
[0114] An embodiment of the present application further provides a computer-readable storage medium, in which a computer program is stored, wherein the computer program is configured to execute the steps of any of the above-mentioned component stress testing method embodiments when run.
[0115] In an exemplary embodiment, the computer-readable storage medium may include, but is not limited to, various media that can store computer programs, such as a USB flash drive, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk, or an optical disk.
[0116] An embodiment of the present application further provides a computer program product, which includes a computer program. When the computer program is executed by a processor, the steps in any of the above-mentioned component stress testing method embodiments are implemented.
[0117] An embodiment of the present application also provides another computer program product, including a non-volatile computer-readable storage medium, which stores a computer program. When the computer program is executed by a processor, it implements the steps in any of the above-mentioned component stress testing method embodiments.
[0118] Professionals may further appreciate that the units and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the above description has generally described the components and steps of each example according to their functions. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professionals and technicians may use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0119] The above is a detailed introduction to a component pressure testing method, device, electronic device and storage medium provided by the present application. This article uses specific examples to illustrate the principles and implementation methods of the present application. The description of the above embodiments is only used to help understand the method of the present application and its core idea. It should be pointed out that for ordinary technicians in this technical field, without departing from the principles of the present application, several improvements and modifications can be made to the present application, and these improvements and modifications also fall within the scope of protection of the claims of the present application.< / server>
Claims
1. A component pressure testing method, characterized in that: The method comprises: When it is detected that the working status of each of the multiple components of the server is normal, the multiple components are combined to determine at least one component combination corresponding to the multiple components; Determine respectively the stress test task corresponding to each component in the first component combination, wherein the first component combination is any one component combination in at least one component combination; After executing the stress test tasks corresponding to each component in the first component combination in parallel, the performance indicators of each component in the first component combination are recorded, wherein, during the parallel execution of the stress test tasks, the load of each component is less than the limit load corresponding to each component.
2. The method according to claim 1, characterized in that After executing the stress test tasks corresponding to each component in the first component combination in parallel, and before recording the performance indicators of each component in the first component combination, the method further includes: Performing incremental stress testing on each of the plurality of components, and detecting the performance index value of each component in real time; During the incremental stress test, when an abnormality is detected in the changing trend of the performance indicator value corresponding to the target component, the performance indicator value corresponding to the target component at the moment the abnormality occurs is recorded as the extreme load of the target component, wherein the target component is any one of the multiple components.
3. The method according to claim 2, characterized in that After executing the stress test tasks corresponding to each component in the first component combination in parallel and recording the performance indicators of each component in the first component combination, the method further includes: When the load of each component is controlled to be the extreme load, a stress task corresponding to each component is executed in parallel on the plurality of components within a target time period to perform a stress test on each of the plurality of components, and at least one operating status indicator value of the server is detected during the stress test; If it is detected during the stress test that any of the operating status indicator values is greater than the corresponding preset status indicator value, it is determined that the server is at risk of downtime.
4. The method according to any one of claims 1 to 3, characterized in that A number of the components include the server's processor, memory, and storage devices.
5. The method according to claim 3, characterized in that During the incremental stress test, when it is detected that there is an abnormality in the change trend of the performance indicator value corresponding to the target component, the performance indicator value corresponding to the target component at the time when the abnormality occurs is recorded as the limit load of the target component, including: During the incremental stress test, a performance indicator sequence corresponding to the performance indicator values of the target component at multiple moments is obtained in chronological order; Using a cumulative control chart algorithm, detecting whether the difference between any two performance indicators in the performance indicator sequence is greater than a preset threshold; If the difference between any two performance indicators in the performance indicator sequence is greater than the preset threshold, it is determined that there is an abnormality in the change trend of the performance indicator value corresponding to the target component.
6. The method according to claim 4, characterized in that The plurality of components include a processor of the server; the method further comprising: Detecting whether multiple cores on the processor are all online; If it is detected that the plurality of cores are online, detecting whether the actual operating frequency of the processor at the current moment matches the operating mode of the processor; If it is detected that the actual operating frequency matches the operating mode of the processor, detecting whether the processor supports a preset verification instruction set corresponding to a preset architecture; If it is detected that the processor supports the preset verification instruction set, it is determined that the working status of the processor is normal.
7. The method according to claim 1, characterized in that The plurality of components include a memory of the server; the method further comprising: Checking whether the memory capacity displayed by the memory is consistent with the physical memory capacity; If it is detected that the memory capacity displayed by the memory is consistent with the physical memory capacity, detecting whether the number of error counts of the memory within a preset time period is less than a first threshold; If it is detected that the error count is less than the first threshold, detecting whether the bandwidth utilization of the memory is greater than a second threshold; If the bandwidth utilization is greater than a second threshold, it is determined that the working state of the memory is normal.
8. A component pressure testing device, characterized in that: The component pressure testing device comprises: a combining module, configured to combine the multiple components of the server when it is detected that the working status of each of the multiple components is normal, and determine at least one component combination corresponding to the multiple components; A processing module is used to respectively determine the stress test task corresponding to each component in the first component combination, wherein the first component combination is any component combination of at least one component combination; after executing the stress test task corresponding to each component in the first component combination in parallel, record the performance indicators of each component in the first component combination, wherein, during the process of executing the stress test tasks in parallel, the load of each component is less than the limit load corresponding to each component.
9. An electronic device, characterized in that: include: Memory for storing computer programs; A processor, configured to implement the steps of the component pressure testing method according to any one of claims 1 to 7 when executing the computer program.
10. A computer-readable storage medium, characterized in that The computer-readable storage medium stores a computer program, wherein the computer program, when executed by a processor, implements the steps of the component stress testing method according to any one of claims 1 to 7.
Citation Information
Patent Citations
Server pressure testing method, system and device and computer readable storage medium
CN115562926A
Server part testing method and device, electronic equipment and storage medium
CN116302736A