CN113253941A - 一种寄存器读取方法、装置、设备和介质 - Google Patents

一种寄存器读取方法、装置、设备和介质 Download PDF

Info

Publication number
CN113253941A
CN113253941A CN202110691287.7A CN202110691287A CN113253941A CN 113253941 A CN113253941 A CN 113253941A CN 202110691287 A CN202110691287 A CN 202110691287A CN 113253941 A CN113253941 A CN 113253941A
Authority
CN
China
Prior art keywords
register
reading
registers
read
mode
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202110691287.7A
Other languages
English (en)
Other versions
CN113253941B (zh
Inventor
候志立
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202110691287.7A priority Critical patent/CN113253941B/zh
Publication of CN113253941A publication Critical patent/CN113253941A/zh
Application granted granted Critical
Publication of CN113253941B publication Critical patent/CN113253941B/zh
Priority to PCT/CN2021/134433 priority patent/WO2022267349A1/zh
Priority to US18/036,603 priority patent/US11860718B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0778Dumping, i.e. gathering error/state information after a fault for later diagnosis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0721Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment within a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0772Means for error signaling, e.g. using interrupts, exception flags, dedicated error registers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0766Error or fault reporting or storing
    • G06F11/0787Storage of error reports, e.g. persistent data storage, storage using memory protection
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0793Remedial or corrective actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3003Monitoring arrangements specially adapted to the computing system or computing system component being monitored
    • G06F11/3024Monitoring arrangements specially adapted to the computing system or computing system component being monitored where the computing system component is a central processing unit [CPU]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/14Handling requests for interconnection or transfer
    • G06F13/20Handling requests for interconnection or transfer for access to input/output bus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • G06F3/0659Command handling arrangements, e.g. command buffers, queues, command scheduling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/30098Register arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3055Monitoring arrangements for monitoring the status of the computing system or of the computing system component, e.g. monitoring if the computing system is on, off, available, not available

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Health & Medical Sciences (AREA)
  • Biomedical Technology (AREA)
  • Software Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请提供一种寄存器读取方法、装置、设备和介质,本申请在服务器宕机后,触发CPU寄存器收集请求,不同类型的CPU对应的需要收集数据的寄存器类型和数量不同,因此,先确定与CPU类型需要读取的寄存器,确定寄存器的读取方式,规避了只能采用单指令的读取方式无法满足现场宕机分析需求的弊端,然后,采用PECI总线读取多个寄存器的寄存器数据,直接采用PECI总线收集CPU的寄存器,规避了中间通过ME转接造成的性能过分依赖于ME的稳定性的问题,极大地提高了寄存器的读取成功率。

Description

一种寄存器读取方法、装置、设备和介质
技术领域
本申请涉及寄存器读取技术领域,特别涉及一种寄存器读取方法、装置、设备和介质。
背景技术
服务器外部设备多种多样,生产厂商和规范也未完成完全的统一,再加上设备老化、设备故障等各种原因,某些PCIE(peripheral component interconnect express,高速串行计算机扩展总线标准)、内存或者CPU(Central Processing Unit,中央处理器)的故障会造成宕机等严重影响业务正常运转的情况。
BMC(Baseboard Management Controller,基板管理控制器)进行故障诊断的数据来源即通过PECI(Platform Environment Control Interface,平台环境式控制接口)从服务器的CPU中获取到的各种寄存器的数据,然后根据一定的规则实现故障定位和诊断功能,这种技术是BMC通过与ME交互发送RAW PECI命令实现CPU寄存器数据的获取。在BMC和CPU之间增加了一个ME的环节。当发生宕机故障时,若ME无法正常运行时,BMC根本没有办法获取到任何CPU寄存器的数据。
为了解决上述问题,相关技术采用BMC通过与CPU直连的PECI总线进行交互,通过单指令的方式获取到CPU寄存器的数据,这种方式避免了针对ME稳定性的依赖,但是由于CPU类型的不同采取的读取方式不同,单纯单靠单指令获取MSR(Model SpecificRegisters,特殊模块寄存器)或CSR(Control and Status Register,控制和状态寄存器)的数据会受到限制,并且,不同的原因导致的宕机也会造成通过单指令读取不到的问题的发生。
因此,如何提供一种解决上述技术问题的方案是本领域技术人员目前需要解决的问题。
发明内容
本申请的目的是提供一种寄存器读取方法、装置、设备和介质,能够提高寄存器读取的成功率。其具体方案如下:
本申请提供了一种寄存器读取方法,包括:
在服务器宕机后,BMC接收到CPU寄存器收集请求;
根据所述CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;
根据设定条件确定寄存器读取方式;
按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据。
优选地,按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据,包括:
将多个所述寄存器放入待读队列;
从所述待读队列中读取一个所述寄存器,按照所述寄存器读取方式采用所述PECI总线读取所述寄存器的待读寄存器数据;
当读取失败后,将所述寄存器放入轮询失败区的队尾;
当读取成功后,在所述待读队列不为空的情况下读取所述待读队列中的下一个寄存器,或,在所述待读队列为空的情况下,读取所述轮询失败区的寄存器,当所述轮询失败区的寄存器读取失败后,将所述轮询失败区读取失败的寄存器放入所述轮询失败区的队尾;
当达到设定条件后,停止寄存器读取操作。
优选地,还包括:
设置定时器的设定时间;
当满足读取时间达到所述设定时间、所有所述寄存器均读取完成、所述轮询失败区的寄存器的读取次数达到对应的设定次数中的任意一个时,停止读取寄存器数据。
优选地,还包括:
根据故障诊断中寄存器的重要性确定多个所述寄存器的读取优先级;其中,所述重要性为所述寄存器在故障诊断逻辑中的作用域、应用频次及应用诊断逻辑分支在整个故障诊断逻辑中的重要性;
根据所述寄存器的优先级确定所述轮询失败区的寄存器的读取次数,其中,高优先级的寄存器的读取次数不低于低优先级的寄存器的读取次数。
优选地,所述按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据之前,还包括:
判断上个CPU寄存器收集请求是否完成;
当完成后,执行所述按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据的步骤。
优选地,还包括:
统计所述多个寄存器的读取成功个数和失败个数,并记录服务器配置情况。
优选地,所述根据设定条件确定寄存器读取方式,包括:
根据所述CPU类型确定所述寄存器读取方式;
或,根据不同读取方式的读取成功率确定所述寄存器读取方式;
或,根据宕机场景与读取方式以及读取成功率的映射关系确定所述寄存器读取方式。
本申请提供了一种寄存器读取装置,包括:
请求接收模块,用于在服务器宕机后,BMC接收到CPU寄存器收集请求;
寄存器确定模块,用于根据所述CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;
寄存器读取方式确定模块,用于根据设定条件确定寄存器读取方式;
读取模块,用于按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据。
本申请提供了一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上所述寄存器读取方法的步骤。
本申请提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上所述寄存器读取方法的步骤。
本申请提供一种寄存器读取方法,包括:在服务器宕机后,BMC接收到CPU寄存器收集请求;根据CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;根据设定条件确定寄存器读取方式;按照寄存器读取方式采用PECI总线读取多个寄存器的寄存器数据。
可见,本申请在服务器宕机后,触发CPU寄存器收集请求,不同类型的CPU对应的需要收集数据的寄存器类型和数量不同,因此,先确定与CPU类型需要读取的寄存器,确定寄存器的读取方式,规避了只能采用单指令的读取方式无法满足现场宕机分析需求的弊端,然后,采用PECI总线读取多个寄存器的寄存器数据,直接采用PECI总线收集CPU的寄存器,规避了中间通过ME转接造成的性能过分依赖于ME的稳定性的问题,极大地提高了寄存器的读取成功率。
本申请同时还提供了一种寄存器读取装置、电子设备和介质,均具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
图1为本申请实施例提供的一种寄存器读取方法的流程图;
图2为本申请实施例提供的一种具体的寄存器读取的流程示意图;
图3为本申请实施例提供的一种寄存器读取装置的结构示意图;
图4为本申请实施例提供的一种电子设备的结构示意图;
图5为本申请实施例提供的另一种电子设备的结构图;
图6为本申请实施例提供的一种寄存区读取的流程示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
相关技术采用BMC通过与CPU直连的PECI总线进行交互,通过单指令的方式获取到CPU寄存器的数据,这种方式避免了针对ME稳定性的依赖,但是由于CPU类型的不同采取的读取方式不同,单纯单靠单指令获取MSR或CSR寄存器的数据会受到限制,并且,不同的原因导致的宕机也会造成通过单指令读取不到的问题的发生。
基于上述技术问题,本实施例提供一种寄存器读取方法,在服务器宕机后,触发CPU寄存器收集请求,不同类型的CPU对应的需要收集数据的寄存器类型和数量不同,因此,先确定与CPU类型需要读取的寄存器,确定寄存器的读取方式,规避了只能采用单指令的读取方式无法满足现场宕机分析需求的弊端,然后,采用PECI总线读取多个寄存器的寄存器数据,直接采用PECI总线收集CPU的寄存器,规避了中间通过ME转接造成的性能过分依赖于ME的稳定性的问题,极大地提高了寄存器的读取成功率,具体请参考图1,图1为本申请实施例提供的一种寄存器读取方法的流程图,具体包括:
S101、在服务器宕机后,BMC接收到CPU寄存器收集请求;
本申请主要针对的是服务器宕机后的寄存器中的数据的读取。在服务器宕机后,触发BMC收集CPU的寄存器数据的CPU寄存器收集请求。CPU寄存器收集请求中包括CPU类型及请求信息。
S102、根据CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;
不同类型的CPU对应的需要收集数据的寄存器类型和数量不同,包括核数也是不同的,这就需要根据BIOS(Basic Input Output System,基本输入输出***)检测到的使用的CPU类型来决定需要读取哪些CSR/MSR寄存器,因此,先确定与CPU类型需要读取的寄存器。
S103、根据设定条件确定寄存器读取方式;
本实施例不对设定条件进行限定,可根据需求选择。
进一步地,根据设定条件确定寄存器读取方式,包括:
根据CPU类型确定寄存器读取方式;
或,根据不同读取方式的读取成功率确定寄存器读取方式;
或,根据宕机场景与读取方式以及读取成功率的映射关系确定寄存器读取方式。
其中,PECI读取CPU寄存器的寄存器读取方式可以根据CPU类型确定寄存器读取方式,也就是根据设定的读取方式进行读取,该设定的读取方式包括单指令模式、sequence指令序列的形式和crash 的形式,具体可以是用户或者生产出厂的时候根据不同的CPU类型配置好的,可以通过带外的IPMI命令进行配置,该配置写入到主板上的EEPROM芯片(Electrically Erasable Programmable Read-Only Memory,带电可擦可编程只读存储器)中,不会随着BMC的固件更新发生变化。
寄存器读取方式的确定还可以是根据不同读取方式的读取成功率确定寄存器读取方式。其中,根据不同读取方式的寄存器读取成功率、现场诊断情况采用单指令读取方式、sequence读取方式、crash读取方式中的任何一种,具体通过IPMI命令由用户配置即可,基于统计经验类型进行选取能够极大地避免读取失败的情况的发生。
当然,寄存器读取方式还可以配置为自动选择,当配置为自动选择的时候,BMC会统计每种宕机场景和寄存器读取方式之间的关系和读取成功率,从三种寄存器读取方式读取中对于当前宕机场景和寄存器的成功率最高的一种方式进行读取。具体的,这种方式是BMC自动学习的一种方式,现场的服务器会出现各种各样的故障或宕机,故障或宕机次数也是多次出现,当出现宕机的时候,BMC会采用3种方式都进行读取,然后选择其中读取成功率最高的方式读取回来的寄存器进行分析,定位到故障原因,这个时候就会存在故障原因,读取方式,读取成功率的一种对应关系,当发生多次故障或宕机之后,会存在很多这样的对应关系数据,这个时候BMC就会统计针对其所在的服务器,哪种读取方式的成功率最高,当再出现故障的时候就采用这种读取方式,当某一次采用这种读取方式读取回来的寄存器定位故障失败的时候,则会再次重新学习,从3种(单指令读取方式、sequence读取方式、crash读取方式)选择一种最优的读取方式。
本步骤根据设定条件确定寄存器读取方式,规避了只能采用单指令的读取方式无法满足现场宕机分析需求的弊端。
S104、按照寄存器读取方式采用PECI总线读取多个寄存器的寄存器数据。
按照确定好的寄存器读取方式采用PECI总线读取寄存器数据,也规避了中间通过ME转接造成的性能过分依赖于ME的稳定性的问题。
基于上述技术方案,本实施例在服务器宕机后,触发CPU寄存器收集请求,不同类型的CPU对应的需要收集数据的寄存器类型和数量不同,因此,先确定与CPU类型需要读取的寄存器,确定寄存器的读取方式,规避了只能采用单指令的读取方式无法满足现场宕机分析需求的弊端,然后,采用PECI总线读取多个寄存器的寄存器数据,直接采用PECI总线收集CPU的寄存器,规避了中间通过ME转接造成的性能过分依赖于ME的稳定性的问题,极大地提高了寄存器的读取成功率。
进一步地,寄存器读取方法,还包括:
设置定时器的设定时间;
当达到设定时间后,停止读取寄存器数据。
本实施例中在定时器中设置了设定时间,主要原因包括:1、服务器宕机之后,BIOS会通过一定的机制保持服务器的宕机状态,但是存在一个时间限制,如果超过这个时间限制,服务器就会自动重启,重启之后CPU寄存器数据会自动清零,BMC再收集的寄存器数据没有分析价值;2、BMC进行寄存器数据收集的时候,当收集不回来的时候存在重试机制,这也需要一个时间限制,不能无限制重试。
可见,本实施例通过设定时间避免无效的寄存器数据的读取,提高了读取的效率。
进一步地,通过设置待读队列和轮询失败区,轮询待读寄存器,保证了每一个待读寄存器尽量都读取一遍,对于轮询失败区的待读寄存区也进行再次读取,提高读取的成功率,请参考图6,图6为本申请实施例提供的一种寄存区读取的流程示意图,包括:
S1041、将多个寄存器放入待读队列;
基于BIOS检测到的服务器的配置中的CPU的型号、核数、是否开启超线程,支持的寄存器类型、数量,决定需要读取哪些CSR/MSR寄存器,并将这些寄存器放入待读队列中。本实施例不对寄存器的数量进行限定,用户可根据实际情况确定。
S1042、从待读队列中读取一个寄存器,按照寄存器读取方式采用PECI总线读取寄存器的待读寄存器数据;
从待读队列中按照顺序读取一个待读寄存器,按照确定好的寄存器读取方式读取待读寄存器数据。
S1043、当读取失败后,将寄存器放入轮询失败区的队尾;
其中,轮询失败区包括所有的读取失败的待读寄存器,按照读取失败的时间的先后顺序进行排列。在读取失败后放入队尾。
本步骤将读取失败的待读寄存器放入轮询失败区的主要原因是由于设置了设定时间,如果一直针对一个待读寄存器读起来没有限制的话,会造成在这个时间内其他能够读取回来的待读寄存器没有被读取的机会。
S1044、当读取成功后,在待读队列不为空的情况下读取待读队列中的下一个寄存器,或,在待读队列为空的情况下,读取轮询失败区的寄存器,当轮询失败区的寄存器读取失败后,将轮询失败区读取失败的寄存器放入轮询失败区的队尾;
当读取成功后,读取下一个待读队列中的待读寄存器,直至待读队列为空,此时,读取轮询失败区的失败待读寄存器,此时也是按照顺序进行读取,当轮询失败区的寄存器读取失败后,将轮询失败区读取失败的寄存器放入轮询失败区的队尾。
本步骤只有在待读寄存器为空的情况下才读取轮询失败区的失败待读寄存器,主要是为了保证所有的待读寄存器都读取一遍,然后再针对失败的待读寄存器着重去读取。
S1045、当达到设定条件后,停止寄存器读取操作。
本步骤当达到设定条件后,避免了无效数据的读取,提高了读取的准确性。
本实施例不对设定条件进行限定,用户可根据实际需求进行设置,只要是能够实现本实施例的目的即可。可以是当读取时间达到设定时间后,停止读取,或者当所有的寄存器均读取完成同时读取成功;或者当寄存器读取的次数的最大值不超过设定次数。
基于上述技术方案,本实施例通过设置待读队列和轮询失败区,轮询待读寄存器,保证了每一个待读寄存器尽量都读取一遍,对于轮询失败区的待读寄存区也进行再次读取,提高读取的成功率。
进一步的,为了无效数据的读取,提高了读取的准确性,存器读取方法还包括:设置定时器的设定时间;当满足读取时间达到设定时间、所有寄存器均读取完成、轮询失败区的寄存器的读取次数达到对应的设定次数中的任意一个时,停止读取寄存器数据。
具体的,当满足子条件A读取时间达到设定时间、子条件B所有寄存器均读取完成、子条件C轮询失败区的寄存器的读取次数达到对应的设定次数,中的任意一个时,停止读取寄存器数据。其中,所有寄存器均读取完成为所有寄存器均成功读取。轮询失败区的寄存器的设定次数可以根据实际需求设置,可以是每一寄存器均对应一个设定次数,还可以是目标寄存器对应设定次数。
基于上述技术方案,本实施例当满足读取时间达到设定时间、所有寄存器均读取完成、轮询失败区的寄存器的读取次数达到对应的设定次数中的任意一个时,停止读取寄存器数据;能够避免无效数据的读取,提高了读取的准确性。
进一步的,寄存器读取方法,还包括:
根据故障诊断中寄存器的重要性确定多个寄存器的读取优先级;其中,重要性为寄存器在故障诊断逻辑中的作用域、应用频次及应用诊断逻辑分支在整个故障诊断逻辑中的重要性;
根据寄存器的优先级确定轮询失败区的寄存器的读取次数,其中,高优先级的寄存器的读取次数不低于低优先级的寄存器的读取次数。
本实施例根据故障诊断中寄存器的重要性确定了寄存器读取优先级,其中,针对CSR和MSR寄存器进行分类和优先级划分,将CSR和MSR寄存器按照其在故障诊断逻辑中的作用域、应用频次及应用诊断逻辑分支在整个故障诊断逻辑中的重要性,确定寄存器的优先级。具体的,将寄存器的优先级分为高优先级读取,中优先级读取,低优先级读取。优先级的划定限在整个PECI读取寄存器的第二阶段(轮询失败区的寄存器读取),即针对首次读取失败的寄存器的重试读取阶段,并规定,高优先级每次读取重试第一次数,中优先级每次读取重试第二次数,低优先级第三次数,其中,第一次数≥第二次数≥第三次数,第三次数>0,通过针对不同优先级的寄存器的读取重试权重的不同,确保提高高优先级的寄存器的读取成功率,从而为整个故障诊断逻辑提供高质量的寄存器分析数据。
进一步地,寄存器读取方法,还包括:
判断上个CPU寄存器收集请求是否完成;
当完成后,执行按照寄存器读取方式采用PECI总线读取待读寄存器的待读寄存器数据的步骤。
本实施例在上个CPU寄存器收集请求完成后在执行步骤S104;如果未完成,则先完成上个CPU寄存器收集请求,直至完成后在执行步骤S104。保证了上个CPU寄存器收集请求收集完成数据。
进一步地,还包括:统计多个寄存器的读取成功个数和失败个数,并记录服务器配置情况。
本实施例中统计成功个数为最终的读取成功的个数,记录当前服务器的配置情况,以便技术人员进行查看。
进一步地,还包括:
通过CPU pin脚的电平信息确定服务器是否宕机。
其中,服务器宕机之后会通过CPU上特有的pin脚通知BMC,当BMC检测到该pin脚的高低电平发生变化的时候,就说明存在宕机事件发生,就需要去收集对应的CPU寄存器并按照一定的规则进行故障诊断和定位。
基于上述任一实施例,本实施例提供一种具体的提高服务器CPU PECI读取成功率的方法的流程,具体请参考图2,图2为本申请实施例提供的一种具体的寄存器读取的流程示意图,包括:
S1、服务器宕机之后触发BMC收集CPU的寄存器数据;
S2、判断上次的寄存器数据收集任务是否完成;
如果完成了则转步骤S3,如果没有完成则等待2s后重复步骤S2;
S3、设置定时器;
设置定时器的设定时间为180s(这个时间为BMC收集CPU寄存器整个流程的总时间,在CPU寄存器的收集流程中检测到时间到了则直接退出PECI的收集,另外,这个时间的值是可以通过命令根据现场服务器的配置和应用场景按需灵活配置的);
S4、根据当前服务器的配置,将待读的CPU的CSR和MSR寄存器放入待读队列;
S5、从CSR/MSR的待读队列中取出一个待读寄存器,然后根据设定的读取方式读取对应的寄存器的数据;
设定的读取方式包括单指令读取方式,sequence读取方式,crash读取方式,可以通过命令根据现场环境和场景进行配置,也可以配置为auto,当配置为auto的时候,bmc会统计每种宕机场景和读取方式之间的关系和成功率,从三种读取方式中取出读取成功率最高的一种方式进行读取。
S6、判断读取是否成功;
读取失败则将对应的寄存器放入轮询失败区,成功则转入步骤S7。
S7、判定定时器时间是否到达;
如果到达则终止PECI的读取流程,如果没有达到则转步骤S8。
S8、判断当前CSR/MSR的读取队列是否为空,如果为空则转步骤S9,如果不为空,则从其中取出一个寄存器重复步骤S5-S8。
S9、判断轮询失败区是否为空;
如果为空则终止CPU寄存器的收集流程;
S10、如果不为空,则从轮询失败区取出一个CSR/MSR寄存器进行读取。
S11、读取失败则放到轮询失败区的队尾;
S12、判定定时器时间是否到达;
时间到达则退出PECI寄存器读取流程,时间没有到达则重复步骤S9-S11。
S13、统计当前读取成功的寄存器个数,失败寄存器个数及当前服务器的配置情况记录日志。
可见,本实施例不局限于一种PECI读取方式,可以根据设定选择通过单指令,sequence方式还是crash方式读取CPU的寄存器,也可以根据BMC前期每种方式的读取成功率自适应学习一种更合适该故障的PECI读取方式;还提供了一个定时器机制,可以根据客户的实际应用场景设置定时器的数值,用这个定时器来整体控制整个流程的执行时间;同时通过首先轮询一次的方式读取一遍CSR/MSR寄存器的方式,然后再按定时器时间进行轮询,保证每个寄存器都可以至少读取一遍。
下面对本申请实施例提供的一种寄存器读取装置进行介绍,下文描述的装置与上文描述的方法可相互对应参照,参考图3,图3为本申请实施例提供的一种寄存器读取装置的结构示意图,包括:
请求接收模块301,用于确定服务器宕机后,BMC接收到CPU寄存器收集请求;
寄存器确定模块302,用于根据CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;
寄存器读取方式确定模块303,用于根据设定条件确定寄存器读取方式;
读取模块304,用于按照寄存器读取方式采用PECI总线读取多个寄存器的寄存器数据。
进一步的,寄存器读取方式确定模块303,包括:
放入待读队列单元,用于将多个寄存器放入待读队列;
第一读取单元,用于从待读队列中读取一个寄存器,按照寄存器读取方式采用PECI总线读取寄存器的待读寄存器数据;
放入轮询失败区单元,用于当读取失败后,将寄存器放入轮询失败区的队尾;
第二读取单元,用于当读取成功后,在待读队列不为空的情况下读取待读队列中的下一个寄存器,或,在待读队列为空的情况下,读取轮询失败区的寄存器,当轮询失败区的寄存器读取失败后,将轮询失败区读取失败的寄存器放入轮询失败区的队尾;
停止单元,用于当达到设定条件后,停止寄存器读取操作。
进一步的,还包括:
时间设置模块,用于:设置定时器的设定时间;
对应的,停止单元具体用于:当满足读取时间达到设定时间、所有寄存器均读取完成、轮询失败区的寄存器的读取次数达到对应的设定次数中的任意一个时,停止读取寄存器数据。
进一步的,还包括:
优先级确定模块,用于:根据故障诊断中寄存器的重要性确定多个寄存器的读取优先级;其中,重要性为寄存器在故障诊断逻辑中的作用域、应用频次及应用诊断逻辑分支在整个故障诊断逻辑中的重要性;
优先级次数确定模块,用于:根据寄存器的优先级确定轮询失败区的寄存器的读取次数,其中,高优先级的寄存器的读取次数不低于低优先级的寄存器的读取次数。
进一步的,寄存器读取方式确定模块303,还包括:
判断单元,用于判断上个CPU寄存器收集请求是否完成;
执行单元,用于当完成后,执行按照寄存器读取方式采用PECI总线读取待读寄存器的待读寄存器数据的步骤。
进一步的,还包括:
统计与记录模块,用于统计多个寄存器的读取成功个数和失败个数,并记录服务器配置情况。
进一步的,寄存器读取方式确定模块303,用于:
根据CPU类型确定寄存器读取方式;
或,根据不同读取方式的读取成功率确定寄存器读取方式;
或,根据宕机场景与读取方式以及读取成功率的映射关系确定寄存器读取方式。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
下面对本申请实施例提供的一种电子设备进行介绍,下文描述的电子设备与上文描述的方法可相互对应参照。请参考图4,图4为本申请实施例提供的一种电子设备的结构示意图,包括:
存储器100,用于存储计算机程序;
处理器200,用于执行计算机程序时实现如上述方法的步骤。
存储器100包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***和计算机可读指令,该内存储器为非易失性存储介质中的操作***和计算机可读指令的运行提供环境。处理器200为电子设备提供计算和控制能力,执行存储器100中保存的计算机程序时,可以实现以下步骤:在服务器宕机后,BMC接收到CPU寄存器收集请求;根据CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;根据设定条件确定寄存器读取方式;按照寄存器读取方式采用PECI总线读取多个寄存器的寄存器数据。
可见,本申请在服务器宕机后,触发CPU寄存器收集请求,不同类型的CPU对应的需要收集数据的寄存器类型和数量不同,因此,先确定与CPU类型需要读取的寄存器,确定寄存器的读取方式,规避了只能采用单指令的读取方式无法满足现场宕机分析需求的弊端,然后,采用PECI总线读取多个寄存器的寄存器数据,直接采用PECI总线收集CPU的寄存器,规避了中间通过ME转接造成的性能过分依赖于ME的稳定性的问题,极大地提高了寄存器的读取成功率。
在一些具体的实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:将多个寄存器放入待读队列;
从待读队列中读取一个寄存器,按照寄存器读取方式采用PECI总线读取寄存器的待读寄存器数据;
当读取失败后,将寄存器放入轮询失败区的队尾;
当读取成功后,在待读队列不为空的情况下读取待读队列中的下一个寄存器,或,在待读队列为空的情况下,读取轮询失败区的寄存器,当轮询失败区的寄存器读取失败后,将轮询失败区读取失败的寄存器放入轮询失败区的队尾;
当达到设定条件后,停止寄存器读取操作。
在一些具体的实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:设置定时器的设定时间;
当满足读取时间达到设定时间、所有寄存器均读取完成、轮询失败区的寄存器的读取次数达到对应的设定次数中的任意一个时,停止读取寄存器数据。
在一些具体的实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:根据故障诊断中寄存器的重要性确定多个寄存器的读取优先级;其中,重要性为寄存器在故障诊断逻辑中的作用域、应用频次及应用诊断逻辑分支在整个故障诊断逻辑中的重要性;
根据寄存器的优先级确定轮询失败区的寄存器的读取次数,其中,高优先级的寄存器的读取次数不低于低优先级的寄存器的读取次数。
在一些具体的实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:判断上个CPU寄存器收集请求是否完成;当完成后,执行按照寄存器读取方式采用PECI总线读取待读寄存器的待读寄存器数据的步骤。
在一些具体的实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:统计多个寄存器的读取成功个数和失败个数,并记录服务器配置情况。
在一些具体的实施例中,处理器200执行存储器100中保存的计算机子程序时,可以实现以下步骤:根据CPU类型确定寄存器读取方式;或,根据不同读取方式的读取成功率确定寄存器读取方式;或,根据宕机场景与读取方式以及读取成功率的映射关系确定寄存器读取方式。
在上述实施例的基础上,作为优选实施方式,参见图5,图5为本申请实施例提供的另一种电子设备的结构图,该电子设备还包括:
输入接口300,与处理器200相连,用于获取外部导入的计算机程序、参数和指令,经处理器200控制保存至存储器100中。该输入接口300可以与输入装置相连,接收用户手动输入的参数或指令。该输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是键盘、触控板或鼠标等。
显示单元400,与处理器200相连,用于显示处理器200发送的数据。该显示单元400可以为PC机(Personal Computer,个人计算机)上的显示屏、液晶显示屏或者电子墨水显示屏等。
网络端口500,与处理器200相连,用于与外部各终端设备进行通信连接。该通信连接所采用的通信技术可以为有线通信技术或无线通信技术,如移动高清链接技术(MobileHigh-Definition Link,MHL)、通用串行总线(Universal Serial Bus ,USB)、高清多媒体接口(High Definition Multimedia Interface,HDMI)、无线保真技术(WiFi)、蓝牙通信技术、低功耗蓝牙通信技术、基于IEEE802.11s的通信技术等。
由于电子设备部分的实施例与方法部分的实施例相互对应,因此电子设备部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
下面对本申请实施例提供的一种计算机可读存储介质进行介绍,下文描述的计算机可读存储介质与上文描述的方法可相互对应参照。
本申请公开了一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上寄存器读取方法的步骤。
由于计算机可读存储介质部分的实施例与方法部分的实施例相互对应,因此计算机可读存储介质部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
以上对本申请所提供的一种寄存器读取方法、装置、设备和介质进行了详细介绍。本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

Claims (9)

1.一种寄存器读取方法,其特征在于,包括:
在服务器宕机后,BMC接收到CPU寄存器收集请求;
根据所述CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;
根据设定条件确定寄存器读取方式;所述寄存器读取方式包括单指令模式、sequence指令序列的形式和crash 的形式,且所述寄存器读取方式还可配置为自动选择,当配置为自动选择的时候,BMC会统计每种宕机场景和寄存器读取方式之间的关系和读取成功率,从三种寄存器读取方式读取中对于当前宕机场景和寄存器的成功率最高的一种方式进行读取;
按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据;
按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据,包括:
将多个所述寄存器放入待读队列;
从所述待读队列中读取一个所述寄存器,按照所述寄存器读取方式采用所述PECI总线读取所述寄存器的待读寄存器数据;
当读取失败后,将所述寄存器放入轮询失败区的队尾;
当读取成功后,在所述待读队列不为空的情况下读取所述待读队列中的下一个寄存器,或,在所述待读队列为空的情况下,读取所述轮询失败区的寄存器,当所述轮询失败区的寄存器读取失败后,将所述轮询失败区读取失败的寄存器放入所述轮询失败区的队尾;
当达到设定条件后,停止寄存器读取操作。
2.根据权利要求1所述的寄存器读取方法,其特征在于,还包括:
设置定时器的设定时间;
当满足读取时间达到所述设定时间、所有所述寄存器均读取完成、所述轮询失败区的寄存器的读取次数达到对应的设定次数中的任意一个时,停止读取寄存器数据。
3.根据权利要求2所述的寄存器读取方法,其特征在于,还包括:
根据故障诊断中寄存器的重要性确定多个所述寄存器的读取优先级;其中,所述重要性为所述寄存器在故障诊断逻辑中的作用域、应用频次及应用诊断逻辑分支在整个故障诊断逻辑中的重要性;
根据所述寄存器的优先级确定所述轮询失败区的寄存器的读取次数,其中,高优先级的寄存器的读取次数不低于低优先级的寄存器的读取次数。
4.根据权利要求1所述的寄存器读取方法,其特征在于,所述按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据之前,还包括:
判断上个CPU寄存器收集请求是否完成;
当完成后,执行所述按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据的步骤。
5.根据权利要求1所述的寄存器读取方法,其特征在于,还包括:
统计所述多个寄存器的读取成功个数和失败个数,并记录服务器配置情况。
6.根据权利要求1至5任一项所述的寄存器读取方法,其特征在于,所述根据设定条件确定寄存器读取方式,包括:
根据所述CPU类型确定所述寄存器读取方式;
或,根据不同读取方式的读取成功率确定所述寄存器读取方式;
或,根据宕机场景与读取方式以及读取成功率的映射关系确定所述寄存器读取方式。
7.一种寄存器读取装置,其特征在于,包括:
请求接收模块,用于在服务器宕机后,BMC接收到CPU寄存器收集请求;
寄存器确定模块,用于根据所述CPU寄存器收集请求,确定与CPU类型对应的多个寄存器;
寄存器读取方式确定模块,用于根据设定条件确定寄存器读取方式;所述寄存器读取方式包括单指令模式、sequence指令序列的形式和crash 的形式,且所述寄存器读取方式还可配置为自动选择,当配置为自动选择的时候,BMC会统计每种宕机场景和寄存器读取方式之间的关系和读取成功率,从三种寄存器读取方式读取中对于当前宕机场景和寄存器的成功率最高的一种方式进行读取;
读取模块,用于按照所述寄存器读取方式采用PECI总线读取多个所述寄存器的寄存器数据;
所述读取模块包括:
放入待读队列单元,用于将多个所述寄存器放入待读队列;
第一读取单元,用于从所述待读队列中读取一个所述寄存器,按照所述寄存器读取方式采用所述PECI总线读取所述寄存器的待读寄存器数据;
放入轮询失败区单元,用于当读取失败后,将所述寄存器放入轮询失败区的队尾;
第二读取单元,用于当读取成功后,在所述待读队列不为空的情况下读取所述待读队列中的下一个寄存器,或,在所述待读队列为空的情况下,读取所述轮询失败区的寄存器,当所述轮询失败区的寄存器读取失败后,将所述轮询失败区读取失败的寄存器放入所述轮询失败区的队尾;
停止单元,用于当达到设定条件后,停止寄存器读取操作。
8.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述寄存器读取方法的步骤。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述寄存器读取方法的步骤。
CN202110691287.7A 2021-06-22 2021-06-22 一种寄存器读取方法、装置、设备和介质 Active CN113253941B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202110691287.7A CN113253941B (zh) 2021-06-22 2021-06-22 一种寄存器读取方法、装置、设备和介质
PCT/CN2021/134433 WO2022267349A1 (zh) 2021-06-22 2021-11-30 一种寄存器读取方法、装置、设备和介质
US18/036,603 US11860718B2 (en) 2021-06-22 2021-11-30 Register reading method and apparatus, device, and medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110691287.7A CN113253941B (zh) 2021-06-22 2021-06-22 一种寄存器读取方法、装置、设备和介质

Publications (2)

Publication Number Publication Date
CN113253941A true CN113253941A (zh) 2021-08-13
CN113253941B CN113253941B (zh) 2021-10-15

Family

ID=77189108

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110691287.7A Active CN113253941B (zh) 2021-06-22 2021-06-22 一种寄存器读取方法、装置、设备和介质

Country Status (3)

Country Link
US (1) US11860718B2 (zh)
CN (1) CN113253941B (zh)
WO (1) WO2022267349A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022267349A1 (zh) * 2021-06-22 2022-12-29 苏州浪潮智能科技有限公司 一种寄存器读取方法、装置、设备和介质

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116489536B (zh) * 2023-05-06 2024-02-13 北京众谊越泰科技有限公司 基于modbusRTU协议通信的高效点位采集方法及装置
CN117591380B (zh) * 2024-01-18 2024-05-03 芯动微电子科技(武汉)有限公司 一种总线性能监测的方法和装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160099886A1 (en) * 2014-10-07 2016-04-07 Dell Products, L.P. Master baseboard management controller election and replacement sub-system enabling decentralized resource management control
CN109189602A (zh) * 2018-09-21 2019-01-11 郑州云海信息技术有限公司 一种PCIE Slot故障定位方法、装置以及设备
CN109542752A (zh) * 2018-11-28 2019-03-29 郑州云海信息技术有限公司 一种服务器PCIe设备故障记录的***及方法
CN109614259A (zh) * 2018-11-28 2019-04-12 郑州云海信息技术有限公司 一种服务器PCIe设备定位故障原因的***及方法
CN110362435A (zh) * 2019-06-25 2019-10-22 苏州浪潮智能科技有限公司 Purley平台服务器的PCIE故障定位方法、装置、设备及介质
CN110515802A (zh) * 2019-08-23 2019-11-29 苏州浪潮智能科技有限公司 一种服务器开机故障的监测方法、***及相关组件
CN111048139A (zh) * 2019-12-22 2020-04-21 苏州浪潮智能科技有限公司 一种存储介质检测方法、装置、设备及可读存储介质
CN111538679A (zh) * 2020-05-12 2020-08-14 中国电子科技集团公司第十四研究所 一种基于内嵌dma的处理器数据预取设计
CN111767184A (zh) * 2020-09-01 2020-10-13 苏州浪潮智能科技有限公司 一种故障诊断方法、装置及电子设备和存储介质

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080270827A1 (en) * 2007-04-26 2008-10-30 International Business Machines Corporation Recovering diagnostic data after out-of-band data capture failure
US10474518B1 (en) * 2016-12-06 2019-11-12 Juniper Networks, Inc. Obtaining historical information in a device core dump
US11294749B2 (en) * 2017-12-30 2022-04-05 Intel Corporation Techniques to collect crash data for a computing system
CN109783262B (zh) * 2018-12-24 2022-10-11 新华三技术有限公司 故障数据处理方法、装置、服务器及计算机可读存储介质
CN109947596A (zh) * 2019-03-19 2019-06-28 浪潮商用机器有限公司 Pcie设备故障***宕机处理方法、装置及相关组件
US11360839B1 (en) * 2021-02-26 2022-06-14 Quanta Computer Inc. Systems and methods for storing error data from a crash dump in a computer system
CN113253941B (zh) * 2021-06-22 2021-10-15 苏州浪潮智能科技有限公司 一种寄存器读取方法、装置、设备和介质

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160099886A1 (en) * 2014-10-07 2016-04-07 Dell Products, L.P. Master baseboard management controller election and replacement sub-system enabling decentralized resource management control
CN109189602A (zh) * 2018-09-21 2019-01-11 郑州云海信息技术有限公司 一种PCIE Slot故障定位方法、装置以及设备
CN109542752A (zh) * 2018-11-28 2019-03-29 郑州云海信息技术有限公司 一种服务器PCIe设备故障记录的***及方法
CN109614259A (zh) * 2018-11-28 2019-04-12 郑州云海信息技术有限公司 一种服务器PCIe设备定位故障原因的***及方法
CN110362435A (zh) * 2019-06-25 2019-10-22 苏州浪潮智能科技有限公司 Purley平台服务器的PCIE故障定位方法、装置、设备及介质
CN110515802A (zh) * 2019-08-23 2019-11-29 苏州浪潮智能科技有限公司 一种服务器开机故障的监测方法、***及相关组件
CN111048139A (zh) * 2019-12-22 2020-04-21 苏州浪潮智能科技有限公司 一种存储介质检测方法、装置、设备及可读存储介质
CN111538679A (zh) * 2020-05-12 2020-08-14 中国电子科技集团公司第十四研究所 一种基于内嵌dma的处理器数据预取设计
CN111767184A (zh) * 2020-09-01 2020-10-13 苏州浪潮智能科技有限公司 一种故障诊断方法、装置及电子设备和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
XIAOYANG ZENG;YI LI;YUEJUN ZHANG;SHUJIE TAN;JUN HAN: ""Design and Analysis of Highly Energy/Area-Efficient Multiported Register Files With Read Word-Line Sharing Strategy in 65-nm CMOS Process"", 《IEEE TRANSACTIONS ON VERY LARGE SCALE INTEGRATION (VLSI) SYSTEMS》 *
李颖聃: ""寄存器传输级设计内部,多个相似命名端口信号值的批量读取方法"", 《中国集成电路》 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022267349A1 (zh) * 2021-06-22 2022-12-29 苏州浪潮智能科技有限公司 一种寄存器读取方法、装置、设备和介质
US11860718B2 (en) 2021-06-22 2024-01-02 Inspur Suzhou Intelligent Technology Co., Ltd. Register reading method and apparatus, device, and medium

Also Published As

Publication number Publication date
US20230393924A1 (en) 2023-12-07
WO2022267349A1 (zh) 2022-12-29
US11860718B2 (en) 2024-01-02
CN113253941B (zh) 2021-10-15

Similar Documents

Publication Publication Date Title
CN113253941B (zh) 一种寄存器读取方法、装置、设备和介质
US10585755B2 (en) Electronic apparatus and method for restarting a central processing unit (CPU) in response to detecting an abnormality
CN103201724B (zh) 在高可用性虚拟机环境中提供高可用性应用程序
CN111767184A (zh) 一种故障诊断方法、装置及电子设备和存储介质
JP5593856B2 (ja) 情報処理装置およびドライバ実行制御方法
CN110362402B (zh) 一种负载均衡方法、装置、设备及可读存储介质
WO2023115999A1 (zh) 设备状态监控方法、装置、设备及计算机可读存储介质
JP2010086364A (ja) 情報処理装置、動作状態監視装置および方法
CN112395122A (zh) 闪存控制器及闪存控制器的方法
TWI709039B (zh) 伺服器及錯誤事件紀錄登載功能的控制方法
CN115599617B (zh) 总线检测方法、装置、服务器及电子设备
CN114564334B (zh) 一种mrpc数据处理方法、***及相关组件
US20130318310A1 (en) Processor processing method and processor system
CN113254062B (zh) 一种bmc参数配置及生效的方法、装置、设备和介质
WO2023024248A1 (zh) 一种总线异常处置方法、装置、电子设备及可读存储介质
CN115202946A (zh) 自动化测试方法、装置、设备、存储介质及程序产品
CN113742113A (zh) 一种嵌入式***健康管理方法、设备及储存介质
US11232197B2 (en) Computer system and device management method
JP2015130023A (ja) 情報記録装置、情報処理装置、情報記録方法、及び情報記録プログラム
CN117873853B (zh) 数据记录方法、装置、电子设备及介质
CN109271188A (zh) 一种cpld升级方法及相关装置
CN114297009A (zh) 一种服务器测试的方法及装置、电子设备
JP4432975B2 (ja) パケット通信デバイス、パケット通信方法、およびパケット通信プログラム
JP2005242929A (ja) 共有メモリのアクセス方法及びデータ処理装置
JP7069551B2 (ja) 情報処理装置及び情報処理方法

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant