CN115801540A - 一种PCIe设备降级检测方法、装置、终端及存储介质 - Google Patents
一种PCIe设备降级检测方法、装置、终端及存储介质 Download PDFInfo
- Publication number
- CN115801540A CN115801540A CN202211449357.9A CN202211449357A CN115801540A CN 115801540 A CN115801540 A CN 115801540A CN 202211449357 A CN202211449357 A CN 202211449357A CN 115801540 A CN115801540 A CN 115801540A
- Authority
- CN
- China
- Prior art keywords
- rated
- bandwidth
- pcie
- actual
- pcie device
- 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
Links
- 230000015556 catabolic process Effects 0.000 title claims abstract description 128
- 238000006731 degradation reaction Methods 0.000 title claims abstract description 128
- 238000001514 detection method Methods 0.000 title claims abstract description 32
- 238000012549 training Methods 0.000 claims abstract description 70
- 238000000034 method Methods 0.000 claims abstract description 51
- 230000008569 process Effects 0.000 claims abstract description 25
- 230000002159 abnormal effect Effects 0.000 claims abstract description 19
- 238000011144 upstream manufacturing Methods 0.000 claims description 23
- 230000008439 repair process Effects 0.000 claims description 21
- 238000003745 diagnosis Methods 0.000 claims description 20
- 230000005856 abnormality Effects 0.000 claims description 9
- 230000003993 interaction Effects 0.000 claims description 6
- 238000011084 recovery Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 238000004891 communication Methods 0.000 description 6
- 230000002093 peripheral effect Effects 0.000 description 4
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 230000009467 reduction Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000002405 diagnostic procedure Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012800 visualization Methods 0.000 description 1
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Debugging And Monitoring (AREA)
Abstract
本发明涉及PCIe设备性能检测领域,具体公开一种PCIe设备降级检测方法、装置、终端及存储介质,获取PCIe设备的实际速率和实际带宽,获取PCIe设备的额定速率和额定带宽,根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障,若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。本发明在PCIe设备出现降级问题时,对PCIe设备链路进行重复训练,确定出具体的链路故障位置,为PCIe设备的修复提供信息,提高PCIe设备修复有效性。
Description
技术领域
本发明涉及PCIe设备性能检测领域,具体涉及一种PCIe设备降级检测方法、装置、终端及存储介质。
背景技术
在计算机发展早期,为了实现CPU与外部设备进行信息交互,设计出了ISA、MCA、PCI等架构和规范。其中PCI总线作为局部总线中的一类,较为广泛地运用服务器领域,然而,随着经济科技的发展,人们对服务器、外部设备的性能需求提高,总线频率提高、带宽增加、鲁棒性需求增加,所以PCI总线不再适用于现代科技技术。
随之而来,PCIe作为高速串行计算机扩展总线标准被Intel提出,PCIe标准基于PCI规范,将并行的方式改为串行,有效地提高了信号的抗干扰性,而使用PCIe标准的外部设备可以被称为PCIe设备,在服务器领域较为常见的PCIe设备有网卡、RAID卡、GPU、FPGA卡、NVME盘等。
PCIe设备的带宽和速率作为平时使用服务器过程中比较关注的参数,这两个参数对PCIe设备的性能有很大的影响力,若PCIe设备的带宽和速率出现异常,则该设备的功能会受到影响,不能够有效地使用。PCIe设备的带宽指的是实现数据传输的Lane数量,一般情况下带宽有x1,x2,x4,x8,x16几种类型。PCIe设备的速率指的是每条Lane的速率,有Gen 1(2.5Gb/s)、Gen 2(5Gb/s)、Gen 3(8Gb/s)、Gen 4(16Gb/s),在Intel Whitley平台上最大可支持到Gen 4的速率。
事实上,PCIe设备的带宽有额定带宽和实际带宽之分,同样的速率有额定速率和实际速率的区别。额定带宽和额定速率指的是该设备支持的最大带宽和速率,而实际带宽和速率有可能和额定带宽、速率不同,因为实际带宽和速率是PCIe设备和服务器主板间协商出来的结果,比如PCIe设备的额定带宽x16,而它通过线缆连接到主板上的口只有x8,协商出来的实际带宽为x8。
PCIe设备降级问题指的是PCIe设备的实际带宽、实际速率小于额定带宽、额定速率,出现该问题时PCIe设备出于异常状态,其功能受到影响,一般情况下,出现该问题是由于物理链路上的信号质量不佳。因此,诊断PCIe设备降级问题尤为重要。
当前对PCIe设备的检测方案一般是根据额定带宽、额定速率与实际带宽、实际速率的比对来检测是否有降速,在出现降速问题时再根据PCIe日志中记录的信息进行修复。然而,从PCIe设备日志中获取故障信息并不能准确获知到底是链路中哪一环节出现了问题,影响修复有效性。
发明内容
为解决上述问题,本发明提供一种PCIe设备降级检测方法、装置、终端及存储介质,在PCIe设备出现降级问题时,对PCIe设备链路进行重复训练,确定出具体的链路故障,为PCIe设备的修复提供准确信息,提高PCIe设备修复有效性。
第一方面,本发明的技术方案提供一种PCIe设备降级检测方法,包括以下步骤:
获取PCIe设备的实际速率和实际带宽;
获取PCIe设备的额定速率和额定带宽;
根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障;
若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
进一步地,根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障,具体包括:
检测PCIe设备的实际速率与额定速率的大小关系,以及实际带宽与额定带宽的大小关系;
若PCIe设备的实际速率等于额定速率,且实际带宽等于额定带宽,则PCIe设备无降级故障;
若PCIe设备的实际速率小于额定速率和/或实际带宽小于额定带宽,则获取PCIe设备所在链路上所有PCIe设备的额定速率和额定带宽;
从所有PCIe设备的额定速率中选取最小额定速率作为额定速率参考值,从所有PCIe设备的额定带宽中选取最小额定带宽作为额定带宽参考值;
检测PCIe设备的实际速率与额定速率参考值的大小关系,以及实际带宽与额定带宽参考值的大小关系;
若PCIe设备的实际速率等于额定速率参考值,且实际带宽等于额定带宽参考值,则PCIe设备无降级故障;
若PCIe设备的实际速率小于额定速率参考值和/或实际带宽小于额定带宽参考值,则PCIe设备出现降级故障。
进一步地,若PCIe设备在其链路上既有上游设备又有下游设备,则该方法在检测到PCIe设备的实际速率小于额定速率和/或实际带宽小于额定带宽时,具体包括以下步骤:
获取所有上游设备的额定速率和额定带宽;
从所有上游设备的额定速率中选取最小额定速率作为第一额定速率参考值,从所有上游设备的额定带宽中选取最小额定带宽作为第一额定带宽参考值;
检测PCIe设备的实际速率与第一额定速率参考值的大小关系,以及实际带宽与第一额定带宽参考值的大小关系;
若PCIe设备的实际速率等于第一额定速率参考值,且实际带宽等于第一额定带宽参考值,则PCIe设备无降级故障;
若PCIe设备的实际速率小于第一额定速率参考值和/或实际带宽小于第一额定带宽参考值,则获取所有下游设备的额定速率和额定带宽;
从所有下游设备的额定速率中选取最小额定速率作为第二额定速率参考值,从所有下游设备的额定带宽中选取最小额定带宽作为第二额定带宽参考值;
检测PCIe设备的实际速率与第二额定速率参考值的大小关系,以及实际带宽与第二额定带宽参考值的大小关系;
若PCIe设备的实际速率等于第二额定速率参考值,且实际带宽等于第二额定带宽参考值,则PCIe设备无降级故障;
若PCIe设备的实际速率小于第二额定速率参考值和/或实际带宽小于第二额定带宽参考值,则PCIe设备出现降级故障。
进一步地,该方法具体包括:
读取PCIe设备配置空间获取PCIe设备的实际速率、实际带宽、额定速率和额定带宽。
进一步地,该方法具体包括:
根据PCIe设备的链路信息确定训练链路;
在Detect状态、Polling状态、Configuration状态、L0状态、Recovery状态之间重复训练;
获取每个状态训练的日志;
检测日志内数据,检测训练过程是否出现异常;
在出现异常时,根据异常信息确定PCIe设备降级原因。
进一步地,检测训练过程是否出现异常,具体包括:
检测训练结果是否与标准值相同,以及训练时长是否小于阈值;
若训练结果与标准值不同和/或训练是否超过阈值,则训练出现异常。
进一步地,该方法还包括以下步骤:
预先在数据库维护诊断列表,诊断列表中包括训练异常信息、对应的PCIe设备降级原因,以及对应的推荐修复操作;
当获得训练异常信息后,在诊断列表中查找对应的PCIe设备降级原因和推荐修复操作;
将训练异常信息、对应的PCIe设备降级原因和推荐修复操作在人机交互界面显示;
人机交互界面上还显示所有PCIe设备的基本信息,提供诊断触发按键。
第二方面,本发明的技术方案提供一种PCIe设备降级检测装置,包括,
信息获取模块:获取PCIe设备的实际速率和实际带宽;获取PCIe设备的额定速率和额定带宽;
降级判断模块:根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障;
降级原因检测模块:若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
第三方面,本发明的技术方案提供一种终端,包括:
存储器,用于存储PCIe设备降级检测程序;
处理器,用于执行所述PCIe设备降级检测程序时实现如上述任一项所述PCIe设备降级检测方法的步骤。
第四方面,本发明的技术方案提供一种计算机可读存储介质,所述可读存储介质上存储有PCIe设备降级检测程序,所述PCIe设备降级检测程序被处理器执行时实现如上述任一项所述PCIe设备降级检测方法的步骤。
本发明提供的一种PCIe设备降级检测方法、装置、终端及存储介质,相对于现有技术,具有以下有益效果:获取PCIe设备的实际速率、实际带宽和额定速率、额定带宽,根据实际数据和额定数据判断是否出现降级问题,在PCIe设备出现降级问题时,对PCIe设备链路进行重复训练,确定出具体的链路故障位置,为PCIe设备的修复提供信息,提高PCIe设备修复有效性。
附图说明
为了更清楚的说明本申请实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种PCIe设备降级检测方法流程示意图。
图2是本发明实施例中PCIe设备降级故障确定流程示意图。
图3是本发明实施例中另一可实现的PCIe设备降级故障确定流程示意图。
图4是本发明实施例提供的一种PCIe设备降级检测方法的一具体实施例原理示意图。
图5是本发明实施例提供的一种PCIe设备降级检测装置结构示意框图。
图6是本发明实施例提供的一种终端的结构示意图。
具体实施方式
以下对本发明涉及的部分英文术语进行解释。
ISA(Industry Standard Architecture)工业标准架构;
MCA(Micro Channel Architecture) 微通道体系架构;
PCI(Peripheral Component Interconnect)外围组件互连;
PCIe(Peripheral Component Interconnect Express) 外围组件互连高速;
RAID( Redundant Array of Independent Disks) 独立磁盘冗余阵列。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
图1是本发明实施例提供的一种PCIe设备降级检测方法流程示意图,该方法应用于Windows系统下,如图1所示,该方法包括以下步骤。
S1,获取PCIe设备的实际速率和实际带宽。
S2,获取PCIe设备的额定速率和额定带宽。
S3,根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障。
S4,若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
本实施例对PCIe设备实时检测,可以理解的是,可以对服务器所有PCIe设备进行检测,也可以对指定的PCIe设备进行检测。实时获取PCIe设备的实际速率和实际带宽,具体实施时可以从PCIe配置空间读取寄存器相应位的信息获得PCIe设备的实际速率和实际带宽,同样的再获取PCIe设备的额定速率和额定带宽,从PCIe设备配置空间读取寄存器相应为的信息。之后将PCIe设备的实际速率、实际带宽分别与额定速率、额定带宽比对,来判断是否出现降级故障。如果出现降级故障,对PCIe设备链路进行重复训练,找到出现降级故障的具体位置,为PCIe设备的修复提供信息,提高PCIe设备修复有效性。
上述步骤S3根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障,若直接比对实际速率与额定速率,以及实际带宽与额定带宽,如果实际速率小于额定速率或者实际带宽小于额定带宽,并不能准确确定PCIe设备是否出现降级故障,有可能是PCIe设备与其上下游PCIe设备协商出的速率和带宽小于其本身额定速率和额定带宽,为提高判断是否出现PCIe设备是否出现降级故障的准确性,本实施例具体通过以下步骤实现PCIe设备的降级故障确定。
图2是本实施例PCIe设备降级故障确定流程示意图,如图2所示,该流程包括以下步骤。
S301,检测PCIe设备的实际速率与额定速率的大小关系,以及实际带宽与额定带宽的大小关系。
S302,若PCIe设备的实际速率等于额定速率,且实际带宽等于额定带宽,则PCIe设备无降级故障。
S303,若PCIe设备的实际速率小于额定速率和/或实际带宽小于额定带宽,则获取PCIe设备所在链路上所有PCIe设备的额定速率和额定带宽。
S304,从所有PCIe设备的额定速率中选取最小额定速率作为额定速率参考值,从所有PCIe设备的额定带宽中选取最小额定带宽作为额定带宽参考值。
S305,检测PCIe设备的实际速率与额定速率参考值的大小关系,以及实际带宽与额定带宽参考值的大小关系。
S306,若PCIe设备的实际速率等于额定速率参考值,且实际带宽等于额定带宽参考值,则PCIe设备无降级故障。
S307,若PCIe设备的实际速率小于额定速率参考值和/或实际带宽小于额定带宽参考值,则PCIe设备出现降级故障。
首先将PCIe设备的实际速率、实际带宽与其本身的额定速率、额定带宽比对,初步判断出是否可能存在降级故障。实际速率比额定速率小,或者实际带宽比额定带宽小,任一项满足或两项均满足则初步判断可能存在降级故障。此时,再获取PCIe设备所在链路上所有PCIe设备的额定速率和额定带宽,检测是否是PCIe设备链路协商出来的带宽和速率。
从所有PCIe设备的额定速率中选取最小额定速率作为额定速率参考值,从所有PCIe设备的额定带宽中选取最小额定带宽作为额定带宽参考值,再比对初步判断可能存在PCIe设备降级故障的PCIe设备与这两个参考值比对,如果实际速率和实际带宽与相应参考值相同,说明是链路协商出来的带宽和速率,不存在降级故障,如果比相应参考值小,则说明出现降级故障。
初步判断可能存在降级故障的PCIe设备在其链路中可能既有上游PCIe设备也有下游PCIe设备,或者只有上游设备,或者只有下游设备。对于只有上游设备和只有下游设备的待检测PCIe设备,获取其链路上所有PCIe设备的额定速率比对,对于既有上游PCIe设备也有下游PCIe设备的待检测PCIe设备,为提高效率,先比对上游PCIe设备再比对下游PCIe设备,或者先比对下游PCIe设备再比对上游PCIe设备。
图3是本实施例另一可实现的PCIe设备降级故障确定流程示意图,如图3所示,该流程包括以下步骤。
SS301,检测PCIe设备的实际速率与额定速率的大小关系,以及实际带宽与额定带宽的大小关系。
SS302,若PCIe设备的实际速率等于额定速率,且实际带宽等于额定带宽,则PCIe设备无降级故障。
SS303,若PCIe设备的实际速率小于额定速率和/或实际带宽小于额定带宽,则获取所有上游设备的额定速率和额定带宽。
SS304,从所有上游设备的额定速率中选取最小额定速率作为第一额定速率参考值,从所有上游设备的额定带宽中选取最小额定带宽作为第一额定带宽参考值。
SS305,检测PCIe设备的实际速率与第一额定速率参考值的大小关系,以及实际带宽与第一额定带宽参考值的大小关系。
SS306,若PCIe设备的实际速率等于第一额定速率参考值,且实际带宽等于第一额定带宽参考值,则PCIe设备无降级故障。
SS307,若PCIe设备的实际速率小于第一额定速率参考值和/或实际带宽小于第一额定带宽参考值,则获取所有下游设备的额定速率和额定带宽。
SS308,从所有下游设备的额定速率中选取最小额定速率作为第二额定速率参考值,从所有下游设备的额定带宽中选取最小额定带宽作为第二额定带宽参考值。
SS309,检测PCIe设备的实际速率与第二额定速率参考值的大小关系,以及实际带宽与第二额定带宽参考值的大小关系。
SS310,若PCIe设备的实际速率等于第二额定速率参考值,且实际带宽等于第二额定带宽参考值,则PCIe设备无降级故障。
SS311,若PCIe设备的实际速率小于第二额定速率参考值和/或实际带宽小于第二额定带宽参考值,则PCIe设备出现降级故障。
先比对上游PCIe设备,如果与上游PCIe设备最小额定速率和额定带宽相同,则直接判断无降级故障即可,如果小于上游PCIe设备最小额定速率和额定带宽,再比对下游PCIe设备,提高检测效率。
如果最终判断PCIe设备出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因,具体包括以下步骤。
S401,根据PCIe设备的链路信息确定训练链路。
S402,在Detect状态、Polling状态、Configuration状态、L0状态、Recovery状态之间重复训练。
S403,获取每个状态训练的日志。
S404,检测日志内数据,检测训练过程是否出现异常。
S405,在出现异常时,根据异常信息确定PCIe设备降级原因。
如果PCIe设备出现降级故障,对PCIe链路进行重复训练时,会出现训练异常,因此先根据PCIe设备的链路信息确定训练链路,对链路进行重复训练,读取训练日志,从日志中获取训练异常信息,从而确定PCIe设备降级原因。其中,检测训练过程是否出现异常,具体包括:检测训练结果是否与标准值相同,以及训练时长是否小于阈值;若训练结果与标准值不同和/或训练是否超过阈值,则训练出现异常。
另外,为确定PCIe设备降级原因,本实施例预先在数据库维护诊断列表,诊断列表中包括训练异常信息、对应的PCIe设备降级原因,以及对应的推荐修复操作。当获得训练异常信息后,在诊断列表中查找对应的PCIe设备降级原因和推荐修复操作。同时,将训练异常信息、对应的PCIe设备降级原因和推荐修复操作在人机交互界面显示,供测试人员查看。在人机交互界面上还显示所有PCIe设备的基本信息,提供诊断触发按键,方便测试人员操作。
为进一步理解本发明,以下以一具体实施例本发明进一步详细说明,该具体实施例主要包括以下三个过程,图4是该具体实施例原理示意图。
一、PCIe设备降级问题的检测过程
PCIe设备的实际速率和实际带宽是在开机过程中与服务器主板间协商形成。
1)在Windows系统下编写函数Read_Actual_PCIeBandwidthandSpeed(),该函数的目的是根据PCIe规范来读取PCIe配置空间中的实际速率、实际带宽信息,更具体一点是读取偏移量为0x52,数据大小为2个Byte的寄存器。
2)编写函数Read_Rated_PCIeBandwidthandSpeed()来获取该PCIe设备的额定速率、额定带宽信息,具体是读取偏移量为0x42,数据大小为2个Byte的范围。
3)编写函数Check_Degradation_problem(),第一步比较获取到的实际速率、带宽和额定速率、带宽,进而得出该PCIe设备是否有降级问题发生,初步判断是否该设备出现降级现象,第二步需要判断PCIe设备出现降级是否是因为设备故障导致,本函数会获取PCIe设备的上游设备的额定速率、额定带宽的两个集合,取两个集合的最小值,若两个集合的最小值等于PCIe设备的实际速率、实际带宽,则PCIe设备的降级非设备故障导致,可以不做诊断;若两个集合的最小值大于PCIe设备的实际速率、实际带宽,则PCIe设备的降级需要进行诊断过程。同理,若PCIe设备存在下游设备,比较方式与上游设备一致。
二、 PCIe设备降级问题的诊断过程
PCIe设备的链路训练有以下几个状态:Detect状态、Polling状态、Configuration状态、L0状态、Recovery状态等。PCIe设备的实际带宽是在Configuration状态形成,实际速率是Recovery状态过程中形成。因此,当PCIe设备出现降级问题时,可以通过链路的重训练来复现问题和捕捉具体训练过程来诊断出问题点具体在哪一步。
首先,通过PCIe设备的Bus/Device/Function信息来确定训练的链路,然后使用LinkRetrain()函数进行链路重训练,从Detect状态、Polling状态、Configuration状态到L0状态,这种顺序重复训练,另外,LinkRetrain()函数可以抓取日志里Detect状态、Polling状态、Configuration状态、L0状态、Recovery状态的时间以及训练结果,当出现PCIe设备降级问题时,可以通过 LinkRetrain()函数的输出分析出哪一个状态出现问题。
根据上述过程,可以找出具体的问题步骤,本工具也会维护一个数据库,该数据库以问题步骤->可能原因->推荐操作的格式保存,因此确定好问题步骤后,就可以诊断出问题原因,然后根据推荐操作进行问题的修复。例如,网卡在Windows系统下出现降速问题,找到问题步骤是phase2 time out,可能的原因是网卡的Firmware问题,推荐操作是升级网卡的Firmware。
三、诊断工具的可视化
为了提高工具的使用率和友好化,对该工具进行可视化的处理,在可视化界面中有PCIe设备基本情况、PCIe设备一键诊断、PCIe设备诊断结果三个部分。在PCIe设备基本情况部分,显示服务器上的PCIe设备的基本情况,包括厂商ID、设备ID、位置信息、Bus/Device/Function信息。在这个部分一目了然地展示PCIe设备信息。在PCIe设备一键诊断部分,通过 PCIe设备降级问题的检测和PCIe设备降级问题的诊断过程来进行诊断,然后将诊断结果在PCIe设备诊断结果界面进行展示,诊断结果包括该PCIe设备是否有降级问题、问题步骤、可能原因、操作推荐。
上文中对于一种PCIe设备降级检测方法的实施例进行了详细描述,基于上述实施例描述的PCIe设备降级检测方法,本发明实施例还提供了一种与该方法对应的PCIe设备降级检测装置。
图5是本发明实施例提供的一种PCIe设备降级检测装置结构示意框图,如图5所示,该装置包括:信息获取模块、降级判断模块和降级原因检测模块。
信息获取模块:获取PCIe设备的实际速率和实际带宽;获取PCIe设备的额定速率和额定带宽。
降级判断模块:根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障。
降级原因检测模块:若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
本实施例的PCIe设备降级检测装置用于实现前述的PCIe设备降级检测方法,因此该装置中的具体实施方式可见前文中的PCIe设备降级检测方法的实施例部分,所以,其具体实施方式可以参照相应的各个部分实施例的描述,在此不再展开介绍。
另外,由于本实施例的PCIe设备降级检测装置用于实现前述的PCIe设备降级检测方法,因此其作用与上述方法的作用相对应,这里不再赘述。
图6为本发明实施例提供的一种终端装置600的结构示意图,包括:处理器610、存储器620及通信单元630。所述处理器610用于实现存储器620中保存的PCIe设备降级检测程序时实现以下步骤:
S1,获取PCIe设备的实际速率和实际带宽。
S2,获取PCIe设备的额定速率和额定带宽。
S3,根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障。
S4,若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
本发明获取PCIe设备的实际速率、实际带宽和额定速率、额定带宽,根据实际数据和额定数据判断是否出现降级问题,在PCIe设备出现降级问题时,对PCIe设备链路进行重复训练,确定出具体的链路故障位置,为PCIe设备的修复提供信息,提高PCIe设备修复有效性。
该终端装置600包括处理器610、存储器620及通信单元630。这些组件通过一条或多条总线进行通信,本领域技术人员可以理解,图中示出的服务器的结构并不构成对本发明的限定,它既可以是总线形结构,也可以是星型结构,还可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
其中,该存储器620可以用于存储处理器610的执行指令,存储器620可以由任何类型的易失性或非易失性存储终端或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。当存储器620中的执行指令由处理器610执行时,使得终端600能够执行以下上述方法实施例中的部分或全部步骤。
处理器610为存储终端的控制中心,利用各种接口和线路连接整个电子终端的各个部分,通过运行或执行存储在存储器620内的软件程序和/或模块,以及调用存储在存储器内的数据,以执行电子终端的各种功能和/或处理数据。所述处理器可以由集成电路(Integrated Circuit,简称IC) 组成,例如可以由单颗封装的IC 所组成,也可以由连接多颗相同功能或不同功能的封装IC而组成。举例来说,处理器610可以仅包括中央处理器(Central Processing Unit,简称CPU)。在本发明实施方式中,CPU可以是单运算核心,也可以包括多运算核心。
通信单元630,用于建立通信信道,从而使所述存储终端可以与其它终端进行通信。接收其他终端发送的用户数据或者向其他终端发送用户数据。
本发明还提供一种计算机存储介质,这里所说的存储介质可为磁碟、光盘、只读存储记忆体(英文:read-only memory,简称:ROM)或随机存储记忆体(英文:random accessmemory,简称:RAM)等。
计算机存储介质存储有PCIe设备降级检测程序,所述PCIe设备降级检测程序被处理器执行时实现以下步骤:
S1,获取PCIe设备的实际速率和实际带宽。
S2,获取PCIe设备的额定速率和额定带宽。
S3,根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障。
S4,若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
本发明获取PCIe设备的实际速率、实际带宽和额定速率、额定带宽,根据实际数据和额定数据判断是否出现降级问题,在PCIe设备出现降级问题时,对PCIe设备链路进行重复训练,确定出具体的链路故障位置,为PCIe设备的修复提供信息,提高PCIe设备修复有效性。
本领域的技术人员可以清楚地了解到本发明实施例中的技术可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本发明实施例中的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中如U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质,包括若干指令用以使得一台计算机终端(可以是个人计算机,服务器,或者第二终端、网络终端等)执行本发明各个实施例所述方法的全部或部分步骤。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上公开的仅为本发明的优选实施方式,但本发明并非局限于此,任何本领域的技术人员能思之的没有创造性的变化,以及在不脱离本发明原理前提下所作的若干改进和润饰,都应落在本发明的保护范围内。
Claims (10)
1.一种PCIe设备降级检测方法,其特征在于,包括以下步骤:
获取PCIe设备的实际速率和实际带宽;
获取PCIe设备的额定速率和额定带宽;
根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障;
若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
2.根据权利要求1所述的PCIe设备降级检测方法,其特征在于,根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障,具体包括:
检测PCIe设备的实际速率与额定速率的大小关系,以及实际带宽与额定带宽的大小关系;
若PCIe设备的实际速率等于额定速率,且实际带宽等于额定带宽,则PCIe设备无降级故障;
若PCIe设备的实际速率小于额定速率和/或实际带宽小于额定带宽,则获取PCIe设备所在链路上所有PCIe设备的额定速率和额定带宽;
从所有PCIe设备的额定速率中选取最小额定速率作为额定速率参考值,从所有PCIe设备的额定带宽中选取最小额定带宽作为额定带宽参考值;
检测PCIe设备的实际速率与额定速率参考值的大小关系,以及实际带宽与额定带宽参考值的大小关系;
若PCIe设备的实际速率等于额定速率参考值,且实际带宽等于额定带宽参考值,则PCIe设备无降级故障;
若PCIe设备的实际速率小于额定速率参考值和/或实际带宽小于额定带宽参考值,则PCIe设备出现降级故障。
3.根据权利要求2所述的PCIe设备降级检测方法,其特征在于,若PCIe设备在其链路上既有上游设备又有下游设备,则该方法在检测到PCIe设备的实际速率小于额定速率和/或实际带宽小于额定带宽时,具体包括以下步骤:
获取所有上游设备的额定速率和额定带宽;
从所有上游设备的额定速率中选取最小额定速率作为第一额定速率参考值,从所有上游设备的额定带宽中选取最小额定带宽作为第一额定带宽参考值;
检测PCIe设备的实际速率与第一额定速率参考值的大小关系,以及实际带宽与第一额定带宽参考值的大小关系;
若PCIe设备的实际速率等于第一额定速率参考值,且实际带宽等于第一额定带宽参考值,则PCIe设备无降级故障;
若PCIe设备的实际速率小于第一额定速率参考值和/或实际带宽小于第一额定带宽参考值,则获取所有下游设备的额定速率和额定带宽;
从所有下游设备的额定速率中选取最小额定速率作为第二额定速率参考值,从所有下游设备的额定带宽中选取最小额定带宽作为第二额定带宽参考值;
检测PCIe设备的实际速率与第二额定速率参考值的大小关系,以及实际带宽与第二额定带宽参考值的大小关系;
若PCIe设备的实际速率等于第二额定速率参考值,且实际带宽等于第二额定带宽参考值,则PCIe设备无降级故障;
若PCIe设备的实际速率小于第二额定速率参考值和/或实际带宽小于第二额定带宽参考值,则PCIe设备出现降级故障。
4.根据权利要求1-3任一项所述的PCIe设备降级检测方法,其特征在于,该方法具体包括:
读取PCIe设备配置空间获取PCIe设备的实际速率、实际带宽、额定速率和额定带宽。
5.根据权利要求4所述的PCIe设备降级检测方法,其特征在于,该方法具体包括:
根据PCIe设备的链路信息确定训练链路;
在Detect状态、Polling状态、Configuration状态、L0状态、Recovery状态之间重复训练;
获取每个状态训练的日志;
检测日志内数据,检测训练过程是否出现异常;
在出现异常时,根据异常信息确定PCIe设备降级原因。
6.根据权利要求5所述的PCIe设备降级检测方法,其特征在于,检测训练过程是否出现异常,具体包括:
检测训练结果是否与标准值相同,以及训练时长是否小于阈值;
若训练结果与标准值不同和/或训练是否超过阈值,则训练出现异常。
7.根据权利要求6所述的PCIe设备降级检测方法,其特征在于,该方法还包括以下步骤:
预先在数据库维护诊断列表,诊断列表中包括训练异常信息、对应的PCIe设备降级原因,以及对应的推荐修复操作;
当获得训练异常信息后,在诊断列表中查找对应的PCIe设备降级原因和推荐修复操作;
将训练异常信息、对应的PCIe设备降级原因和推荐修复操作在人机交互界面显示;
人机交互界面上还显示所有PCIe设备的基本信息,提供诊断触发按键。
8.一种PCIe设备降级检测装置,其特征在于,包括,
信息获取模块:获取PCIe设备的实际速率和实际带宽;获取PCIe设备的额定速率和额定带宽;
降级判断模块:根据PCIe设备的实际速率、实际带宽、额定速率和额定带宽判断PCIe设备是否出现降级故障;
降级原因检测模块:若出现降级故障,则对PCIe设备链路进行重复训练,根据训练过程中的异常信息确定PCIe设备降级原因。
9.一种终端,其特征在于,包括:
存储器,用于存储PCIe设备降级检测程序;
处理器,用于执行所述PCIe设备降级检测程序时实现如权利要求1-7任一项所述PCIe设备降级检测方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述可读存储介质上存储有PCIe设备降级检测程序,所述PCIe设备降级检测程序被处理器执行时实现如权利要求1-7任一项所述PCIe设备降级检测方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211449357.9A CN115801540B (zh) | 2022-11-18 | 2022-11-18 | 一种PCIe设备降级检测方法、装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211449357.9A CN115801540B (zh) | 2022-11-18 | 2022-11-18 | 一种PCIe设备降级检测方法、装置、终端及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115801540A true CN115801540A (zh) | 2023-03-14 |
CN115801540B CN115801540B (zh) | 2024-10-22 |
Family
ID=85438980
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211449357.9A Active CN115801540B (zh) | 2022-11-18 | 2022-11-18 | 一种PCIe设备降级检测方法、装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115801540B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118885359A (zh) * | 2024-09-27 | 2024-11-01 | 苏州元脑智能科技有限公司 | 一种扩展设备状态检测方法、服务器及电子设备 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324268A1 (en) * | 2014-04-02 | 2015-11-12 | Huawei Technologies Co., Ltd. | Method, Device, and System for Processing PCIe Link Fault |
CN109558282A (zh) * | 2018-12-03 | 2019-04-02 | 郑州云海信息技术有限公司 | 一种pcie链路检测方法、系统及电子设备和存储介质 |
CN113359968A (zh) * | 2021-05-14 | 2021-09-07 | 山东英信计算机技术有限公司 | 一种基于arm平台复位pcie设备的方法、系统、设备及介质 |
CN113541988A (zh) * | 2020-04-17 | 2021-10-22 | 华为技术有限公司 | 一种网络故障的处理方法及装置 |
CN113688087A (zh) * | 2021-10-25 | 2021-11-23 | 苏州浪潮智能科技有限公司 | 一种pcie设备枚举方法、系统、存储介质及设备 |
CN115033441A (zh) * | 2022-06-29 | 2022-09-09 | 苏州浪潮智能科技有限公司 | PCIe设备故障检测方法、装置、设备和存储介质 |
-
2022
- 2022-11-18 CN CN202211449357.9A patent/CN115801540B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150324268A1 (en) * | 2014-04-02 | 2015-11-12 | Huawei Technologies Co., Ltd. | Method, Device, and System for Processing PCIe Link Fault |
CN109558282A (zh) * | 2018-12-03 | 2019-04-02 | 郑州云海信息技术有限公司 | 一种pcie链路检测方法、系统及电子设备和存储介质 |
CN113541988A (zh) * | 2020-04-17 | 2021-10-22 | 华为技术有限公司 | 一种网络故障的处理方法及装置 |
CN113359968A (zh) * | 2021-05-14 | 2021-09-07 | 山东英信计算机技术有限公司 | 一种基于arm平台复位pcie设备的方法、系统、设备及介质 |
CN113688087A (zh) * | 2021-10-25 | 2021-11-23 | 苏州浪潮智能科技有限公司 | 一种pcie设备枚举方法、系统、存储介质及设备 |
CN115033441A (zh) * | 2022-06-29 | 2022-09-09 | 苏州浪潮智能科技有限公司 | PCIe设备故障检测方法、装置、设备和存储介质 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN118885359A (zh) * | 2024-09-27 | 2024-11-01 | 苏州元脑智能科技有限公司 | 一种扩展设备状态检测方法、服务器及电子设备 |
CN118885359B (zh) * | 2024-09-27 | 2024-12-27 | 苏州元脑智能科技有限公司 | 一种扩展设备状态检测方法、服务器及电子设备 |
Also Published As
Publication number | Publication date |
---|---|
CN115801540B (zh) | 2024-10-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111414268B (zh) | 故障处理方法、装置及服务器 | |
US6766479B2 (en) | Apparatus and methods for identifying bus protocol violations | |
US9141463B2 (en) | Error location specification method, error location specification apparatus and computer-readable recording medium in which error location specification program is recorded | |
US6055653A (en) | Method and apparatus for testing gang memory modules | |
JP4886601B2 (ja) | Usbインタフェース設備に対して操作を行う装置及び方法 | |
JP2004152298A (ja) | バスを機能強化する方法および装置 | |
CN104077203A (zh) | 一种可经由usb接口实现计算机硬件诊断的方法及装置 | |
CN111078492B (zh) | 一种SoC内部总线的状态监控系统及方法 | |
CN105183575A (zh) | 处理器故障的诊断方法、装置及系统 | |
CN102929755B (zh) | 一种cpu模块地址和数据总线的故障检测方法 | |
CN111988196B (zh) | 一种带宽检测方法、装置、电子设备和存储介质 | |
CN100446129C (zh) | 一种内存故障测试的方法及系统 | |
CN103970628B (zh) | 自动化检测系统及其自动化检测方法 | |
CN102662808B (zh) | 一种pcie硬件故障检测的实现方法与装置 | |
CN104572375A (zh) | 一种通过显示器接口实现计算机诊断的方法及装置 | |
CN101770416B (zh) | 新一代周边连接接口的总线测试方法 | |
CN102053898A (zh) | 针对主机pcie插槽上总线接口的测试方法及其读写测试方法 | |
CN115801540B (zh) | 一种PCIe设备降级检测方法、装置、终端及存储介质 | |
CN117093427A (zh) | 一种pcie设备状态检测方法、系统、电子设备及介质 | |
CN113407394B (zh) | 一种服务器ras功能测试的方法、装置、设备和介质 | |
CN112596983A (zh) | 一种服务器内连接器的监测方法 | |
EP3961403A1 (en) | Bus monitoring device and method, storage medium, and electronic device | |
CN115658158A (zh) | 一种pcie设备管理方法、装置、设备及可读存储介质 | |
CN117033050A (zh) | 状态信息的发送方法、系统、存储介质及电子设备 | |
CN108279991B (zh) | 一种快速定位计算机设备机率性死机问题的方法 |
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 |