CN117675585A - Pcie设备的带宽调整方法及装置 - Google Patents
Pcie设备的带宽调整方法及装置 Download PDFInfo
- Publication number
- CN117675585A CN117675585A CN202311368777.9A CN202311368777A CN117675585A CN 117675585 A CN117675585 A CN 117675585A CN 202311368777 A CN202311368777 A CN 202311368777A CN 117675585 A CN117675585 A CN 117675585A
- Authority
- CN
- China
- Prior art keywords
- bandwidth
- rate
- pcie
- equipment
- current
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 230000009467 reduction Effects 0.000 claims abstract description 27
- 238000004590 computer program Methods 0.000 claims description 16
- 238000012549 training Methods 0.000 claims description 8
- 238000005516 engineering process Methods 0.000 abstract description 5
- 238000012545 processing Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 230000008569 process Effects 0.000 description 7
- 238000011161 development Methods 0.000 description 6
- 238000010586 diagram Methods 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 238000012795 verification Methods 0.000 description 4
- 238000013459 approach Methods 0.000 description 3
- 238000004891 communication Methods 0.000 description 3
- 238000011144 upstream manufacturing Methods 0.000 description 3
- 230000002159 abnormal effect Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 230000002860 competitive effect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012544 monitoring process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 238000006731 degradation reaction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000003780 insertion Methods 0.000 description 1
- 230000037431 insertion Effects 0.000 description 1
- 230000009191 jumping Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Landscapes
- Communication Control (AREA)
Abstract
本申请实施例提供了一种PCIE设备的带宽调整方法及装置,其中,该方法包括:在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;获取PCIE设备的当前速率和当前带宽;根据Root端的带宽信息和速率信息,以及PCIE设备的当前速率和当前带宽对PCIE设备的带宽进行调整。通过本发明,解决了相关技术中PCIE设备降速降带宽的问题。
Description
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种PCIE设备的带宽调整方法及装置。
背景技术
PCIE(Peripheral Component Interconnect Express)是一种用于连接计算机主板和外部设备的高速串行总线标准,用于连接计算机主板上的外部设备。PCIE设备是通过PCIE插槽与主板连接的硬件设备。PCIE是在传统PCI(Peripheral ComponentInterconnect)总线的基础上发展而来,旨在提供更高的带宽和性能。
随着PCIE总线的发展,PCIE设备也随之持续更新。设备的不断更新带来越来越多的问题,包括降速、降带宽场景越来越多,出问题的根因也是多种多样,虽然有些降速、降带宽场景通过多次训练能有效降低,但是不进行任何判断的多次训练会带来很多问题,包括设备问题的漏检,无法有效筛选出故障设备,很容易在客户端暴露问题,因此这种野蛮的操作是不可取的;而且有些根因是动态均衡过程出现问题,单纯的通过再次training并不能解决问题,但是平台又必须要兼容该PCIE设备,例如:不满足均衡校验条件,CPU端没有合理的校验参数、TxPrset无法从预设值进行动态均衡等,这些场景最终定位为平台兼容性、CPU单体或者设备本体问题。
针对上述问题,目前尚未存在有效的解决方案。
发明内容
本发明实施例提供了一种PCIE设备的带宽调整方法及装置,以至少解决相关技术中PCIE设备降速降带宽的问题。
根据本发明的一个实施例,提供了一种PCIE设备的带宽调整方法,包括:在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;获取所述PCIE设备的当前速率和当前带宽;根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,所述获取Root端的带宽信息和速率信息,包括:获取所述Root端支持最大速率和协商速率,其中,所述速率信息包括所述支持最大速率和协商速率;获取所述Root端支持最大带宽和协商带宽,所述带宽信息包括所述支持最大带宽和所述协商带宽。
在一个示例性实施例中,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:在所述Root端支持最大速率不等于所述协商速率的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,在所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,在所述Root端支持最大速率不等于所述协商速率,且所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:获取End Point端设备的支持最大带宽,以及End Point端设备的最大速率;通过所述End Point端设备的支持最大带宽、所述End Point端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,通过所述End Point端设备的支持最大带宽、所述EndPoint端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽;将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率;根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,所述将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽,包括:将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽中的最小值确定为所述目标带宽。
在一个示例性实施例中,所述将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率,包括:将所述End Point端设备的最大速率与所述Root端支持最大速率中的最小值确定为所述目标速率。
在一个示例性实施例中,根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括以下至少之一:在所述PCIE设备的当前速率小于所述目标速率的情况下,对所述PCIE设备的带宽进行调整;在所述PCIE设备的当前带宽小于所述目标带宽的情况下,对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,所述方法还包括:获取所述PCIE设备的设备标识;在所述PCIE设备的设备标识指示所述PCIE设备为特殊设备的情况下,获取所述PCIE设备的设备标识相匹配的设备参数;通过所述设备参数对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,所述通过所述设备参数对所述PCIE设备的带宽进行调整,包括:在所述设备参数中确定TXEQ参数或者Prest参数;通过所述定TXEQ参数或者Prest参数执行对所述PCIE设备执行动态均衡。
在一个示例性实施例中,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息,包括:在PCIE设备与主板之间训练完成后,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息。
根据本发明的另一个实施例,提供了一种PCIE设备的带宽调整装置,包括:第一获取模块,用于在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;第二获取模块,用于获取所述PCIE设备的当前速率和当前带宽;调整模块,用于根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
根据本发明的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现上述任一项中所述的方法的步骤。
根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。
通过本发明,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;获取PCIE设备的当前速率和当前带宽;根据Root端的带宽信息和速率信息,以及PCIE设备的当前速率和当前带宽对PCIE设备的带宽进行调整。因此,可以解决相关技术中PCIE设备降速降带宽的问题。
附图说明
图1是本发明实施例的一种PCIE设备的带宽调整方法的移动终端的硬件结构框图;
图2是根据本发明实施例的PCIE设备的带宽调整方法的流程图;
图3是根据本发明实施例的流程图;
图4是根据本发明实施例的PCIE设备的带宽调整装置的结构框图。
具体实施方式
PCIE的发展可以追溯到2004年,当时发布了第一个PCIE 1.0版本。该版本提供了最初的PCIE规范,支持单通道、每个通道2.5Gbps的数据传输速率,并采用了差分信号传输的方式,以提供更高的抗干扰能力。
随着时间的推移,PCIE规范进行了多次更新和演进,以提供更高的带宽和功能。从PCIE 2.0、PCIE 3.0、PCIE 4.0到现在的PCIE 5.0,PCIE的发展不仅提供了更高的带宽、速率和性能,还引入了一些新的功能和特性,如SR-IOV(Single Root I/O Virtualization)虚拟化、AER(Advanced Error Reporting)高级错误报告、NVMe(Non-Volatile MemoryExpress)存储设备支持等,以满足不断增长的计算需求和技术发展。未来,PCIE标准还将继续演进,预计会有更高速率的版本,如PCIE 6.0和PCIE 7.0,以应对不断增长的数据需求和新兴技术的挑战。
规范和设备的不断升级,技术也是飞速发展,PCIE均衡技术是一种通过动态调整PCIE设备之间的带宽分配,实现负载均衡的方法。它可以提高系统的性能和可靠性,避免某些设备的负载过高而导致性能下降或系统崩溃的问题。
PCIE均衡技术可以分为以下几种:
静态均衡:静态均衡是在系统启动时或设备插入时,根据预先设定的规则或配置文件来分配带宽。这种方式适用于负载要求相对稳定的场景,例如服务器中的网络适配器和存储控制器。
动态均衡:动态均衡是在系统运行时根据实时监测到的设备负载情况来调整带宽分配。这种方式适用于负载波动较大的场景,例如虚拟化环境中的多个虚拟机共享同一个PCIE设备。
基于优先级的均衡:基于优先级的均衡是根据设备的优先级来分配带宽,优先级高的设备可以获得更多的带宽资源。这种方式适用于对实时性要求较高的设备,例如音频和视频设备。
基于负载均衡算法的均衡:基于负载均衡算法的均衡是根据设备的负载情况和系统的资源情况来动态调整带宽分配。常见的负载均衡算法包括加权轮询、最小连接数等。
需要注意的是,PCIE均衡技术的实现需要硬件和软件的支持。具体来说,硬件方面需要支持动态调整带宽分配的功能,例如支持PCIE SR-IOV(Single Root I/OVirtualization)和多队列技术;软件方面需要有相应的驱动程序和管理工具来监测和调整设备的带宽分配。因此,在选择PCIE均衡技术时,需要考虑系统的硬件和软件支持情况,并根据实际需求选择合适的技术和方案。
PCIE均衡系数协商的四个阶段是;
初始化阶段:在初始化阶段,各个PCIE设备会发送初始化请求,包括设备的ID和能力信息。这些信息将用于确定设备的性能需求和带宽分配策略。
系数协商阶段:在系数协商阶段,各个PCIE设备会根据自身的性能需求和带宽限制,向系统控制器发送带宽请求。系统控制器会根据设备的请求和系统的资源情况,协商确定每个设备的带宽系数。
系数配置阶段:在系数配置阶段,系统控制器将确定的带宽系数写入各个设备的寄存器中,以配置设备的带宽限制。这样,每个设备就知道自己被分配的带宽限制,并可以根据此进行数据传输。
监测和调整阶段:在监测和调整阶段,系统会实时监测各个设备的带宽使用情况,以及系统资源的利用率。如果发现某个设备的带宽利用率过高或系统资源不足,系统控制器会根据实际情况调整设备的带宽系数,以实现带宽均衡和系统性能优化。这个过程是动态的,可以根据实时情况进行调整。各个阶段都有对应的协商参数。
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
下文中将参考附图并结合实施例来详细说明本发明的实施例。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语″第一″、″第二″等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的方法实施例可以在移动终端、计算机终端或者类似的运算装置中执行。以运行在移动终端上为例,图1是本发明实施例的一种PCIE设备的带宽调整方法的移动终端的硬件结构框图。如图1所示,移动终端可以包括一个或多个(图1中仅示出一个)处理器102(处理器102可以包括但不限于微处理器MCU或可编程逻辑器件FPGA等的处理装置)和用于存储数据的存储器104,其中,上述移动终端还可以包括用于通信功能的传输设备106以及输入输出设备108。本领域普通技术人员可以理解,图1所示的结构仅为示意,其并不对上述移动终端的结构造成限定。例如,移动终端还可包括比图1中所示更多或者更少的组件,或者具有与图1所示不同的配置。
存储器104可用于存储计算机程序,例如,应用软件的软件程序以及模块,如本发明实施例中的PCIE设备的带宽调整方法对应的计算机程序,处理器102通过运行存储在存储器104内的计算机程序,从而执行各种功能应用以及数据处理,即实现上述的方法。存储器104可包括高速随机存储器,还可包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器104可进一步包括相对于处理器102远程设置的存储器,这些远程存储器可以通过网络连接至移动终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。
传输设备106用于经由一个网络接收或者发送数据。上述的网络具体实例可包括移动终端的通信供应商提供的无线网络。在一个实例中,传输设备106包括一个网络适配器(Network Interface Controller,简称为NIC),其可通过基站与其他网络设备相连从而可与互联网进行通讯。在一个实例中,传输设备106可以为射频(Radio Frequency,简称为RF)模块,其用于通过无线方式与互联网进行通讯。
在本实施例中提供了一种运行于上述移动终端的PCIE设备的带宽调整方法,图2是根据本发明实施例的PCIE设备的带宽调整方法的流程图,如图2所示,该流程包括如下步骤:
步骤S202,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;
其中,Root端的带宽信息包括Root端支持最大带宽、协商带宽,Root端的速率信息包括:Root端支持最大速率、协商速率。
所述获取Root端的带宽信息和速率信息,包括:获取所述Root端支持最大速率和协商速率,其中,所述速率信息包括所述支持最大速率和协商速率;获取所述Root端支持最大带宽和协商带宽,所述带宽信息包括所述支持最大带宽和所述协商带宽。
步骤S204,获取所述PCIE设备的当前速率和当前带宽;
步骤S206,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
可选地,上述步骤的执行主体可以是后台处理器,或者其他的具备类似处理能力的设备,还可以是至少集成有图像获取设备以及数据处理设备的机器,其中,图像获取设备可以包括摄像头等图形采集模块,数据处理设备可以包括计算机、手机等终端,但不限于此。
通过上述步骤,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;获取PCIE设备的当前速率和当前带宽;根据Root端的带宽信息和速率信息,以及PCIE设备的当前速率和当前带宽对PCIE设备的带宽进行调整。因此,可以解决相关技术中PCIE设备降速降带宽的问题。
前期条件:发现PCIE设备降速、降带宽问题,在平台上连续运行多次PCIE设备,如果发现PCIE设备的速率、带宽发生降速,则确定PCIE设备出现降速、降带宽的问题。
交叉对比故障状态和非故障状态下,PCIE链路均衡过程Phase0、Phase1、Phase2、Phase3四个阶段Tx(传输端)和Rx(接收端)等均衡参数;找出传输端Tx、接收端Rx相关的差异点。
在动态均衡验证过程中可以得到一组均衡参数值,通过对比故障状态的均衡参数值与非故障状态下的均衡参数值,可以定位到出现问题的节点。
针对设备故障情况及需要设置的均衡参数情况在BIOS主板中进行问题解决。其中,非故障状态是PCIE设备是PCIE设备的速率、带宽没有发生降速和降带宽时的状态。故障状态是PCIE设备的速率、带宽发生了降速和降带宽时的状态。
对于链路均衡过程Phase0、Phase1、Phase2、Phase3四个阶段:发送端均衡TXEQ是通过一个3阶滤波器实现的,每一阶的权重被称为Cursor系数,这些系数设置的影响体现在发送端信号的去加重和预过冲上。不同的去加重和预过冲的组合被称为Preset。为了调整TXEQ和Preset,系统和子卡需要进入一个叫Recovery的状态。Recovery状态包括4个阶段,所有的链路均衡测试发生在这四个阶段:Phase0、Phase1、Phase2、Phase3。
Phase0:子卡和系统都发送2.5GT/s的信号且一些固定编码的TXEQ和RXEQ设置从Bios中被加载。系统向子卡发出请求以使用Bios的TXEQ和RXEQ设置。这些设置用于建立进入8GT/s速率的初始化连接,因此,子卡能够正确的响应来自系统的请求是非常重要的。
Phase1:8GT/s初始化链接成功,系统和子卡均通过FS/LF广播EQ能力。
Phase2:下行端口器件(子卡)在调整自身RXEQ以获得最优设置的同时,通过发送不同的Preset或者Cursor值请求来调整上行端口器件的TXEQ值,当AIC的RXEQ和系统的TXEQ的组合达到一个最优设置后,退出Phase2;
Phase3:上行端口器件在调整自身RXEQ以获得最优设置的同时通过发送不同的Preset或者Cursor值请求来调整下行端口器件的TXEQ设置,当系统的系统的RXEQ和AIC的TXEQ的组合达到一个最优设置后,退出Phase2;
对于BIOS主板端:服务器开机,从第一个PCIE设备开始轮询主板连接的所有PCIE设备,采集Root端的带宽信息和速率信息,速率信息包括:Root端支持最大速率和协商速率;带宽信息包括Root端支持最大带宽和协商带宽。
根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:在所述Root端支持最大速率不等于所述协商速率的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,在所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,在所述Root端支持最大速率不等于所述协商速率,且所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。如果Root端支持最大带宽等于协商带宽,且Root端支持最大速率等于协商速率,则开始轮询主板连接的下一个PCIE设备。通过对BIOS主板连接的所有PCIE设备进行轮询的方式,可以及时发现BIOS主板连接的PCIE设备降速率降带宽的问题,达到及时对降速率降带宽的PCIE设备的带宽进行调整的效果。
在一个示例性实施例中,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:获取End Point端设备的支持最大带宽,以及End Point端设备的最大速率;通过所述End Point端设备的支持最大带宽、所述End Point端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,通过所述End Point端设备的支持最大带宽、所述EndPoint端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽;将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率;根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。通过Root端支持的最大带宽、最大速率,End Point端(终端节点设备)设备支持的最大带宽、最大速率可以得到目标带宽和目标速率,根据PCIE设备的当前速率、当前带宽与目标速率、目标带宽的比较对PCIE设备的带宽进行调整。对于平台与设备兼容性、设备本体问题等问题可以有效解决,使平台的兼容性更好。可以兼容更多的设备,使客户更加满意,使在同行业中更有竞争力。
获取End Point端设备支持的最大带宽、最大速率,并与Root端支持最大速率、最大带宽进行比对,两者取最小值作为目标速率和目标速率,保存到TargetLinkSpeed、TargetLinkWidth。
在一个示例性实施例中,所述将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽,包括:将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽中的最小值确定为所述目标带宽。
在一个示例性实施例中,所述将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率,包括:将所述End Point端设备的最大速率与所述Root端支持最大速率中的最小值确定为所述目标速率。
在一个示例性实施例中,根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括以下至少之一:在所述PCIE设备的当前速率小于所述目标速率的情况下,对所述PCIE设备的带宽进行调整;在所述PCIE设备的当前带宽小于所述目标带宽的情况下,对所述PCIE设备的带宽进行调整。根据异常条件进行判断如果当前速率<TargetLinkSpeed或者当前带宽<TargetLinkWidth,如果满足此条件,则对PCIE设备的带宽进行调整。这样可以使设备拥有高速高带宽的网络连接,可以快速地下载、上传和传输大量数据,加快工作进程和任务完成速度,提高工作效率。
在一个示例性实施例中,所述方法还包括:获取所述PCIE设备的设备标识;在所述PCIE设备的设备标识指示所述PCIE设备为特殊设备的情况下,获取所述PCIE设备的设备标识相匹配的设备参数;通过所述设备参数对所述PCIE设备的带宽进行调整。
可以获取槽位所插设备DID、VID,用于设备唯一性识别;根据设备的DID(DeviceIdentification设备ID)、VID(Vender Identification,供应商ID)判断是否需要特殊处理的设备,如果是需要特殊处理的设备,根据具体故障场景及参数要求,固定TXEQ()或者固定Preset()。这样可以使设备拥有高速高带宽的网络连接,可以快速地下载、上传和传输大量数据,加快工作进程和任务完成速度,提高工作效率。
在一个示例性实施例中,所述通过所述设备参数对所述PCIE设备的带宽进行调整,包括:在所述设备参数中确定TXEQ参数或者Prest参数;通过所述定TXEQ参数或者Prest参数执行对所述PCIE设备执行动态均衡。
在一个示例性实施例中,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息,包括:在PCIE设备与主板之间训练完成后,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息。
如图3所示的流程图,包括以下步骤:
步骤1:服务器开机;
步骤2:从主板连接的第一个PCIE设备开始,对主板连接的所有PCIE设备进行轮训;
步骤3:采集训练后Root端的相关信息,包括Root端(根端口)支持最大速率、协商速率、Root端支持最大带宽、协商带宽,如果Root端支持最大速率==协商速率&&Root端支持最大带宽==协商带宽,跳转步骤9;否则继续执行。
步骤4:获取End Point端设备支持的最大带宽、最大速率,并与Root端支持最大速率、最大带宽进行比对,两者取最小值,保存到TargetLinkSpeed、TargetLinkWidth;
步骤5:根据异常条件进行判断,如果当前速率<TargetLinkSpeed或者当前带宽<TargetLinkWidth,继续执行;否则,跳转步骤9;
步骤6:获取槽位所插设备DID、VID,用于设备唯一性识别;
步骤7:根据设备的DID(Device Identification设备ID)、VID(VenderIdentification,供应商ID)判断是否需要特殊处理的设备,如果是需要特殊处理的设备,根据具体故障场景及参数要求,固定TXEQ()或者固定Preset();
步骤8:执行再次训练,再次训练会根据固定TXEQ或者固定Prest参数执行PCIE动态均衡,从而满足均衡过程的参数设置及校验;
步骤9:判断是否轮询结束,如果结束,执行步骤10;如果未结束,执行步骤3,进行下一设备判断;
步骤10:结束;
本申请提出了一种固定PCIE设备降速降带宽解决方案。对于平台与设备兼容性、设备本体问题等问题可以有效解决,使平台的兼容性更好,提高工作效率:设备拥有高速高带宽的网络连接,可以快速地下载、上传和传输大量数据,加快工作进程和任务完成速度,提高工作效率。提升用户体验:高速高带宽的设备可以快速加载网页、观看高清视频、进行在线游戏等,提供流畅的网络体验,让用户享受更好的娱乐和交流体验。支持高质量的多媒体内容:高速高带宽的设备可以支持高清视频、音频和图像的实时传输和播放,提供更好的视听体验。促进创新和发展:高速高带宽的设备可以支持更多的创新应用和服务,如云计算、物联网、人工智能等,推动科技创新和社会发展。提高竞争力:在信息化时代,高速高带宽的设备是企业和个人提高竞争力的重要条件之一。拥有高速高带宽的设备可以更快地响应客户需求,提供更好的服务,赢得更多的市场份额。可以兼容更多的设备,使客户更加满意,又能使我们在同行业中更有竞争力。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
在本实施例中还提供了一种PCIE设备的带宽调整装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语″模块″可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图4是根据本发明实施例的PCIE设备的带宽调整装置的结构框图,如图4所示,该装置包括:第一获取模块42,用于在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;第二获取模块44,用于获取所述PCIE设备的当前速率和当前带宽;调整模块46,用于根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,上述装置还用于通过如下方式获取Root端的带宽信息和速率信息:获取所述Root端支持最大速率和协商速率,其中,所述速率信息包括所述支持最大速率和协商速率;获取所述Root端支持最大带宽和协商带宽,所述带宽信息包括所述支持最大带宽和所述协商带宽。
在一个示例性实施例中,上述装置还用于通过如下方式根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整:在所述Root端支持最大速率不等于所述协商速率的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,在所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,在所述Root端支持最大速率不等于所述协商速率,且所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,上述装置还用于通过如下方式根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整:获取End Point端设备的支持最大带宽,以及End Point端设备的最大速率;通过所述End Point端设备的支持最大带宽、所述End Point端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,上述装置还用于通过如下方式通过所述End Point端设备的支持最大带宽、所述End Point端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整:将所述EndPoint端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽;将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率;根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,上述装置还用于通过如下方式将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽:将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽中的最小值确定为所述目标带宽。
在一个示例性实施例中,上述装置还用于通过如下方式将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率:将所述End Point端设备的最大速率与所述Root端支持最大速率中的最小值确定为所述目标速率。
在一个示例性实施例中,上述装置还用于通过如下方式根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整:在所述PCIE设备的当前速率小于所述目标速率的情况下,对所述PCIE设备的带宽进行调整;在所述PCIE设备的当前带宽小于所述目标带宽的情况下,对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,上述装置还用于获取所述PCIE设备的设备标识;在所述PCIE设备的设备标识指示所述PCIE设备为特殊设备的情况下,获取所述PCIE设备的设备标识相匹配的设备参数;通过所述设备参数对所述PCIE设备的带宽进行调整。
在一个示例性实施例中,上述装置还用于通过如下方式所述通过所述设备参数对所述PCIE设备的带宽进行调整:在所述设备参数中确定TXEQ参数或者Prest参数;通过所述定TXEQ参数或者Prest参数执行对所述PCIE设备执行动态均衡。
在一个示例性实施例中,上述装置还用于通过如下方式在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息:在PCIE设备与主板之间训练完成后,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本发明的实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现上述任一项中所述的方法的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种PCIE设备的带宽调整方法,其特征在于,包括:
在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;
获取所述PCIE设备的当前速率和当前带宽;
根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
2.根据权利要求1所述的方法,其特征在于,所述获取Root端的带宽信息和速率信息,包括:
获取所述Root端支持最大速率和协商速率,其中,所述速率信息包括所述支持最大速率和协商速率;
获取所述Root端支持最大带宽和协商带宽,所述带宽信息包括所述支持最大带宽和所述协商带宽。
3.根据权利要求2所述的方法,其特征在于,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:
在所述Root端支持最大速率不等于所述协商速率的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,
在所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整;或者,
在所述Root端支持最大速率不等于所述协商速率,且所述Root端支持最大带宽不等于所述协商带宽的情况下,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
4.根据权利要求1至3中任一项所述的方法,其特征在于,根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:
获取End Point端设备的支持最大带宽,以及End Point端设备的最大速率;
通过所述End Point端设备的支持最大带宽、所述End Point端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
5.根据权利要求4所述的方法,其特征在于,通过所述End Point端设备的支持最大带宽、所述End Point端设备的最大速率、所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括:
将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽;
将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率;
根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
6.根据权利要求5所述的方法,其特征在于,所述将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽进行比较,得到目标带宽,包括:
将所述End Point端设备的支持最大带宽与所述Root端支持最大带宽中的最小值确定为所述目标带宽。
7.根据权利要求5所述的方法,其特征在于,所述将所述End Point端设备的最大速率与所述Root端支持最大速率进行比较,得到目标速率,包括:
将所述End Point端设备的最大速率与所述Root端支持最大速率中的最小值确定为所述目标速率。
8.根据权利要求5所述的方法,根据所述目标带宽和所述目标速率,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整,包括以下至少之一:
在所述PCIE设备的当前速率小于所述目标速率的情况下,对所述PCIE设备的带宽进行调整;
在所述PCIE设备的当前带宽小于所述目标带宽的情况下,对所述PCIE设备的带宽进行调整。
9.根据权利要求8所述的方法,所述方法还包括:
获取所述PCIE设备的设备标识;
在所述PCIE设备的设备标识指示所述PCIE设备为特殊设备的情况下,获取所述PCIE设备的设备标识相匹配的设备参数;
通过所述设备参数对所述PCIE设备的带宽进行调整。
10.根据权利要求9所述的方法,所述通过所述设备参数对所述PCIE设备的带宽进行调整,包括:
在所述设备参数中确定TXEQ参数或者Prest参数;
通过所述定TXEQ参数或者Prest参数执行对所述PCIE设备执行动态均衡。
11.根据权利要求1所述的方法,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息,包括:
在PCIE设备与主板之间训练完成后,在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息。
12.一种PCIE设备的带宽调整装置,其特征在于,包括:
第一获取模块,用于在确定PCIE设备出现降速和降带宽的情况下,获取Root端的带宽信息和速率信息;
第二获取模块,用于获取所述PCIE设备的当前速率和当前带宽;
调整模块,用于根据所述Root端的带宽信息和速率信息,以及所述PCIE设备的当前速率和当前带宽对所述PCIE设备的带宽进行调整。
13.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至11任一项中所述的方法的步骤。
14.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行所述权利要求1至11任一项中所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311368777.9A CN117675585A (zh) | 2023-10-20 | 2023-10-20 | Pcie设备的带宽调整方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311368777.9A CN117675585A (zh) | 2023-10-20 | 2023-10-20 | Pcie设备的带宽调整方法及装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117675585A true CN117675585A (zh) | 2024-03-08 |
Family
ID=90067105
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311368777.9A Pending CN117675585A (zh) | 2023-10-20 | 2023-10-20 | Pcie设备的带宽调整方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117675585A (zh) |
-
2023
- 2023-10-20 CN CN202311368777.9A patent/CN117675585A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111045816B (zh) | 一种性能优化的方法以及相关装置 | |
US20140189648A1 (en) | Facilitated quality testing | |
CN110433496B (zh) | 云游戏资源配置方法、电子设备和存储介质 | |
JP2020501237A (ja) | サーバ負荷平衡方法、機器、及びサーバ装置 | |
CN109495542B (zh) | 基于性能监控的负载分配方法及终端设备 | |
EP3923549A1 (en) | Data downloading method and related apparatus | |
CN109660391B (zh) | 一种池化服务器系统固件升级方法、系统及相关装置 | |
CN111917586A (zh) | 容器带宽的调整方法、服务器及存储介质 | |
US11025490B2 (en) | Method for dynamically managing a network service in a communication network | |
CN111984733A (zh) | 基于区块链的数据传输方法、装置及存储介质 | |
US20170013083A1 (en) | Data processing method and apparatus used for terminal application | |
CN114296953A (zh) | 一种多云异构系统及任务处理方法 | |
CN113885971A (zh) | 一种基于自适应平台系统的状态管理方法及装置 | |
CN110113176B (zh) | 用于配置服务器的信息同步方法及装置 | |
CN108965364B (zh) | 资源配置方法、装置及系统 | |
US20220046647A1 (en) | Logical channel management in a communication system | |
CN117675585A (zh) | Pcie设备的带宽调整方法及装置 | |
CN112882826A (zh) | 一种资源协同调度方法以及装置 | |
CN113824689B (zh) | 边缘计算网络、数据传输方法、装置、设备和存储介质 | |
CN112436982B (zh) | 一种网络流量自动混跑测试方法、系统、终端及存储介质 | |
CN115454576A (zh) | 一种虚拟机进程管理方法、系统及电子设备 | |
CN115048255A (zh) | 一种自动化测试方法、装置,主机及存储介质 | |
CN109298944B (zh) | 服务器压力调节方法及装置、计算机装置及存储介质 | |
CN109756362B (zh) | 一种第三方安全组件的集成处理方法及装置 | |
CN106210031A (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 |