Method for detecting abnormality of server memory and electronic device

By matching extended device identifiers and parsing technical specification documents in the BIOS to detect memory installation methods, the problem of the BIOS being unable to recognize implicit memory requirements is solved. This enables early detection and prevention of memory configuration problems, improving the automation and reliability of data center operations and maintenance.

CN120892275BActive Publication Date: 2025-12-16INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202511405471.5
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-09-29
Publication Date
2025-12-16
Estimated Expiration
2045-09-29

AI Technical Summary

Technical Problem

Existing BIOSes cannot proactively identify or verify the implicit memory requirements of extended devices in servers, leading to performance degradation or functional abnormalities, delayed troubleshooting, and high maintenance costs, especially impacting user experience in large-scale data center scenarios.

Method used

By matching the device identifier of the extended device with the technical specification document, parsing the device parameters, determining the memory capacity and installation specifications, detecting the memory installation method, generating processing suggestions, and discovering and preventing memory configuration problems in advance.

Benefits of technology

It enables fault detection during system deployment, eliminates performance and functional issues caused by improper memory configuration, and improves the level of automation in the operation and maintenance of large-scale data centers and the reliability of the system.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120892275B_ABST
    Figure CN120892275B_ABST
Patent Text Reader

Abstract

The application discloses an abnormality detection method for server memory and electronic equipment, relates to the technical field of servers, and comprises the following steps: matching the device identifier of an expansion device with the standard device identifier in a technical specification document to determine a target expansion device; determining the memory capacity of the target expansion device and the server memory requirement corresponding to the target expansion device according to the technical specification document; obtaining each memory bank plugged into the server, and detecting the memory installation mode of the server according to the server memory requirement; and in response to the detection result of the memory installation mode being normal, determining the detection result of the server memory capacity according to the server memory requirement, the server memory capacity and the memory capacity of the expansion device, so that the technical problem of lacking detection and reminding of implicit memory requirement in the prior art is solved, and the technical effect of realizing the change from passive troubleshooting to active prevention is achieved.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of servers, and in particular to a server memory exception detection method and electronic equipment. BACKGROUND

[0002] In current server systems, part of the expansion devices have implicit requirements for the total memory capacity and memory insertion method. Such requirements are different from explicit MMIO (Memory-Mapped Input / Output) or I / O (Input / Output) resource requirements, and the BIOS (Basic Input / Output System) cannot actively identify or verify them in the initialization stage, resulting in that even if the conditions are not met, the startup will not be interrupted or an error will not be thrown, but performance degradation or functional abnormalities will be triggered when running specific businesses subsequently. Since the existing BIOS lacks a detection and reminder mechanism for such implicit requirements, the problem is often exposed at the business layer, causing fault troubleshooting to lag and maintenance costs to surge. Especially in the scenario of large-scale remote deployment of data centers, post-maintenance not only consumes a lot of manpower and resources, but also causes business interruption and resource waste, seriously affecting user experience.

[0003] Therefore, in view of the shortcomings of the prior art, the present application provides a server memory exception detection method. SUMMARY

[0004] The present application provides a server memory exception detection method and electronic equipment to at least solve the problem of lack of detection and reminder of implicit memory requirements in related technologies.

[0005] The present application provides a server memory exception detection method, which comprises: obtaining the device identifier of at least one expansion device in the server, matching the device identifier of the at least one expansion device with the standard device identifier in the technical specification document, and determining the target expansion device; analyzing the technical specification document to obtain the device parameters of the target expansion device; determining the memory capacity of the target expansion device and the server memory requirement corresponding to the target expansion device according to the device parameters, wherein the server memory requirement comprises the memory capacity correlation parameter between the target expansion device and the server and the memory installation specification of the server; detecting the memory installation method of each memory bank inserted in the server according to the memory installation specification of the server; in response to the detection result of the memory installation method being normal, obtaining the memory capacity of the server, and determining the detection result of the server memory capacity according to the memory capacity of the server, the memory capacity correlation parameter between the target expansion device and the server, and the memory capacity of the target expansion device.

[0006] The application further provides an electronic device, comprising a memory for storing a computer program; and a processor for executing the computer program to implement the steps of the server memory anomaly detection method.

[0007] The application further provides a computer readable storage medium, wherein the computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the steps of the server memory anomaly detection method.

[0008] The application further provides a computer program product, comprising a computer program, and the computer program is executed by a processor to implement the steps of the server memory anomaly detection method.

[0009] According to the application, the device identifier of at least one extension device in the server is acquired, the device identifier of the at least one extension device is matched with the standard device identifier in the technical specification document, the target extension device is determined, the technical specification document is parsed to obtain the device parameter of the target extension device, the memory capacity of the target extension device and the server memory requirement corresponding to the target extension device are determined according to the device parameter, the server memory requirement comprises the memory capacity correlation parameter between the target extension device and the server and the memory installation specification of the server, the memory installation mode of each memory bank inserted in the server is detected according to the memory installation specification of the server, the memory capacity of the server is acquired in response to the detection result of the memory installation mode being normal, and the detection result of the server memory capacity is determined according to the memory capacity of the server, the memory capacity correlation parameter between the target extension device and the server and the memory capacity of the target extension device, so that the time of fault discovery is advanced from business operation to system deployment, the performance and function problems caused by improper memory configuration are effectively eliminated, the change from passive troubleshooting to active prevention is realized, and the automation level, system reliability and economic benefits of large-scale data center operation and maintenance are significantly improved. BRIEF DESCRIPTION OF DRAWINGS

[0010] In order to more clearly illustrate the embodiments of the application, the drawings needed in the embodiments will be briefly introduced. Obviously, the drawings in the following description are only some embodiments of the application, and other drawings can be obtained by those skilled in the art without creative labor.

[0011] Figure 1 A flowchart of a server memory anomaly detection method provided by an embodiment of the application is shown in the figure.

[0012] Figure 2 A flowchart of another server memory anomaly detection method provided by an embodiment of the application is shown in the figure.

[0013] Figure 3 A structural block diagram of an abnormality detection device of a server memory is provided for an embodiment of the present application.

[0014] Figure 4 An internal structure diagram of an electronic device is provided for an embodiment of the present application. DETAILED DESCRIPTION

[0015] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only part of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by a person of ordinary skill in the art without creative work fall within the protection scope of the present application.

[0016] It should be noted that, in the description of the present application, the terms “comprise”, “contain” or any other variants thereof are intended to cover non-exclusive inclusion, so that a process, method, article or device comprising a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such a process, method, article or device. The terms “first”, “second” and the like in the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence.

[0017] It should be noted that the terms “S1”, “S2” and the like are only used for the purpose of describing the steps, and do not specifically refer to the order or sequence, nor are they used to limit the present application. They are only used to facilitate the description of the method of the present application, and cannot be understood as indicating the order of the steps. In addition, the technical solutions of each embodiment can be combined with each other, but it must be based on the fact that a person of ordinary skill in the art can realize it. When the combination of technical solutions contradicts each other or cannot be realized, it should be considered that the combination of technical solutions does not exist, nor is it within the protection scope claimed by the present application.

[0018] In order for those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the drawings and specific embodiments.

[0019] Embodiments of the present application provide an abnormality detection method of a server memory. The method is described in detail in combination with the execution flow of the abnormality detection method of the server memory.

[0020] S101: Obtain the device identifier of at least one extension device in the server, match the device identifier of the at least one extension device with the standard device identifier in the technical specification document, and determine a target extension device.

[0021] Here, the execution subject is BIOS, and the execution timing is before the BIOS runs.

[0022] Here, the expansion device can be a PCIE (Peripheral Component Interconnect Express) device, such as a GPU (Graphics Processing Unit), a smart network card, a RAID (Redundant Array of Independent Disks) card, and the like.

[0023] Among them, at least one expansion device can be a same type device or a non-same type device.

[0024] Among them, the device identifier can be a device ID (Identifier).

[0025] Among them, the expansion device is a device that has requirements for the total capacity of the server.

[0026] Here, the technical specification document can include architecture, core parameters, computing performance, memory specifications, power consumption, heat dissipation, interface specifications, encoding and decoding capabilities, and the like.

[0027] Specifically, the BIOS initializes and enumerates all expansion devices on the server corresponding machine during the startup process, reads the values of the four ID registers in the configuration space of each expansion device, matches the device identifier in the device identifier parameter, and determines the same expansion device.

[0028] In an embodiment, the method can also be used for other firmware, software, and OS (Operating System) in addition to the expansion device.

[0029] In an embodiment, the comparison and matching can be performed by using a hash table or a tree structure.

[0030] S102: Analyze the technical specification document to obtain device parameters of the target expansion device.

[0031] Here, the device parameters can include the offset address of the memory capacity of the expansion device and the memory requirements, and the like.

[0032] S103: Determine the memory capacity of the target expansion device and the memory requirements of the server corresponding to the target expansion device according to the device parameters, wherein the memory requirements of the server include the memory capacity correlation parameter between the target expansion device and the server and the memory installation specification of the server.

[0033] Among them, the memory requirements of the server are obtained by reading the technical specification document, that is, the memory requirements are included in the device parameters.

[0034] Specifically, the memory capacity correlation parameter between the target expansion device and the server can include that the memory capacity of the server must be 1.5 times of the memory capacity of the expansion device.

[0035] Specifically, the memory installation specification can include that the server memory needs to be symmetrically inserted into all CPU memory controller slots.

[0036] In one embodiment, when the memory requirement is not directly included in the device parameter, the theoretical estimated value of the server memory is obtained through information collection and business load estimation; the theoretical estimated value is tested through test environment establishment and benchmark testing, and the test data is analyzed to obtain the configuration suggestion.

[0037] Among them, information collection can include determining the operating system, middleware, database and core application of the expansion device and the server, and can also include querying the recommended configuration of each component.

[0038] Among them, the business load estimation can be quantified by the number of expansion devices, reporting frequency, etc. The memory dynamic demand is calculated according to the continuous overhead and data processing buffer.

[0039] Among them, the theoretical estimated value of the server memory can be obtained according to the fixed overhead and dynamic demand.

[0040] In this way, an effective technical means for system optimization design and dynamic management is realized under the condition of incomplete information.

[0041] S104: According to the memory installation specification of the server, the memory installation mode of each memory bar inserted into the server is detected.

[0042] Here, the memory bar is the physical carrier of the random access memory in the computer.

[0043] Among them, the memory installation mode can include the installation position.

[0044] S105: In response to the detection result of the memory installation mode being normal, the memory capacity of the server is obtained, and the detection result of the server memory capacity is determined according to the memory capacity of the server, the memory capacity correlation parameter between the target expansion device and the server, and the memory capacity of the target expansion device.

[0045] Here, when the test result is abnormal, it can also include what problems will occur, what specific performance, etc. For example, which condition does not meet the memory bar (the memory is not symmetrically inserted, or not all inserted, or both), which device will be affected, and what impact will be produced, such as it may not run to the maximum bandwidth.

[0046] Among them, the detection result can include normal and abnormal.

[0047] Here, the detection result can also include a processing suggestion. The processing suggestion can include how many more same type of memory needs to be inserted on the server to meet the design requirements while ensuring the number of expansion device configurations; or how many expansion device cards need to be reduced to meet the design requirements while keeping the number of existing memory bars on the server unchanged.

[0048] Specifically, the processing suggestion can be displayed on the display screen during the machine startup process by using the corresponding screen display processing function of the BIOS; the processing suggestion can be output to the serial port log of the BIOS by using the serial port output function; and the BIOS sends the abnormal information to the BMC, and the BMC records it in the log through the interaction function between the BIOS and the BMC.

[0049] Specifically, in response to the memory installation mode not passing the detection, a processing suggestion can be generated, which can include symmetrically inserting the memory, expanding the number of memory bars to full configuration, etc.

[0050] In one embodiment, assuming that the expansion device is a GPU, in the case of keeping the number of memories unchanged, the user can remotely access the setting function on the BIOS user interface of the machine to close the upper PCIE device port connected to the corresponding number of GPUs; or use other software, operating system functions, etc. to close the PCIE device port. Specifically, in the BIOS Setup interface, the setting can be performed by using a dedicated Get / SetVariable() control function, or a Redfish command for interacting with the BMC (Baseboard Management Controller, baseboard management controller), system software, etc.

[0051] It should be noted that the present application realizes intelligent identification of the implicit requirements of the expansion device on the server memory by analyzing the technical document of the expansion device, and automatically detects the memory installation specification and capacity during the deployment stage, thereby advancing the fault discovery node from the business runtime to the system deployment stage, effectively eliminating performance and function problems caused by improper memory configuration, realizing the transition from passive troubleshooting to active prevention, and significantly improving the automation level, system reliability and economic benefits of large-scale data center operation and maintenance.

[0052] In some specific embodiments, the device identifier includes a first sub-identifier and a second sub-identifier, the standard device identifier includes a first sub-standard identifier and a second sub-standard identifier, the device identifier of the at least one expansion device in the server is obtained, the device identifier of the at least one expansion device is matched with the standard device identifier in the technical specification document, and the target expansion device is determined, including:

[0053] The first sub-identity of at least one expansion device in the acquisition server is obtained, the first sub-identity is compared with the first sub-standard identity in the technical specification document, and the first expansion device of the same device type is determined in response to the first comparison result being the same, wherein the first sub-identity is used to identify the device type of the expansion device.

[0054] The second sub-identity of each first expansion device is compared with the second sub-standard identity in the technical specification document, and the target expansion device is determined in response to the second comparison result being the same, wherein the second sub-identity is used to identify the device model of the expansion device.

[0055] Here, the device identity of one expansion device can be one or multiple.

[0056] For example, the device identity can include Device ID, Vendor ID, Subsystem ID, and SubsystemVendor ID.

[0057] In some embodiments, comparing the second sub-identity of each first expansion device with the second sub-standard identity in the technical specification document, and determining the target expansion device in response to the second comparison result being the same, includes:

[0058] In response to the presence of multiple second sub-identities, sequentially matching the multiple second sub-identities with the multiple second sub-standard identities in the technical specification document;

[0059] In response to all the multiple second sub-identities passing the matching, determining that the expansion device is the target expansion device.

[0060] Specifically, assuming that the device identity is 4 ID values, the 4 obtained ID values are compared with the 4 ID values in the technical specification document, and only when the 4 ID values are completely matched, the server can determine that the machine corresponding to the server is connected with the expansion device, if only part of the 4 ID values are matched, the matching cannot be completed.

[0061] In this way, false judgments can be prevented.

[0062] In some embodiments, the device parameters include device attribute parameters, and the memory capacity of the target expansion device is determined according to the device parameters, including:

[0063] In response to the device parameters including the memory capacity of the target expansion device and the fixed offset address of the memory capacity, the base address of the configuration space of the target expansion device is determined according to the device attribute parameters of the target expansion device through an expansion device specification algorithm;

[0064] The target address of the memory capacity of the target expansion device is determined according to the base address and the fixed offset address of the memory capacity.

[0065] read the data of the memory capacity of the extension device through a preset access method, and obtain the memory capacity of the target extension device;

[0066] In response to the memory capacity of the target extension device and the fixed offset address of the memory capacity not being included in the device parameters, the memory capacity of the target extension device is determined according to the device identifier of the target extension device through a preset memory capacity library.

[0067] Here, the device attribute parameters can be Bus, Device, Function Number, etc.

[0068] The preset access method can include memory mapping read-write, read-write functions defined in the EFI_PCI_IO_PROTOCOL in the UEFI (Unified Extensible Firmware Interface) specification, etc.

[0069] Specifically, assuming that the extension device is a GPU, the configuration space address of the GPU is calculated through the Bus, Device, and Function Number attributes of the GPU device according to the algorithm defined in the PCIe specification, and then the address position of the video memory is calculated according to the offset address of the display in the configuration space in the technical specification document. Then, the video memory size value is read through memory mapping read-write or read-write functions defined in the EFI_PCI_IO_PROTOCOL in the UEFI specification, etc.

[0070] Here, the preset memory capacity library includes a data structure associated with the device identifier and the memory capacity.

[0071] The memory capacity of the target extension device can not be included in the device parameters, which means that the key parameters of the target extension device cannot be obtained by the BIOS itself, including the BIOS, other firmware and software that cannot obtain and interact with the BIOS.

[0072] In this way, the device configuration space is directly calculated and accessed according to the extension device specification, and the memory capacity data is read in real time, which has the advantages of strong universality and no need to preset information; relying on the preset memory capacity library, the data is obtained by matching the identifier ID, which has higher execution efficiency and better stability.

[0073] In some specific embodiments, the method further comprises:

[0074] Collecting technical specification documents of different extension devices and parsing to obtain standard device identifiers and design parameter data of different extension devices, wherein the design parameter data is related to the memory capacity;

[0075] According to the design parameter data, the memory capacity of the expansion device corresponding to the design parameter data is determined;

[0076] The association data structure of the standard equipment identifier and the memory capacity is constructed;

[0077] The association data structure of different expansion devices is counted to obtain a preset memory capacity library.

[0078] Here, different expansion devices can include different models of the same type of device, or different models of different types of devices.

[0079] Among them, the data structure includes but is not limited to data Table, linked list, etc.

[0080] Among them, the technical specification document of different expansion devices can be collected by artificial investigation, with the help of in-band, out-of-band, operating system command or software, driver and other tools.

[0081] In this way, it is ensured that necessary equipment information can be obtained in the absence of automatic identification capability.

[0082] In some specific embodiments, before detecting the memory installation mode of each memory stick inserted by the server according to the memory installation specification of the server, the method further comprises:

[0083] By accessing the instruction, the memory slot in signal of each memory stick inserted by the server is read;

[0084] According to the memory slot in signal, the in-place condition of each memory stick is determined;

[0085] According to the memory requirement, the memory insertion mode of each in-place memory stick inserted by the server is detected.

[0086] Among them, when the memory stick design includes the in-place signal design of hardware, the in-place signal of hardware is directly read, and when the in-place signal is included in the CPU chip register, the in-place signal is obtained by reading the chip register.

[0087] Specifically, by corresponding instruction, read-write function, accessing chip register or in-place signal, whether the memory stick is installed on the slot is obtained.

[0088] In this way, invalid advanced function detection on the basis of missing or unstable hardware is avoided, and the efficiency and reliability of system startup are effectively improved.

[0089] In some specific embodiments, detecting the memory installation mode of each memory stick inserted by the server according to the memory installation specification of the server comprises:

[0090] Obtain the insertion mode of each memory stick, and detect whether each memory stick is symmetrically inserted;

[0091] In response to the symmetrical insertion of each memory stick, the detection result of the memory installation mode of each memory stick is determined to be normal.

[0092] For example, the memory installation specification can be included in the Intel system architecture, the insertion slot corresponding to one logical unit is set to 0, 1, 2 and 3, and when only one memory stick is inserted, it needs to be inserted into slot 0. If the memory stick is inserted into other slots, the memory installation specification is not met.

[0093] For example, the memory installation specification can be included in the Intel system architecture, one CPU includes multiple logical units, and the insertion slot corresponding to one logical unit is set to 0, 1, 2 and 3. It is required that multiple logical units insert memory sticks into slot 0.

[0094] In some embodiments, the memory capacity of the server is obtained, including:

[0095] The slave address of each memory stick inserted by the server is obtained.

[0096] According to the slave address, the serial presence detect register corresponding to each memory stick is read through the bus protocol.

[0097] The serial presence detect register is parsed to determine the memory capacity of each memory stick.

[0098] According to the memory capacity of each memory stick, the memory capacity of the server is obtained.

[0099] Here, the serial presence detect register is a small electrically erasable programmable read-only memory chip, which is welded on the memory stick and stores key parameter information of the memory stick.

[0100] Here, the bus protocol can be the SMBUS protocol. SMBUS is a two-wire serial bus protocol for system management communication based on I²C (Inter-Integrated Circuit, two-wire serial bus).

[0101] Wherein, the slave address refers to the slave address of the SPD register on the memory stick.

[0102] Specifically, according to the in-place condition of the memory stick, the slave address of the in-place memory stick is obtained.

[0103] Specifically, through the SMBUS protocol, the address / register accessed and parsed by SMBUS access PROTOCL is judged according to the slave address of the memory and the SPD register, so as to obtain the capacity size of each memory stick.

[0104] Specifically, the analysis of the SPD register can include: reading basic information, reading key registers for capacity calculation, calculating data of the key registers, and obtaining the memory capacity of the memory bank.

[0105] In this way, the memory bank configuration of the server is automatically, accurately and non-intrusively discovered and managed.

[0106] In some embodiments, the memory capacity of the server is obtained, and a detection result of the server memory capacity is determined according to the memory capacity of the server, a memory capacity correlation parameter between the target expansion device and the server, and the memory capacity of the target expansion device, including:

[0107] The memory capacity correlation parameter between the target expansion device and the server is analyzed, and a comparison type is determined.

[0108] According to the number of target expansion devices corresponding to the central processing unit and the memory capacity of the target expansion device, a first total memory capacity of the target expansion device is determined, wherein different central processing units correspond to different first total memory capacities.

[0109] According to the number of central processing units in the server and the first total memory capacity, an expansion device total memory capacity of the target expansion device is determined.

[0110] According to the memory capacity of each memory bank and the number of memory banks plugged by the central processing unit, a central processing unit memory capacity of each central processing unit is determined.

[0111] According to the number of central processing units in the server, a server memory capacity of the server is determined.

[0112] In response to the comparison type being the first type, the central processing unit memory capacity of each central processing unit and the first total memory capacity are compared in sequence to determine the detection result of the server memory capacity.

[0113] In response to the comparison type being the second type, the server memory capacity and the expansion device total memory capacity are compared to determine the detection result of the server memory capacity.

[0114] In response to the comparison type being the third type, the central processing unit memory capacity of each central processing unit, the first total memory capacity, the expansion device total memory capacity, and the server memory capacity are compared to determine the detection result of the server memory capacity.

[0115] Wherein, the expansion device connected to one CPU can include one card or multiple cards. One CPU can be connected to one expansion device or multiple expansion devices.

[0116] Specifically, the first total memory capacity of the expansion device can be obtained by acquiring the number of cards of at least one expansion device connected to the CPU, multiplying the number of cards by the memory capacity, and accumulating the values of all expansion devices.

[0117] Specifically, the expansion device total memory capacity of the target expansion device can be obtained by accumulating the first total memory capacity corresponding to each CPU included in the server, or by adding the memory capacities of all target expansion devices to obtain the expansion device total memory capacity on the machine.

[0118] Here, the first comparison type is to compare the correlation between the central processor memory capacity and the first memory capacity of the expansion device. For example, whether the total memory capacity of the memory plugged on each CPU exceeds 1.5 times the first total memory capacity of the connected expansion device.

[0119] When each CPU meets the correlation parameter, the detection result of the server memory is determined to be normal; when there is a CPU that does not meet the correlation parameter, the detection result of the server memory is determined to be abnormal, and improvement suggestions are generated according to the current data and fed back to the user.

[0120] Here, the second comparison type is to compare the correlation between the server memory capacity and the expansion device total memory capacity. For example, whether the total memory capacity plugged on the server exceeds 1.5 x CPU number times the total memory capacity of all expansion devices of this type.

[0121] When the server total memory capacity meets the correlation parameter, the detection result of the server memory is determined to be normal; when the server total memory capacity does not meet the correlation parameter, the detection result of the server memory is determined to be abnormal, and improvement suggestions are generated according to the current data and fed back to the user.

[0122] Here, the third comparison type is to first compare the correlation between the central processor memory capacity and the first memory capacity of the expansion device, and then compare the correlation between the server memory capacity and the expansion device total memory capacity.

[0123] Specifically, when the CPU memory capacity of each CPU meets the correlation parameter, the server memory capacity detection is not performed, and the detection result of the server memory is directly determined to be normal; when there is a CPU memory capacity that does not meet the correlation parameter, an alarm prompt is generated, and the detection of the server memory capacity is continued, when the server memory capacity meets the correlation parameter, the detection result of the server memory is determined to be normal, but an alarm prompt is generated for the CPU memory capacity and fed back to the user, when the server memory capacity does not meet the correlation parameter, the detection result of the server memory is determined to be abnormal and a prompt is generated.

[0124] Thus, the process crash, task unexpected interruption and other problems caused by insufficient memory during long time running are avoided.

[0125] In one embodiment, Figure 2 For the flowchart in the embodiments of the present application, as Figure 2 shown, the flow in the present application includes: investigating the special design requirements of the equipment and the equipment ID; collecting all special equipment and requirements in the BIOS, and matching the equipment ID and the design requirements; the BIOS enumerates all hardware equipment on the server, and matches the collected special equipment ID; determining whether the matching is successful; if not, ending the flow; if yes, obtaining and calculating the design requirement related parameters of the equipment in the comparison; determining whether the equipment design requirements are met according to the related parameters, if yes, ending the flow, if not, explaining the situation to the user and giving processing suggestions; the user receives the information and performs remote processing.

[0126] It should be understood that, although Figure 1 and Figure 2 the steps in the flowcharts are shown in sequence according to the arrows, these steps are not necessarily executed in sequence according to the arrows. Unless otherwise specified herein, the execution of these steps is not strictly limited in sequence, and these steps can be executed in other sequences. Moreover, Figure 1 and Figure 2 at least some of the steps can include multiple sub-steps or multiple stages, which are not necessarily executed at the same time, but can be executed at different times, and the execution sequence of these sub-steps or stages is not necessarily sequential, but can be alternately or alternately executed with other steps or sub-steps or stages of other steps.

[0127] Through the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be realized by means of software and the necessary general hardware platform, of course, it can also be realized by hardware, but in many cases the former is a better embodiment.

[0128] The embodiment of the application further provides an abnormality detection device of server memory, the device comprising: a first processing module 301, configured to acquire the device identification of at least one expansion device in a server, match the device identification of the at least one expansion device with the standard device identification in a technical specification document, and determine a target expansion device; a second processing module 302, configured to parse the technical specification document to obtain the device parameters of the target expansion device; a third processing module 303, configured to determine the memory capacity of the target expansion device and the server memory requirement corresponding to the target expansion device according to the device parameters, wherein the server memory requirement comprises the memory capacity correlation parameter between the target expansion device and the server and the memory installation specification of the server; a fourth processing module 304, configured to detect the memory installation mode of each memory bank inserted in the server according to the memory installation specification of the server; and a fifth processing module 305, configured to acquire the memory capacity of the server in response to the detection result of the memory installation mode being normal, and determine the detection result of the server memory capacity according to the memory capacity of the server, the memory capacity correlation parameter between the target expansion device and the server, and the memory capacity of the target expansion device.

[0129] As a preferred implementation, in the embodiment of the application, the first processing module 301 is specifically configured to: acquire the first sub-identification of at least one expansion device in a server, compare the first sub-identification with the first sub-standard identification in a technical specification document, and determine a first expansion device of the same device type in response to the first comparison result being the same, wherein the first sub-identification is used to identify the device type of the expansion device; compare the second sub-identification of each first expansion device with the second sub-standard identification in the technical specification document, and determine a target expansion device in response to the second comparison result being the same, wherein the second sub-identification is used to identify the device model of the expansion device.

[0130] As a preferred implementation, in the embodiment of the application, the first processing module 301 is specifically further configured to: sequentially match the plurality of second sub-identifications with the plurality of second sub-standard identifications in the technical specification document in response to the plurality of second sub-identifications existing; and determine the expansion device to be the target expansion device in response to the plurality of second sub-identifications all passing the matching.

[0131] As a preferred implementation, in the embodiment of the present application, the third processing module 303 is specifically configured to: in response to the device parameters including the memory capacity of the target expansion device and the fixed offset address of the memory capacity, determine the base address of the configuration space of the target expansion device according to the device attribute parameters of the target expansion device through an expansion device specification algorithm; determine the target address of the memory capacity of the target expansion device according to the base address and the fixed offset address of the memory capacity; read the data of the memory capacity of the target expansion device through a preset access method to obtain the memory capacity of the target expansion device; and in response to the device parameters not including the memory capacity of the target expansion device and the fixed offset address of the memory capacity, determine the memory capacity of the target expansion device through a preset memory capacity library according to the device identifier of the target expansion device.

[0132] As a preferred implementation, in the embodiment of the present application, the third processing module 303 is specifically further configured to: collect technical specification documents of different expansion devices and parse to obtain standard device identifiers and design parameter data of different expansion devices, wherein the design parameter data is related to the memory capacity; determine the memory capacity of the expansion device corresponding to the design parameter data according to the design parameter data; construct an associated data structure of the standard device identifier and the memory capacity; and count the associated data structure of different expansion devices to obtain a preset memory capacity library.

[0133] As a preferred implementation, in the embodiment of the present application, the device further includes an in-place detection module, which is specifically configured to: read the in-place signals of the memory slots of each memory bank inserted by the server through an access instruction; determine the in-place conditions of each memory bank according to the in-place signals of the memory slots; and detect the memory insertion mode of each in-place memory bank inserted by the server according to the memory requirement.

[0134] As a preferred implementation, in the embodiment of the present application, the fourth processing module 304 is specifically configured to: obtain the insertion mode of each memory bank, detect whether each memory bank is symmetrically inserted; and in response to each memory bank being symmetrically inserted, determine that the detection result of the memory installation mode of each memory bank is normal.

[0135] As a preferred implementation, in the embodiment of the present application, the fifth processing module 305 is specifically configured to: obtain the slave addresses of each memory bank inserted by the server; read the corresponding serial presence detect registers of each memory bank according to the slave addresses through a bus protocol; parse the serial presence detect registers to determine the memory capacities of each memory bank; and obtain the memory capacity of the server according to the memory capacities of each memory bank.

[0136] As a better implementation, the fifth processing module 305 is further configured to: analyze the memory capacity correlation parameter between the target expansion device and the server, and determine a comparison type; determine a first total memory capacity of the target expansion device according to the number of target expansion devices corresponding to the central processor and the memory capacity of the target expansion device, wherein different central processors correspond to different first total memory capacities; determine an expansion device total memory capacity of the target expansion device according to the number of central processors in the server and the first total memory capacity; determine a central processor memory capacity of each central processor according to the memory capacity of each memory bank and the number of memory banks plugged by the central processor; determine a server memory capacity of the server according to the number of central processors in the server; in response to the comparison type being a first type, compare the central processor memory capacity of each central processor and the first total memory capacity in sequence to determine a detection result of the server memory capacity; in response to the comparison type being a second type, compare the server memory capacity and the expansion device total memory capacity to determine the detection result of the server memory capacity; and in response to the comparison type being a third type, compare the central processor memory capacity of each central processor, the first total memory capacity, the expansion device total memory capacity, and the server memory capacity to determine the detection result of the server memory capacity.

[0137] The features of the embodiment of the server memory anomaly detection device can be referred to the related description of the embodiment of the server memory anomaly detection method, which will not be repeated here.

[0138] Embodiments of the present application also provide an electronic device, which comprises a memory and a processor, the memory stores a computer program, and the processor is configured to run the computer program to perform the steps in any of the above-mentioned embodiments of the server memory anomaly detection method.

[0139] The electronic device can be a server, and its internal structure diagram can be as shown in Figure 4 The computer device comprises a processor, a memory, a network interface and a database connected through a system bus. The processor of the computer device is used to provide computing and control capabilities. The memory of the computer device comprises a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program and a database. The internal memory provides an environment for the operating system and the computer program in the non-volatile storage medium. The database of the computer device is used to store server memory anomaly detection data. The network interface of the computer device is used to communicate with external terminals through network connection. The computer program is executed by the processor to implement a server memory anomaly detection method.

[0140] The embodiment of the present application further provides a computer readable storage medium, which stores a computer program, and the computer program is configured to execute the steps in any of the server memory anomaly detection method embodiments when running.

[0141] In an example embodiment, the computer readable storage medium can include, but is not limited to, a U disk, a read-only memory (ROM), a random access memory (RAM), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store computer programs.

[0142] The embodiment of the present application further provides a computer program product, which comprises a computer program, and the computer program is executed by a processor to implement the steps in any of the server memory anomaly detection method embodiments.

[0143] The embodiment of the present application further provides another computer program product, which comprises a non-volatile computer readable storage medium, and the non-volatile computer readable storage medium stores a computer program, and the computer program is executed by a processor to implement the steps in any of the server memory anomaly detection method embodiments.

[0144] The skilled person can further realize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be realized in electronic hardware, computer software or a combination of the two. In order to clearly illustrate the interchangeability of hardware and software, the components and steps of the examples have been described in the above description in general terms. Whether the functions are realized in hardware or software depends on the specific application and design constraints of the technical solution. The skilled person can use different methods to realize the described functions for each specific application, but such implementation should not be considered beyond the scope of the present application.

[0145] The above describes in detail the server memory anomaly detection method, electronic device, storage medium and computer program product provided by the present application. The principles and implementation modes of the present application are described by applying specific examples in this paper, and the above description of the examples is only applicable to help understand the method and core idea of the present application. It should be pointed out that, for ordinary skilled person in the technical field, without departing from the principles of the present application, the present application can be improved and modified in several ways, and these improvements and modifications also fall within the protection scope of the present application.

Claims

1. A method for detecting an anomaly in a server memory, the method comprising: The method comprises: obtaining the device identifier of at least one expansion device in the server, matching the device identifier of the at least one expansion device with the standard device identifier in the technical specification document, and determining a target expansion device; parsing the technical specification document to obtain the device parameters of the target expansion device; determining the memory capacity of the target expansion device and the server memory requirement corresponding to the target expansion device according to the device parameters, wherein the server memory requirement comprises a memory capacity correlation parameter between the target expansion device and the server and a memory installation specification of the server; detecting the memory installation mode of each memory bank inserted in the server according to the memory installation specification of the server; in response to the detection result of the memory installation mode being normal, obtaining the memory capacity of the server, and determining the detection result of the server memory capacity according to the memory capacity of the server, the memory capacity correlation parameter between the target expansion device and the server, and the memory capacity of the target expansion device; wherein the obtaining of the memory capacity of the server and the determination of the detection result of the server memory capacity according to the memory capacity of the server, the memory capacity correlation parameter between the target expansion device and the server, and the memory capacity of the target expansion device comprises: parsing the memory capacity correlation parameter between the target expansion device and the server to determine a comparison type; determining a first total memory capacity of the target expansion device according to the number of target expansion devices corresponding to the central processing unit and the memory capacity of the target expansion device, wherein different central processing units correspond to different first total memory capacities; determining an expansion device total memory capacity of the target expansion device according to the number of central processing units in the server and the first total memory capacity; determining a central processing unit memory capacity of each central processing unit according to the memory capacity of each memory bank and the number of memory banks inserted by the central processing unit; determining a server memory capacity of the server according to the number of central processing units in the server; in response to the comparison type being a first type, sequentially comparing the central processing unit memory capacity of each central processing unit and the first total memory capacity to determine the detection result of the server memory capacity; in response to the comparison type being a second type, comparing the server memory capacity and the target expansion device total memory capacity to determine the detection result of the server memory capacity; in response to the comparison type being a third type, comparing the central processing unit memory capacity of each central processing unit, the first total memory capacity, the expansion device total memory capacity, and the server memory capacity to determine the detection result of the server memory capacity.

2. The method of claim 1, wherein the server memory exception is detected by: The device identifier comprises a first sub-identifier and a second sub-identifier, the standard device identifier comprises a first sub-standard identifier and a second sub-standard identifier, and the obtaining of the device identifier of at least one expansion device in the server, the matching of the device identifier of the at least one expansion device with the standard device identifier in the technical specification document, and the determination of a target expansion device comprise: obtaining a first sub-identity of at least one expansion device in the server, comparing the first sub-identity with a first sub-standard identity in the technical specification document, and determining a first expansion device of the same device type in response to a first comparison result being the same, wherein the first sub-identity is used to identify the device type of the expansion device; comparing a second sub-identity of each first expansion device with a second sub-standard identity in the technical specification document, and determining the target expansion device in response to a second comparison result being the same, wherein the second sub-identity is used to identify the device model of the expansion device.

3. The method of claim 2, wherein the step of detecting the abnormality of the server memory is performed by a server memory abnormality detection program. The method further comprises: in response to a plurality of second sub-identities existing, sequentially matching the plurality of second sub-identities with a plurality of second sub-standard identities in the technical specification document; in response to the plurality of second sub-identities all passing the matching, determining the expansion device as the target expansion device.

4. The method of claim 1, wherein the server memory exception is detected by: The device parameters include device attribute parameters, and the method further comprises: in response to the device parameters including the memory capacity of the target expansion device and a fixed offset address of the memory capacity, determining a base address of a configuration space of the target expansion device according to the device attribute parameters of the target expansion device and through an expansion device specification algorithm; determining a target address of the memory capacity of the target expansion device according to the base address and the fixed offset address of the memory capacity; reading data of the memory capacity of the target expansion device through a preset access method to obtain the memory capacity of the target expansion device; in response to the device parameters not including the memory capacity of the target expansion device and the fixed offset address of the memory capacity, determining the memory capacity of the target expansion device through a preset memory capacity library according to the device identification of the target expansion device.

5. The method of claim 4, wherein the step of detecting the abnormality of the server memory is performed by a server memory abnormality detection program. The method further comprises: collecting technical specification documents of different expansion devices and parsing to obtain standard device identifications and design parameter data of different expansion devices, wherein the design parameter data is related to memory capacity; determining the memory capacity of the expansion device corresponding to the design parameter data according to the design parameter data; constructing an associated data structure of the standard device identification and the memory capacity; counting the associated data structure of different expansion devices to obtain the preset memory capacity library. 6.The method of claim 1, wherein, Before the method further comprises: reading memory slot in-place signals of each memory stick inserted into the server through an access instruction; determining in-place conditions of each memory stick according to the memory slot in-place signals; detecting memory insertion modes of each in-place memory stick inserted into the server according to the memory requirements.

7. The method of claim 1, wherein the server memory exception is detected by: The method further comprises: Obtaining the insertion mode of each memory bank, detecting whether each memory bank is symmetrically inserted; In response to the symmetric insertion of each memory bank, determining that the detection result of the memory installation mode of each memory bank is normal. 8.The method of claim 1, wherein, The obtaining of the memory capacity of the server comprises: Obtaining the slave address of each memory bank inserted by the server; According to the slave address, reading the serial presence detect register corresponding to each memory bank through a bus protocol; Parsing the serial presence detect register to determine the memory capacity of each memory bank; According to the memory capacity of each memory bank, obtaining the memory capacity of the server.

9. An electronic device, comprising: Comprise: Memory, for storing computer programs; Processor, for executing the computer program to realize the steps of the abnormal detection method of the server memory according to any one of claims 1 to 8.

Citation Information

Patent Citations

  • Memory allocation method and electronic equipment

    CN118210629A

  • Memory resource processing method, device and system and electronic equipment

    CN120144324A