Abnormality detection method for server memory and electronic equipment

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, enabling early detection and proactive prevention of faults, and improving the automation and reliability of data center operations and maintenance.

CN120892275AActive Publication Date: 2025-11-04INSPUR SUZHOU INTELLIGENT TECH CO LTD
View PDF 8 Cites 0 Cited by

Patent Information

Application Number
CN202511405471.5
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-09-29
Publication Date
2025-11-04
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, and identifying and correcting 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 CN120892275A_ABST
    Figure CN120892275A_ABST
Patent Text Reader

Abstract

The invention discloses a server memory anomaly detection method and electronic equipment, and relates to the technical field of servers, the method comprises the following steps: matching an equipment identifier of extension equipment with a standard equipment identifier in a technical specification document, and determining target extension equipment; determining the memory capacity of the target extension equipment and a server memory requirement corresponding to the target extension equipment according to the technical specification document; obtaining each memory bank inserted into the server, and detecting the memory installation mode of the server according to the memory requirement of the server; and determining a detection result of the memory capacity of the server according to the memory requirement of the server, the memory capacity of the server and the memory capacity of the extension equipment in response to the fact that the detection result of the memory installation mode is normal, thereby solving the technical problem of lack of detection and reminding of implicit memory requirements in related technologies. The technical effect of conversion 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, which stores a computer program, wherein 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, which comprises 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. Figure 2 A flowchart of another server memory anomaly detection method provided by an embodiment of the application is shown in the figure. Figure 3A structural block diagram of an abnormality detection device for a server memory is provided in an embodiment of the present application. Figure 4 An internal structure diagram of an electronic device is provided in an embodiment of the present application. DETAILED DESCRIPTION

[0012] 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.

[0013] 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.

[0014] 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 sequence 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.

[0015] 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.

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

[0017] 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.

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

[0019] 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.

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

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

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

[0023] 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.

[0024] 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.

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

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

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

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

[0029] 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.

[0030] 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.

[0031] 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.

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

[0033] 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.

[0034] 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.

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

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

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

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

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

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

[0041] 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.

[0042] 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.

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

[0044] 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 cards of the expansion device need to be reduced to meet the design requirements while keeping the number of memory bars on the server unchanged.

[0045] 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.

[0046] 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.

[0047] 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.

[0048] 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.

[0049] 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: acquire a first sub-identity of at least one expansion device in the server, compare the first sub-identity with a first sub-standard identity in the technical specification document, and determine the first expansion device of the same device type 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; compare the second sub-identity of each first expansion device with a second sub-standard identity in the technical specification document, and determine the target expansion device 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.

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

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

[0052] In some embodiments, comparing the 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 the second comparison result being the same, includes: in response to the presence of multiple second sub-identities, sequentially matching the multiple second sub-identities with multiple second sub-standard identities in the technical specification document; in response to the multiple second sub-identities all passing the matching, determining the expansion device as the target expansion device.

[0053] Specifically, assuming that the device identity is 4 ID values, comparing the 4 acquired ID values with the 4 ID values in the technical specification document, 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.

[0054] In this way, false positives can be prevented.

[0055] 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: 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 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; determining 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; reading the data of the memory capacity of the expansion device through a preset access method to acquire the memory capacity of the target expansion device; In response to the device parameter not including the memory capacity of the target expansion device and the fixed offset address of the memory capacity, the memory capacity of the target expansion device is determined according to the device identifier of the target expansion device through a preset memory capacity library.

[0056] Here, the device attribute parameter can be a Bus, Device, Function Number, and the like.

[0057] 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, and the like.

[0058] Specifically, assuming that the expansion 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 the address location 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, and the like.

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

[0060] The memory capacity of the target expansion device not included in the device parameter can be that the key parameter of the target expansion device cannot be obtained by the BIOS itself, including that the BIOS cannot obtain, and other firmware and software such as the BMC interacting with the BIOS cannot obtain.

[0061] In this way, the device configuration space is directly calculated and accessed according to the expansion 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.

[0062] In some specific embodiments, the method further includes: Collecting technical specification documents of different expansion devices and parsing to obtain standard device identifiers and design parameter data of different expansion devices, wherein the design parameter data is related to the memory capacity; According to the design parameter data, the memory capacity of the expansion device corresponding to the design parameter data is determined; An associated data structure of the standard device identifier and the memory capacity is constructed; The associated data structures of different expansion devices are counted to obtain a preset memory capacity library.

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

[0064] The data structure includes, but is not limited to, data Table, linked list, etc.

[0065] The technical specification document of the different extension devices can be collected by manual investigation, with the help of in-band, out-of-band, operating system commands or software, drivers, etc.

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

[0067] In some embodiments, before detecting the memory installation mode of each memory stick inserted into the server according to the memory installation specification of the server, the method further comprises: Accessing the memory slot in signal of each memory stick inserted into the server by an instruction; According to the memory slot in signal, determining the in-place condition of each memory stick; According to the memory requirement, detecting the memory insertion mode of each in-place memory stick inserted into the server.

[0068] When the memory stick design includes the in-place signal design of the hardware, the in-place signal of the 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.

[0069] Specifically, the chip register or the in-place signal is accessed by a corresponding instruction, read-write function, to obtain whether a memory stick is installed on the slot.

[0070] 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.

[0071] In some embodiments, detecting the memory installation mode of each memory stick inserted into the server according to the memory installation specification of the server comprises: Obtaining the insertion mode of each memory stick, detecting whether each memory stick is symmetrically inserted; In response to the symmetric insertion of each memory stick, determining that the detection result of the memory installation mode of each memory stick is normal.

[0072] 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 the 0th slot. Assuming that the memory stick is inserted into other slots, the memory installation specification is not met.

[0073] For example, the memory installation specification can be included in the Intel system architecture, a CPU includes multiple logical units, and a logical unit corresponds to a slot position set to 0, 1, 2, and 3, and it is required that multiple logical units all insert memory modules into the 0th slot.

[0074] In some embodiments, the memory capacity of the server is obtained, including: Obtaining the slave address of each memory module inserted by the server; Reading the serial presence detect register corresponding to each memory module according to the slave address through a bus protocol; Parsing the serial presence detect register to determine the memory capacity of each memory module; Obtaining the memory capacity of the server according to the memory capacity of each memory module.

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

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

[0077] Here, the slave address refers to the slave address of the SPD register on the memory module.

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

[0079] 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, to obtain the capacity size of each memory module.

[0080] Specifically, parsing the SPD register can include: reading basic information, reading key registers for capacity calculation, and calculating the data of the key registers to obtain the memory capacity of the memory module.

[0081] In this way, the automation, precision, non-intrusive discovery and capacity management of the memory module configuration of the server are realized.

[0082] In some embodiments, 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, including: Parsing the memory capacity correlation parameter between the target expansion device and the server to determine the 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 processor and the memory capacity of the target expansion device, wherein different central processors 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 processors in the server and the first total memory capacity; determining 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; determining a server memory capacity of the server according to the number of central processors in the server; in response to the comparison type being the first type, sequentially comparing the central processor memory capacity of each central processor and the first total memory capacity to determine the detection result of the server memory capacity; in response to the comparison type being the 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 the third type, comparing 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.

[0083] 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.

[0084] 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 to obtain the first total memory capacity.

[0085] 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 to obtain the expansion device total memory capacity, or by adding the memory capacities of all target expansion devices to obtain the expansion device total memory capacity on the machine.

[0086] 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 of the first total memory capacity of the connected expansion device.

[0087] 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 an improvement suggestion is generated according to the current data and fed back to the user.

[0088] Here, the second comparison type is to compare the correlation between the server memory capacity and the total memory capacity of the expansion device. For example, whether the total memory capacity of the server is more than 1.5 x CPU number times of the total memory capacity of all expansion devices of the same model.

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

[0090] 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 total memory capacity of the expansion device.

[0091] 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.

[0092] In this way, the problems such as process crash and task interruption caused by insufficient memory during long-time running are avoided.

[0093] In one embodiment, Figure 2 For the flowchart in the embodiment of the present application, as shown in the figure, Figure 2 The flow in the present application includes: investigating the special design requirements and the equipment ID of the equipment; 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; it is judged whether the matching is successful; if not, the process is ended; if yes, the design requirement related parameters of the equipment in the comparison are acquired and calculated; it is judged whether the equipment design requirements are met according to the related parameters, if yes, the process is ended, if not, the user is informed of the situation and given a processing suggestion; the user receives the information and performs remote processing.

[0094] It should be understood that although Figure 1 the steps in the flowcharts of Figure 2 are shown in sequential order, such that each step is performed after another, the steps are not necessarily performed in the order shown by the arrows. The execution of the steps is not necessarily limited to the order shown, unless otherwise specified herein. The steps can be performed in other orders. Figure 1 The steps in Figure 2 may include multiple sub-steps or stages, which are not necessarily performed at the same time, but can be performed at different times. The execution of the sub-steps or stages is not necessarily sequential, but can be performed in rotation or alternation with at least a part of other steps or sub-steps or stages of other steps.

[0095] From the above description of the embodiments, those skilled in the art can clearly understand that the method according to the above embodiments can be implemented by means of software and a general hardware platform required, and of course can also be implemented by hardware, but in many cases the former is a better implementation.

[0096] The embodiments of the present application also provide an abnormality detection device for server memory. The device comprises: a first processing module 301, configured to acquire device identifiers of at least one expansion device in a server, match the device identifiers of the at least one expansion device with standard device identifiers 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 device parameters of the target expansion device; a third processing module 303, configured to determine, according to the device parameters, a memory capacity of the target expansion device and server memory requirements corresponding to the target expansion device, wherein the server memory requirements comprise a memory capacity correlation parameter between the target expansion device and the server and a memory installation specification of the server; a fourth processing module 304, configured to detect, according to the memory installation specification of the server, a memory installation mode of each memory bank plugged into the server; and a fifth processing module 305, configured to, in response to a detection result of the memory installation mode being normal, acquire a memory capacity of the server, and determine a detection result of a 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.

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

[0098] As a preferred implementation, in the embodiment of the present application, the first processing module 301 is specifically further configured to: in response to there being multiple second sub-identifiers, sequentially match the multiple second sub-identifiers with multiple second sub-standard identifiers in the technical specification document; and in response to the multiple second sub-identifiers all passing the matching, determine that the expansion device is the target expansion device.

[0099] 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 acquire 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.

[0100] 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.

[0101] 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 plugged by the server through an access instruction; determine the in-place status of each memory bank according to the in-place signals of the memory slots; and detect the memory plugging mode of each in-place memory bank plugged by the server according to the memory requirement.

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

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

[0104] As a preferred implementation, in the embodiment of the present application, the fifth processing module 305 is specifically configured to: parse the memory capacity correlation parameter between the target expansion device and the server to determine the comparison type; determine the 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 the total expansion device memory capacity of the target expansion device according to the number of central processors in the server and the first total memory capacity; determine the central processor memory capacity of each central processor according to the memory capacity of each memory bank and the number of memory banks inserted by the central processor; determine the server memory capacity of the server according to the number of central processors in the server; in response to the comparison type being the first type, compare the central processor memory capacity of each central processor and the first total memory capacity in sequence to determine the detection result of the server memory capacity; in response to the comparison type being the second type, compare the server memory capacity and the total expansion device memory capacity to determine the detection result of the server memory capacity; and in response to the comparison type being the third type, compare the central processor memory capacity of each central processor, the first total memory capacity, the total expansion device memory capacity and the server memory capacity to determine the detection result of the server memory capacity.

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

[0106] The embodiment of the present application also provides an electronic device including 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 server memory anomaly detection method embodiments.

[0107] The electronic device can be a server, and its internal structure diagram can be as shown in Figure 4As shown. The computer device includes a processor, a memory, a network interface and a database connected through a system bus. Among them, the processor of the computer device is used to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium, 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 to run. The database of the computer device is used to store the abnormal detection data of the server memory. The network interface of the computer device is used to communicate with the external terminal through the network connection. The computer program is executed by the processor to implement a kind of server memory exception detection method.

[0108] Embodiments of the present application also provide a computer readable storage medium, the computer readable storage medium stores a computer program, wherein the computer program is configured to execute the steps in any of the above-mentioned server memory exception detection method embodiments when running.

[0109] In one exemplary embodiment, the above-mentioned computer readable storage medium can include, but is not limited to: a U disk, a read-only memory (Read-Only Memory, ROM for short), a random access memory (Random Access Memory, RAM for short), a mobile hard disk, a magnetic disk or an optical disk, and various media that can store computer programs.

[0110] Embodiments of the present application also provide a computer program product, the above-mentioned computer program product includes a computer program, the computer program is executed by the processor to implement the steps in any of the above-mentioned server memory exception detection method embodiments.

[0111] Embodiments of the present application also provide another computer program product, including a non-volatile computer readable storage medium, the non-volatile computer readable storage medium stores a computer program, the computer program is executed by the processor to implement the steps in any of the above-mentioned server memory exception detection method embodiments.

[0112] 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. Whether the functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. The skilled person can 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 application.

[0113] The above describes in detail a server memory exception detection method, an electronic device, a storage medium and a computer program product provided by the present application. The principles and implementation modes of the present application are described by applying specific examples, and the above description of the embodiments is only applicable to help understand the method of the present application and its core idea. It should be pointed out that, for those skilled in the art, 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 identification of at least one expansion device in the server, matching the device identification of the at least one expansion device with the standard device identification 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 plugged into 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.

2. The method of claim 1, wherein the server memory exception is detected by: The device identification comprises a first sub-identification and a second sub-identification, the standard device identification comprises a first sub-standard identification and a second sub-standard identification, and the obtaining of the device identification of at least one expansion device in the server, the matching of the device identification of the at least one expansion device with the standard device identification in the technical specification document, and the determination of a target expansion device comprise: obtaining the first sub-identification of at least one expansion device in the server, comparing the first sub-identification with the first sub-standard identification in the technical specification document, and determining 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; comparing the second sub-identification of each first expansion device with the second sub-standard identification in the technical specification document, and determining the 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.

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 comparison of the second sub-identification of each first expansion device with the second sub-standard identification in the technical specification document and the determination of the target expansion device in response to the second comparison result being the same comprise: in response to the presence of multiple second sub-identifications, sequentially matching multiple second sub-identifications with multiple second sub-standard identifications in the technical specification document; in response to the multiple second sub-identifications all passing the matching, determining that the expansion device is the target expansion device.

4. The method of claim 1, wherein the server memory exception is detected by: The device parameters comprise device attribute parameters, and the determination of the memory capacity of the target expansion device according to the device parameters comprises: in response to the device parameters comprising the memory capacity of the target expansion device and the fixed offset address of the memory capacity, determining the base address of the configuration space of the target expansion device through an expansion device specification algorithm according to the device attribute parameters of the target expansion device; determining 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; reading data of memory capacity of the target expansion device through a preset access method, and obtaining the memory capacity of the target expansion device; in response to the memory capacity of the target expansion device and a fixed offset address of the memory capacity not being included in the device parameters, determining the memory capacity of the target expansion device through a preset memory capacity library according to a device identifier 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 identifiers and design parameter data of the different expansion devices, wherein the design parameter data is related to memory capacity; determining memory capacity of an expansion device corresponding to the design parameter data according to the design parameter data; constructing an associated data structure of the standard device identifier 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 the server memory exception is detected by: Before the detecting the memory installation mode of each memory bank inserted into the server according to the memory installation specification of the server, the method further comprises: reading memory slot in-place signals of each memory bank inserted into the server through an access instruction; determining in-place conditions of each memory bank according to the memory slot in-place signals; detecting the memory insertion mode of each in-place memory bank inserted into the server according to the memory requirement.

7. The method of claim 1, wherein the server memory exception is detected by: The detecting the memory installation mode of each memory bank inserted into the server according to the memory installation specification of the server comprises: obtaining the insertion mode of each memory bank, and detecting whether each memory bank is symmetrically inserted; in response to each memory bank being symmetrically inserted, 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 the memory capacity of the server comprises: obtaining slave addresses of each memory bank inserted into the server; reading corresponding serial presence detect registers of each memory bank according to the slave addresses through a bus protocol; parsing the serial presence detect registers to determine the memory capacity of each memory bank; obtaining the memory capacity of the server according to the memory capacity of each memory bank.

9. The method of claim 1, wherein the server memory exception is detected by: The obtaining the memory capacity of the server 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, and determining a detection result of the server memory capacity 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 central processing units corresponding to the target expansion device 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 central processing unit memory capacities of each central processing unit according to the memory capacity of each memory bank and the number of memory banks inserted into 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 the first type, the central processor memory capacity of each central processor and the first total memory capacity are compared in sequence to determine the detection result of the server memory capacity; In response to the comparison type being the second type, the server memory capacity and the target expansion device total memory capacity are compared to determine the detection result of the server memory capacity; In response to the comparison type being the third type, 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 are compared to determine the detection result of the server memory capacity.

10. An electronic device, comprising: Comprise: a memory for storing a computer program; a processor for executing the computer program to implement the steps of the server memory abnormality detection method according to any one of claims 1 to 9.

Citation Information

Patent Citations

  • Memory capacity judging method, server and storage medium

    CN107908475A

  • Memory resource allocation method, device and equipment

    CN110399217A

  • Memory bank fault processing method and device, equipment and storage medium

    CN117667472A

  • Memory allocation method and electronic equipment

    CN118210629A

  • Memory testing method and system and electronic equipment

    CN118445133A