A server memory function testing method, system, device and storage medium
The physical isolation of server memory is achieved through BMC remote out-of-band commands, which solves the problems of low testing efficiency and high cost caused by manual plug-in and in-band disable in the prior art, and realizes efficient and low-cost memory function testing.
Patent Information
- Application Number
- CN202211019758.0
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2022-08-24
- Publication Date
- 2025-08-29
- Estimated Expiration
- 2042-08-24
AI Technical Summary
In the prior art, server memory function testing requires manual memory plugging and unplugging or in-band disable, resulting in wasted time and labor, and physical isolation and batch operations cannot be achieved.
Send remote out-of-band commands through BMC to view the memory presence bit information, query the register location and value, disable memory according to test requirements, realize physical isolation, and perform functional tests.
It realizes memory function testing without power outage and manual plugging, saving labor and material costs, improving testing efficiency, reducing material damage, and supporting remote batch modifications.
Smart Images

Figure CN115470054B_ABST
Abstract
Description
Technical Field
[0001] The present invention relates to the field of computer technology, and more particularly to a server memory function testing method, system, device and storage medium. Background Art
[0002] A server is a type of computer that runs faster, handles higher loads, and is more expensive than ordinary computers. Servers provide computing or application services to other clients (such as PCs, smartphones, ATMs, and even large equipment like train systems) on a network. Servers feature high-speed CPU computing power, long-term reliable operation, strong I / O external data throughput, and excellent scalability. As server application requirements grow, memory support expands, and performance improves, requirements for server memory insertion methods vary. As CPUs and motherboards from different manufacturers support an increasing number of memory modules and become increasingly complex, insertion methods naturally expand. Consequently, manufacturers offer fixed memory insertion methods based on optimal performance and usage scenarios, and do not support unsupported methods. Memory insertion methods can be provided by the vendor. Different memory insertion methods correspond to different operating modes and performance requirements. Therefore, test engineers must test all supported memory insertion methods to ensure that the server operates properly and meets performance requirements. They must also test unsupported methods to identify the server's memory alarm mechanisms. Because there are many server memory combinations and plugging and unplugging memory is a lot of work and can easily damage the memory, this puts tremendous pressure on memory plug-in testing.
[0003] Currently, there are two main approaches to performing functional testing for different server memory insertion methods. One involves manually powering off the server, performing memory insertion and removal tests, and performing the relevant functional tests. This approach is extremely time-consuming and labor-intensive. The other approach involves disabling the memory in-band before performing the test. However, in-band disabling can only be performed on-site, lacks physical isolation, and can only be performed on a single server, not on a batch basis. Summary of the Invention
[0004] In response to the above problems, the purpose of the present invention is to provide a server memory function testing method, system, device and storage medium, which realize automatic memory function testing of the server and save manpower and material costs.
[0005] To achieve the above-mentioned purpose, the present invention is implemented through the following technical solutions: A server memory function testing method, comprising:
[0006] The BMC sends a remote out-of-band command to check the current server memory status.
[0007] Query the corresponding register location and value in the server memory;
[0008] Determine the physical isolation information of memory based on test requirements;
[0009] Based on the physical isolation information of the memory, a remote out-of-band command is sent to modify the value of the corresponding register to disable the corresponding memory;
[0010] Perform corresponding functional tests according to test requirements.
[0011] Furthermore, the corresponding functional test is performed according to the test requirements, including:
[0012] After disabling the corresponding memory, if the current server's memory operation mode meets the system requirements, start the preset test tool to perform memory information viewing test, memory function test, and memory performance test.
[0013] Furthermore, the corresponding functional test is performed according to the test requirements, including:
[0014] If the memory operation mode needs to be tested, determine the appropriate memory operation mode based on the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test.
[0015] Furthermore, the corresponding functional test is performed according to the test requirements, including:
[0016] After disabling the corresponding memory, check whether there is an abnormal memory insertion method alarm on the BMC web page to determine whether the current memory insertion method is abnormal and perform a memory RAS test.
[0017] Furthermore, the memory operation mode includes a mirror mode and a standby mode.
[0018] Furthermore, the modifying of the current server to the corresponding memory operation mode is specifically: modifying the BIOS option to modify the current server to the corresponding memory operation mode by sending a remote out-of-band command.
[0019] Accordingly, the present invention also discloses a server memory function testing system, comprising:
[0020] The viewing unit is used to control the BMC to send remote out-of-band commands to view the current server memory information;
[0021] A query unit, used to query the corresponding register location and value in the server memory;
[0022] A requirement identification unit, used to determine the physical isolation information of the memory according to the test requirements;
[0023] A disabling unit, configured to send a remote out-of-band command to modify the value of a corresponding register based on the physical isolation information of the memory, so as to disable the corresponding memory;
[0024] The test unit is used to perform corresponding functional tests according to the test requirements.
[0025] Furthermore, the testing unit includes:
[0026] The first execution module is configured to, after disabling the corresponding memory, start a preset test tool to perform a memory information viewing test, a memory function test, and a memory performance test if the memory operation mode of the current server meets the system requirements;
[0027] The second execution module is used to determine a memory operation mode that meets the requirements according to the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test;
[0028] The third execution module is used to determine whether the current memory insertion method is in an abnormal state by checking whether there is a memory insertion method abnormal alarm on the BMC web terminal after disabling the corresponding memory, and perform a memory RAS test.
[0029] Accordingly, the present invention discloses a server memory function testing device, comprising:
[0030] A memory, used for storing a server memory function test program;
[0031] A processor is used to implement the steps of the server memory function testing method as described in any one of the above items when executing the server memory function testing program.
[0032] Accordingly, the present invention discloses a readable storage medium, on which a server memory function test program is stored. When the server memory function test program is executed by a processor, the steps of the server memory function test method as described in any one of the above items are implemented.
[0033] Compared to existing technologies, the present invention offers the following advantages: It discloses a server memory function testing method, system, device, and storage medium capable of achieving physical isolation of memory based on remote commands. This physical isolation of different memory types allows for different tests to be performed on a single machine without plugging or unplugging memory, significantly reducing testing labor and costs, improving testing efficiency, and minimizing material damage. Furthermore, the present invention implements register value modification using out-of-band commands, independent of BIOS options and requiring no on-site support, thus reducing labor investment and enabling remote batch modification.
[0034] It can be seen that compared with the prior art, the present invention has outstanding substantial features and significant progress, and the beneficial effects of its implementation are also obvious. BRIEF DESCRIPTION OF THE DRAWINGS
[0035] In order to more clearly illustrate the embodiments of the present invention or the technical solutions in the prior art, the following briefly introduces the drawings required for use in the embodiments or the description of the prior art. Obviously, the drawings described below are merely embodiments of the present invention. For ordinary technicians in this field, other drawings can be obtained based on the provided drawings without paying any creative work.
[0036] Figure 1 It is a method flow chart of a specific embodiment of the present invention.
[0037] Figure 2 It is a system structure diagram of a specific implementation method of the present invention.
[0038] In the figure, 1. View unit; 2. Query unit; 3. Requirement identification unit; 4. Disabling unit; 5. Testing unit; 6. First execution module; 7. Second execution module; 8. Third execution module. DETAILED DESCRIPTION
[0039] The core of this invention is to provide a method for testing server memory functionality. Prior art methods for performing functional tests based on different server memory insertion methods primarily employ two approaches. One involves manually powering off the server, then performing memory insertion and removal tests and related functional tests. This approach significantly wastes time and manpower. The other involves disabling the memory in-band before performing the test. However, this in-band approach can only be performed on-site and lacks physical isolation, requiring only a single unit for operation and not for batch testing.
[0040] The server memory function test method provided by the present invention is as follows: first, the BMC sends a remote out-of-band command to check the in-place information of the current server memory, and queries the register position and value corresponding to the server memory. Then, the physical isolation information of the memory is determined according to the test requirements. At this time, based on the physical isolation information of the memory, a remote out-of-band command is sent to modify the value of the corresponding register to disable the corresponding memory. Finally, the corresponding functional test is performed according to the test requirements. It can be seen that the present invention provides a method for implementing server memory function testing by physically isolating the memory using remote commands, which realizes the memory function test of the server without powering off or manually plugging and unplugging, saving labor costs and material costs.
[0041] In order to enable those skilled in the art to better understand the present invention, the present invention is further described in detail below with reference to the accompanying drawings and specific embodiments. Obviously, the embodiments described are only some embodiments of the present invention, not all embodiments. Based on the embodiments of the present invention, all other embodiments obtained by those skilled in the art without creative work are within the scope of protection of the present invention.
[0042] Example 1:
[0043] like Figure 1 As shown, this embodiment provides a server memory function testing method, including the following steps:
[0044] S1: The BMC sends a remote out-of-band command to check the memory status of the current server.
[0045] As an example, use the following command to view the current server memory information:
[0046] ipmitool–I Lanplus–U admin–P admin–H xx:xx:xx:xx memlist info
[0047] ipmitool–I Lanplus–U admin–P admin–H xx:xx:xx:xx CPU0_CH0_D1disabled
[0048] It should be pointed out that the above commands are examples, not standard commands. They are different for different platform projects and need to be executed according to actual conditions.
[0049] S2: Query the corresponding register location and value in the server memory.
[0050] S3: Determine the physical isolation information of the memory based on the test requirements.
[0051] S4: According to the physical isolation information of the memory, a remote out-of-band command is sent to modify the value of the corresponding register to disable the corresponding memory.
[0052] Through the above steps, the BMC can be used to obtain the server's register value through remote commands to determine the memory's in-place status, and the register value can be modified through remote out-of-band commands to achieve physical isolation of the memory.
[0053] Specifically, the control of the slots on the server is controlled by the registers of the corresponding CPU, which are clearly defined in the BIOS code. The BIOS will pass the register information to the BMC, which will use commands to remotely control and modify the register values to achieve physical isolation of memory at the code level.
[0054] S5: Perform corresponding functional tests according to test requirements.
[0055] As an example, if there are currently two CPUs and one CPU has three memory sticks, the location information is:
[0056] CPUO_CH0_DIMM0,CPUO_CH0_DIMM1,CPUO_CH1_DIMM0
[0057] CPU1_CH0_DIMM0,CPU1_CH0_DIMM1,CPU1_CH1_DIMM0
[0058] At this point, use remote commands to disable the corresponding memory and perform corresponding functional tests based on the following three different requirements.
[0059] 1. After disabling the corresponding memory, if the current server's memory operation mode meets the system requirements, start the preset test tool to perform memory information viewing test, memory function test, and memory performance test.
[0060] For example, if disabling D1 and CH1 reveals another memory insertion method that meets the requirements, you can then perform information viewing tests, functional tests, and performance tests based on the current memory combination.
[0061] 2. If you need to test the memory operation mode, determine the appropriate memory operation mode based on the current memory insertion method, change the current server to the corresponding memory operation mode, and start the test. Memory operation modes include mirror mode and spare mode.
[0062] In other words, in the current situation, you can modify the memory mode after disabling specific memory (changing BIOS options can also be done through remote commands) to test mirror and spare modes. For example, if after disabling D1, the current system has another memory insertion method that meets the requirements and is compatible with mirror mode, you can modify the options out of band as needed for testing.
[0063] 3. After disabling the corresponding memory, check whether there is an abnormal memory insertion method alarm on the BMC web terminal to determine whether the current memory insertion method is abnormal and perform a memory RAS test.
[0064] For example, if the system has two memory sticks in a channel, disabling D0 is an incorrect insertion method. In this case, the server cannot be used, the BMC web client will issue an alarm, and an error message will appear when the server is started.
[0065] This embodiment provides a server memory function testing method that implements physical isolation of memory using remote commands. This physical isolation of different memory types allows for different tests. This testing method allows a single machine to perform different tests without having to plug in or unplug memory, significantly reducing testing workload and costs, improving testing efficiency, and minimizing material damage. Furthermore, this method enables register value modification using out-of-band commands, independent of BIOS options and requiring no on-site support. This reduces labor and enables remote batch modification.
[0066] Example 2:
[0067] Based on Example 1, Figure 2 As shown, the present invention also discloses a server memory function test system, including: a viewing unit 1, a query unit 2, a demand identification unit 3, a disabling unit 4 and a testing unit 5.
[0068] The viewing unit 1 is used to control the BMC to send a remote out-of-band command to view the information about the current server memory.
[0069] Query unit 2 is used to query the register position and value corresponding to the server memory.
[0070] The requirement identification unit 3 is used to determine the physical isolation information of the memory according to the test requirement.
[0071] The disabling unit 4 is configured to send a remote out-of-band command to modify the value of a corresponding register according to the physical isolation information of the memory, so as to disable the corresponding memory.
[0072] The testing unit 5 is used to perform corresponding functional tests according to the testing requirements.
[0073] The testing unit 5 is specifically configured to disable corresponding memory using remote commands and perform corresponding functional tests according to three different requirements.
[0074] Based on this, the testing unit 5 includes a first execution module 6 , a second execution module 7 and a third execution module 8 .
[0075] The first execution module 6 is configured to, after disabling the corresponding memory, start a preset test tool to perform a memory information viewing test, a memory function test, and a memory performance test if the memory operation mode of the current server meets the system requirements.
[0076] The second execution module 7 is configured to determine a suitable memory operation mode according to the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test.
[0077] The third execution module 8 is used to determine whether the current memory insertion method is in an abnormal state by checking whether there is a memory insertion method abnormality alarm on the BMC web terminal after disabling the corresponding memory, and perform a memory RAS test.
[0078] This embodiment provides a server memory function testing system that can achieve physical isolation of memory based on remote commands. This physical isolation allows for different tests on different memory devices, meaning that a single machine can perform different tests without having to plug or unplug memory. This significantly reduces testing workload and costs, improves test efficiency, and minimizes material damage. Furthermore, this system implements out-of-band commands to modify register values, independent of BIOS options and requiring no on-site support. This reduces labor and enables remote batch modification.
[0079] Example 3:
[0080] This embodiment discloses a server memory function test device, including a processor and a memory. When the processor executes a server memory function test program stored in the memory, the processor implements the following steps:
[0081] 1. The BMC sends a remote out-of-band command to view the current server memory information.
[0082] 2. Query the corresponding register location and value in the server memory.
[0083] 3. Determine the physical isolation information of the memory based on the test requirements.
[0084] 4. Based on the physical isolation information of the memory, send a remote out-of-band command to modify the value of the corresponding register to disable the corresponding memory.
[0085] 5. Perform corresponding functional tests according to test requirements.
[0086] Furthermore, the server memory function testing device in this embodiment may further include:
[0087] The input interface is used to obtain a server memory function test program imported from the outside and save the obtained server memory function test program to the memory. It can also be used to obtain various instructions and parameters transmitted by an external terminal device and transmit them to the processor so that the processor can use these various instructions and parameters to carry out corresponding processing. In this embodiment, the input interface can specifically include but is not limited to a USB interface, a serial interface, a voice input interface, a fingerprint input interface, a hard disk read interface, etc.
[0088] The output interface is used to output various data generated by the processor to the terminal device connected to it, so that other terminal devices connected to the output interface can obtain various data generated by the processor. In this embodiment, the output interface can specifically include but is not limited to a USB interface, a serial interface, etc.
[0089] The communication unit is used to establish a remote communication connection between the server memory function test device and the external server so that the server memory function test device can mount the image file to the external server. In this embodiment, the communication unit may specifically include but is not limited to a remote communication unit based on wireless communication technology or wired communication technology.
[0090] The keyboard is used to obtain various parameter data or instructions input by the user by tapping the keycaps in real time.
[0091] The display is used to display relevant information of the server power supply line short circuit locating process in real time.
[0092] The mouse can be used to assist users in inputting data and simplify user operations.
[0093] Example 4:
[0094] This embodiment also discloses a readable storage medium, which includes random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, register, hard disk, removable hard disk, CD-ROM, or any other form of storage medium known in the art. The readable storage medium stores a server memory function test program, which, when executed by a processor, implements the following steps:
[0095] 1. The BMC sends a remote out-of-band command to view the current server memory information.
[0096] 2. Query the corresponding register location and value in the server memory.
[0097] 3. Determine the physical isolation information of the memory based on the test requirements.
[0098] 4. Based on the physical isolation information of the memory, send a remote out-of-band command to modify the value of the corresponding register to disable the corresponding memory.
[0099] 5. Perform corresponding functional tests according to test requirements.
[0100] In summary, the present invention can use remote commands to physically isolate the memory to implement server memory function testing, and realize the memory function testing of the server without powering off and manually plugging and unplugging, saving labor costs and material costs.
[0101] The various embodiments in this specification are described in a progressive manner, with each embodiment focusing on its differences from the other embodiments. References to the same or similar parts between the various embodiments are sufficient. The methods disclosed in the embodiments are described briefly because they correspond to the systems disclosed in the embodiments. For relevant details, refer to the method description.
[0102] 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 the present invention.
[0103] In the several embodiments provided by the present invention, it should be understood that the disclosed systems, systems and methods can be implemented in other ways. For example, the system embodiments described above are merely illustrative. For example, the division of the units is merely a logical function division. In actual implementation, there may be other division methods, such as multiple units or components can be combined or integrated into another system, or some features can be ignored or not executed. In addition, the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of systems or units, which can be electrical, mechanical or other forms.
[0104] The units described as separate components may or may not be physically separate, and the components shown as units may or may not be physical units, that is, they may be located in one place or distributed across multiple network units. Some or all of these units may be selected to achieve the purpose of this embodiment according to actual needs.
[0105] In addition, the functional modules in the various embodiments of the present invention may be integrated into one processing unit, or each module may exist physically separately, or two or more modules may be integrated into one unit.
[0106] Similarly, each processing unit in each embodiment of the present invention may be integrated into one functional module, or each processing unit may exist physically, or two or more processing units may be integrated into one functional module.
[0107] The steps of the methods or algorithms described in conjunction with the embodiments disclosed herein may be implemented directly using hardware, a software module executed by a processor, or a combination of the two. The software module may be placed in a random access memory (RAM), internal memory, read-only memory (ROM), electrically programmable ROM, electrically erasable programmable ROM, registers, a hard disk, a removable disk, a CD-ROM, or any other form of storage medium known in the art.
[0108] Finally, it should be noted that, in this document, relational terms such as first and second, etc., are used only to distinguish one entity or operation from another entity or operation, and do not necessarily require or imply any actual relationship or order between these entities or operations. Moreover, the terms "comprises," "comprising," 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. In the absence of further limitations, an element defined by the phrase "comprising a ..." does not exclude the presence of additional identical elements in the process, method, article, or device comprising the element.
[0109] The above is a detailed introduction to the server memory function testing method, system, device, and readable storage medium provided by the present invention. Specific examples are used herein to illustrate the principles and implementation methods of the present invention. The description of the above embodiments is only intended to help understand the method and core ideas of the present invention. It should be pointed out that, for those skilled in the art, without departing from the principles of the present invention, several improvements and modifications can be made to the present invention, and these improvements and modifications also fall within the scope of protection of the claims of the present invention.
Claims
1. A server memory function testing method, characterized in that: include: The BMC sends a remote out-of-band command to check the current server memory status. Query the corresponding register location and value in the server memory; Determine the physical isolation information of memory based on test requirements; Based on the physical isolation information of the memory, a remote out-of-band command is sent to modify the value of the corresponding register to disable the corresponding memory; Perform corresponding functional tests according to test requirements; The corresponding functional tests are performed according to the test requirements, including: After disabling the corresponding memory, if the current server's memory operation mode meets the system requirements, start the preset test tool to perform memory information viewing test, memory function test, and memory performance test; If the memory operation mode needs to be tested, determine the appropriate memory operation mode based on the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test; the memory operation mode includes mirror mode and standby mode; After disabling the corresponding memory, check whether there is an abnormal memory insertion method alarm on the BMC web page to determine whether the current memory insertion method is abnormal and perform a memory RAS test.
2. The server memory function testing method according to claim 1, characterized in that: The corresponding functional tests are performed according to the test requirements, including: After disabling the corresponding memory, if the current server's memory operation mode meets the system requirements, start the preset test tool to perform memory information viewing test, memory function test, and memory performance test.
3. The server memory function testing method according to claim 1, characterized in that: The corresponding functional tests are performed according to the test requirements, including: If the memory operation mode needs to be tested, determine the appropriate memory operation mode based on the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test.
4. The server memory function testing method according to claim 1, characterized in that: The corresponding functional tests are performed according to the test requirements, including: After disabling the corresponding memory, check whether there is an abnormal memory insertion method alarm on the BMC web page to determine whether the current memory insertion method is abnormal and perform a memory RAS test.
5. The server memory function testing method according to claim 3, characterized in that: The memory operation mode includes a mirror mode and a standby mode.
6. The server memory function testing method according to claim 3, characterized in that: The modifying of the current server into the corresponding memory operation mode is specifically: modifying the BIOS option by sending a remote out-of-band command to modify the current server into the corresponding memory operation mode.
7. A server memory function test system, characterized in that: include: The viewing unit is used to control the BMC to send remote out-of-band commands to view the current server memory information; A query unit, used to query the corresponding register location and value in the server memory; A requirement identification unit, used to determine the physical isolation information of the memory according to the test requirements; A disabling unit, configured to send a remote out-of-band command to modify the value of a corresponding register based on the physical isolation information of the memory, so as to disable the corresponding memory; Test unit, used to perform corresponding functional tests according to test requirements; The testing unit is specifically used for: The corresponding functional tests are performed according to the test requirements, including: After disabling the corresponding memory, if the current server's memory operation mode meets the system requirements, start the preset test tool to perform memory information viewing test, memory function test, and memory performance test; If the memory operation mode needs to be tested, determine the appropriate memory operation mode based on the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test; the memory operation mode includes mirror mode and standby mode; After disabling the corresponding memory, check whether there is an abnormal memory insertion method alarm on the BMC web page to determine whether the current memory insertion method is abnormal and perform a memory RAS test.
8. The server memory function test system according to claim 7, characterized in that: The testing unit comprises: The first execution module is configured to, after disabling the corresponding memory, start a preset test tool to perform a memory information viewing test, a memory function test, and a memory performance test if the memory operation mode of the current server meets the system requirements; The second execution module is used to determine a memory operation mode that meets the requirements according to the current memory insertion method, modify the current server to the corresponding memory operation mode, and start the test; The third execution module is used to determine whether the current memory insertion method is in an abnormal state by checking whether there is a memory insertion method abnormal alarm on the BMC web terminal after disabling the corresponding memory, and perform a memory RAS test.
9. A server memory function test device, characterized in that: include: A memory, used for storing a server memory function test program; A processor, configured to implement the steps of the server memory function testing method according to any one of claims 1 to 6 when executing the server memory function testing program.
10. A readable storage medium, characterized in that: The readable storage medium stores a server memory function test program, and when the server memory function test program is executed by the processor, the steps of the server memory function test method according to any one of claims 1 to 6 are implemented.
Citation Information
Patent Citations
Method and apparatus for disabling corrupted memory by using BMC
CN107066361A
Memory test method, system and device and computer readable storage medium
CN111309536A