CN117135055A - 带宽资源的控制方法及装置、存储介质及电子装置 - Google Patents
带宽资源的控制方法及装置、存储介质及电子装置 Download PDFInfo
- Publication number
- CN117135055A CN117135055A CN202311091390.3A CN202311091390A CN117135055A CN 117135055 A CN117135055 A CN 117135055A CN 202311091390 A CN202311091390 A CN 202311091390A CN 117135055 A CN117135055 A CN 117135055A
- Authority
- CN
- China
- Prior art keywords
- bandwidth resources
- target
- resource identifier
- type
- pcie
- 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 65
- 230000008569 process Effects 0.000 claims abstract description 13
- 238000004590 computer program Methods 0.000 claims description 13
- 239000000758 substrate Substances 0.000 claims 2
- 230000000694 effects Effects 0.000 abstract description 3
- 238000010586 diagram Methods 0.000 description 14
- 230000006870 function Effects 0.000 description 8
- 238000013461 design Methods 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 101100027896 Arabidopsis thaliana OCP3 gene Proteins 0.000 description 1
- 102100024058 Flap endonuclease GEN homolog 1 Human genes 0.000 description 1
- 101000833646 Homo sapiens Flap endonuclease GEN homolog 1 Proteins 0.000 description 1
- 101150044561 SEND1 gene Proteins 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000005540 biological transmission Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0896—Bandwidth or capacity management, i.e. automatically increasing or decreasing capacities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F13/00—Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F13/38—Information transfer, e.g. on bus
- G06F13/40—Bus structure
- G06F13/4063—Device-to-bus coupling
- G06F13/4068—Electrical coupling
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0876—Aspects of the degree of configuration automation
- H04L41/0886—Fully automatic configuration
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/70—Admission control; Resource allocation
- H04L47/76—Admission control; Resource allocation using dynamic resource allocation, e.g. in-call renegotiation requested by the user or requested by the network in response to changing network conditions
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2213/00—Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
- G06F2213/0026—PCI express
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Automation & Control Theory (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本申请实施例提供了一种带宽资源的控制方法及装置、存储介质及电子装置,其中,该方法包括:在服务器启动的过程中,获取与第一PCIE端口连接的第一设备的第一设备信息;根据第一目标设备类型和第一目标资源标识,确定待分配至第一PCIE端口的带宽资源的第一目标数量;在候选带宽资源多于或等于第一目标数量的带宽资源的情况下,将候选带宽资源中第一目标数量的带宽资源分配至第一PCIE端口,其中,候选带宽资源是PCIE根端口中处于空闲状态的带宽资源。通过本申请实施例,解决了带宽资源的控制效率较低的问题,进而达到了提升带宽资源的控制效率的效果。
Description
技术领域
本申请实施例涉及计算机领域,具体而言,涉及一种带宽资源的控制方法及装置、存储介质及电子装置。
背景技术
随着服务器的集成度越来越高,一款主板可以兼容多种套餐配置,为用户提供更多灵活的配置选择的同时,还可以实现降本增效。
现阶段,服务器处理器IIO(Integrated Input/Output,集成输入/输出)提供PCIE根端口,可以配置X2、X4、X8以及X16等带宽,提供GEN1、GEN2、GEN3、GEN4、和GEN5速率支持。随着PCIE接口多种类型及PCIE(Peripheral Component Interconnect Express,一种高速串行计算机扩展总线标准)带宽的进一步细分,相关技术中,往往通过PCH(PlatformController Hub,集成南桥)GPIO(General-purpose input/output,通用型之输入输出)方式来自动配置PCIE带宽设计,例如:需要制作不同PCIE需求的不同版本的BIOS,而PCIE的配置往往是复杂多变的,这样的方式,往往需要针对不同的PCIE需求开发不同版本的BIOS需求,开发成本较高,开发周期较长,无法涵盖多种方式的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端口,包括:获取所述服务器中的基本输入输出系统BIOS发送的调整请求,其中,所述调整请求用于请求将所述服务器中的目标寄存器的取值调整为目标取值,所述目标寄存器的取值用于表示分配至所述第一PCIE端口的带宽资源的数量,所述目标取值用于表示分配至所述第一PCIE端口的带宽资源的数量为所述第一目标数量;响应所述调整请求,将所述目标寄存器的取值调整所述目标取值,按照所述目标寄存器的所述目标取值,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口。
根据本申请的另一个实施例,提供了一种带宽资源的控制装置,包括:第一获取模块,用于在服务器启动的过程中,获取与第一PCIE端口连接的第一设备的第一设备信息,其中,所述服务器中的处理器包括PCIE根端口,所述PCIE根端口包括多个PCIE端口,所述多个PCIE端口包括所述第一PCIE端口,所述第一设备信息中携带了所述第一设备的第一目标设备类型和所述第一设备对应的第一目标资源标识,在所述第一设备的设备类型为所述第一目标设备类型的情况下,所述第一目标资源标识用于表示所述第一目标设备类型的所述第一设备允许使用的带宽资源的数量;第一确定模块,用于根据所述第一目标设备类型和所述第一目标资源标识,确定待分配至所述第一PCIE端口的带宽资源的第一目标数量;第一分配模块,用于在候选带宽资源多于或等于所述第一目标数量的带宽资源的情况下,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口,其中,所述候选带宽资源是所述PCIE根端口中处于空闲状态的带宽资源。
根据本申请的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项带宽资源的控制方法实施例中的步骤。
根据本申请的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项带宽资源的控制方法实施例中的步骤。
通过本申请实施例,可以根据与PCIE端口连接的设备的设备信息中的设备类型和允许该设备使用的带宽资源的数量,自动确定待分配至该PCIE端口的带宽资源的数量,自动从PCIE根端口中处于空闲状态的带宽资源中将该数量的带宽资源分配至该PCIE端口,通过这样的方式,实现了自动将PCIE端口的端口资源的数量调整至与该PCIE端口连接的设备所允许使用的带宽资源的数量,因此,可以解决带宽资源的控制效率较低的问题,达到提升带宽资源的控制效率的效果。
附图说明
图1是本申请实施例的一种带宽资源的控制方法的结构框图;
图2是根据本申请实施例的一种可选的带宽资源的控制方法的应用场景示意图;
图3是根据本申请实施例的带宽资源的控制方法的流程图;
图4是根据本申请实施例的一种可选的确定待分配至PCIE端口的带宽资源的数量的示意图;
图5是根据本申请实施例的一种可选的多个PCIE端口均连接有设备的示意图;
图6是根据本申请实施例的一种PCA9555与PCIE端口的连接示意图;
图7是根据本申请实施的一种可选的带宽资源的控制方法的示意图;
图8是根据本申请实施例的带宽资源的控制装置的结构框图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请的实施例。
需要说明的是,本申请实施例的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。
本申请实施例中所提供的带宽资源的控制方法实施例可以运行在如图1所示的网络架构中,图1是本申请实施例的一种带宽资源的控制方法的结构框图,如图1所示,该网络架构包括服务器102、服务器204和服务器206。
可以但不限于以服务器102为例,对本申请实施例中的带宽资源的控制方法进行解释和说明,可以但不限于适用于本申请实施例。
图2是根据本申请实施例的一种可选的带宽资源的控制方法的应用场景示意图,如图2所示,服务器102中可以但不限于部署有服务器主板104,在服务器主板104上部署有CPU(Central Processing Unit,中央处理器)106,CPU106上部署了多个PCIE根端口,其中,多个PCIE根端口包括PCIE根端口108,PCIE根端口108包括多个PCIE端口,多个PCIE端口包括PCIE端口110,PCIE端口110与设备114连接。可以但不限于通过以下步骤,实现本申请实施例中的带宽资源的控制方法:
步骤S202,在服务器102启动的过程中,获取与PCIE端口110连接的设备114的第一设备信息,其中,服务器102中的处理器(或称为,CPU1 06)包括PCIE根端口108,PCIE根端口108包括多个PCIE端口,多个PCIE端口包括PCIE端口110,第一设备信息中携带了设备114的第一目标设备类型和设备114对应的第一目标资源标识,在设备114的设备类型为第一目标设备类型的情况下,第一目标资源标识用于表示第一目标设备类型的设备114允许使用的带宽资源的数量;
步骤S204,根据第一目标设备类型和第一目标资源标识,确定待分配至PCIE端口110的带宽资源的第一目标数量;
步骤S206,在候选带宽资源多于或等于第一目标数量的带宽资源的情况下,将候选带宽资源中第一目标数量的带宽资源分配至PCIE端口110,其中,候选带宽资源是所述PCIE根端口108中处于空闲状态的带宽资源。
通过上述步骤,可以根据与PCIE端口连接的设备的设备信息中的设备类型和允许该设备使用的带宽资源的数量,自动确定待分配至该PCIE端口的带宽资源的数量,自动从PCIE根端口中处于空闲状态的带宽资源中将该数量的带宽资源分配至该PCIE端口,通过这样的方式,实现了自动将PCIE端口的端口资源的数量调整至与该PCIE端口连接的设备所允许使用的带宽资源的数量,因此,可以解决带宽资源的控制效率较低的问题,达到提升带宽资源的控制效率的效果。
在本实施例中提供了一种运行于上述移动终端的带宽资源的控制方法,图3是根据本申请实施例的带宽资源的控制方法的流程图,如图3所示,该流程包括如下步骤:
步骤S302,在服务器启动的过程中,获取与第一PCIE端口连接的第一设备的第一设备信息,其中,所述服务器中的处理器包括PCIE根端口,所述PCIE根端口包括多个PCIE端口,所述多个PCIE端口包括所述第一PCIE端口,所述第一设备信息中携带了所述第一设备的第一目标设备类型和所述第一设备对应的第一目标资源标识,在所述第一设备的设备类型为所述第一目标设备类型的情况下,所述第一目标资源标识用于表示所述第一目标设备类型的所述第一设备允许使用的带宽资源的数量;
步骤S304,根据所述第一目标设备类型和所述第一目标资源标识,确定待分配至所述第一PCIE端口的带宽资源的第一目标数量;
步骤S306,在候选带宽资源多于或等于所述第一目标数量的带宽资源的情况下,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口,其中,所述候选带宽资源是所述PCIE根端口中处于空闲状态的带宽资源。
通过上述步骤,可以根据与PCIE端口连接的设备的设备信息中的设备类型和允许该设备使用的带宽资源的数量,自动确定待分配至该PCIE端口的带宽资源的数量,自动从PCIE根端口中处于空闲状态的带宽资源中将该数量的带宽资源分配至该PCIE端口,通过这样的方式,实现了自动将PCIE端口的端口资源的数量调整至与该PCIE端口连接的设备所允许使用的带宽资源的数量,因此,可以解决带宽资源的控制效率较低的问题,达到提升带宽资源的控制效率的效果。
其中,上述步骤的执行主体可以为服务器等,但不限于此。
在上述步骤S302提供的技术方案中,服务器中的处理器上可以但不限于提供多个PCIE根端口,多个PCIE根端口可以但不限于包括PCIE根端口,每个PCIE根端口可以但不限于提供多个PCIE端口,多个PCIE端口包括第一PCIE端口。例如:每个处理器集成IO提供5个PCIE根端口,分别定义为PE0、PE1、PE2、PE3和PE4。
可选的,在本实施例中,可以但不限于通过以下方式获取与第一PCIE端口连接的第一设备的第一设备信息:通过读取SMBUS地址,读取PCA9555 IO数据,并读取PCH对应GPIO值,得到第一设备信息。可以但不限于通过以下方式按照PCIE根端建立PCA9555的IO数据和PCH GPIO值的数组:详细来说,可以但不限于通过以下方式定义PCA9555数据:
可以但不限于通过以下方式定义PCH GPIO相关数组:
可选的,在本实施例中,PCIE根端口所具有的带宽资源往往是有限的,可以但不限于获取与第一PCIE端口连接的第一设备的第一设备信息,在第一设备信息中携带了第一设备的设备类型和第一目标资源标识,第一目标资源标识可以但不限于用于表示第一目标设备类型的第一设备允许使用的带宽资源的数量,可以理解的是,第一目标资源标识可以但不限于用于表示第一设备所需的带宽资源的数量。每个设备类型的设备具有对应的允许使用的带宽资源,不同设备类型的设备所允许使用的带宽资源的数量可以但不限于相同、或者不同等等。
在上述步骤S304提供的技术方案中,为了满足设备对于带宽资源的使用需求,可以但不限于根据第一目标设备类型和第一目标资源标识,自动确定待分配至第一PCIE端口的带宽资源的第一目标数量,可以理解的是,第一目标数量可以但不限于等于第一目标资源标识表示的第一目标设备类型的第一设备允许使用的带宽资源的数量。通过这样的方式,避免了通过人工的方式,手动根据设备对于带宽资源的使用需求,调整待分配至PCIE端口的带宽资源,而是自动确定待分配至PCIE端口的带宽资源,通过这样的方式,提升了确定待分配至PCIE端口的带宽资源的数量的效率。
可选的,在本实施例中,在第一目标设备类型和第一目标资源标识中的至少一个发生变化的情况下,根据第一目标设备类型和第一目标资源标识,确定的待分配至第一PCIE端口的带宽资源的第一目标数量也会发生变化,例如:根据设备类型1和资源标识1,确定的待分配至PCIE端口的带宽资源的数量为数量1,根据设备类型1和资源标识2,确定的待分配至PCIE端口的带宽资源的数量为数量2,在这样的情况下,数量1和数量2往往是不相同的。
在一个示范性实施例中,可以但不限于通过以下方式根据第一目标设备类型和第一目标资源标识,确定待分配至第一PCIE端口的带宽资源的第一目标数量:在所述第一目标设备类型为第一类型、且所述第一目标资源标识为第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,其中,所述第一目标数量为所述第一数量,所述第一资源标识是第一资源标识集合中的资源标识,在所述第一目标设备类型为所述第一类型的情况下,所述第一资源标识集合中的每个资源标识用于表示所述第一类型的所述第一设备允许使用的带宽资源的数量,所述第一资源标识用于表示所述第一类型的所述第一设备允许使用的带宽资源的数量是所述第一数量;在所述第一目标设备类型为第二类型、且所述第一目标资源标识为第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,其中,所述第一目标数量为所述第二数量,所述第二资源标识是第二资源标识集合中的资源标识,在所述第一目标设备类型为所述第二类型的情况下,所述第二资源标识集合中的每个资源标识用于表示所述第二类型的所述第一设备允许使用的带宽资源的数量,所述第二资源标识用于表示所述第二类型的所述第一设备允许使用的带宽资源的数量是所述第二数量;其中,所述第一数量大于所述第二数量。
可选的,在本实施例中,第一目标设备类型和第一目标资源标识可以但不限于字母、数字或者字符串中的至少一个进行表示,例如:可以但不限于通过数字1表示第一类型,通过数字0表示第二类型;可以但不限于通过字母a表示第一资源标识,通过字母b表示第二资源标识。
可选的,在本实施例中,在第一目标设备类型不为第一类型的情况下,第一资源标识集合中的每个资源标识不用于表示第一类型的第一设备允许使用的带宽资源的数量。在第一目标设备类型不为第二类型的情况下,第二资源标识集合中的每个资源标识不用于表示第二类型的第一设备允许使用的带宽资源的数量。通过这样的方式,实现了根据设备的设备类型和所需的带宽资源的资源标识的变化,动态调整PCIE端口的带宽资源的分配,提升了调整PCIE端口的带宽资源的及时性。
在一个示范性实施例中,上述方法还包括:在所述第一目标设备类型为第一类型、且所述第一目标资源标识为第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,包括:在与所述第一PCIE端口对应的表格中查找与所述第一类型和所述第一资源标识具有对应关系的第一数量结果,其中,所述表格中记录了多组具有对应关系的设备类型、资源标识和数量结果,所述表格中包括与所述第一类型和第三资源标识对应的第三数量结果,所述第三资源标识用于表示所述第一类型的所述第一设备允许使用的带宽资源的数量是第三数量,所述第三数量大于所述第一PCIE端口允许使用的带宽资源的最大数量,所述第三数量结果为空;在所述第一数量结果表示所述第一数量的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为所述第一数量;在所述第一目标设备类型为第二类型、且所述第一目标资源标识为第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,包括:在与所述第一PCIE端口对应的所述表格中查找与所述第二类型和所述第二资源标识具有对应关系的第二数量结果,其中,所述表格中包括与所述第二类型和第四资源标识对应的第四数量结果,所述第四资源标识用于表示所述第二类型的所述第一设备允许使用的带宽资源的数量是第四数量,所述第四数量大于所述第一PCIE端口允许使用的带宽资源的最大数量,所述第四数量结果为空;在所述第二数量结果表示所述第二数量的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为所述第二数量。
可选的,在本实施例中,在PCIE端口对应的表格中可以但不限于记录了对应的设备的类型和资源标识所对应的数量结果,图4是根据本申请实施例的一种可选的确定待分配至PCIE端口的带宽资源的数量的示意图,如图4所示,可以但不限于以PCIE端口110为第一PCIE端口进行解释和说明,在PCIE端口110对应的表格中记录了第一目标设备类型和第一目标资源标识所对应的数量结果,详细来说,在第一目标设备类型为第一类型,且第一目标资源标识为第一资源标识的情况下,在与PCIE端口110对应的表格中查找与第一类型和第一资源标识具有对应关系的第一数量结果,在第一数量结果表示第一数量的情况下,确定待分配至PCIE端口110的带宽资源的数量为第一数量。
在第一目标设备类型为第二类型,且第一目标资源标识为第二资源标识的情况下,在与PCIE端口110对应的表格中查找与第二类型和第二资源标识具有对应关系的第二数量结果,在第二数量结果表示第二数量的情况下,确定待分配至PCIE端口110的带宽资源的数量为第二数量。
PCIE端口110所允许使用的带宽资源的最大数量往往是有限制的,在这样的情况下,可以但不限于在设备所需的带宽资源的数量多于PCIE端口110允许使用的带宽资源的最大数量的情况下,拒绝为PCIE端口110分配带宽资源,例如:在第一目标设备类型为第一类型,且第一目标资源标识为第三资源标识的情况下,在与PCIE端口110对应的表格中查找与第一类型和第三资源标识具有对应关系的第三数量结果,第三资源标识用于表示第一类型的第一设备允许使用的带宽资源的数量是第三数量,所述第三数量大于所述PCIE端口110允许使用的带宽资源的最大数量,第三数量结果为空。
又例如:在第一目标设备类型为第二类型,且第一目标资源标识为第四资源标识的情况下,在与PCIE端口110对应的表格中查找与第二类型和第四资源标识具有对应关系的第四数量结果,第四资源标识用于表示第二类型的第一设备允许使用的带宽资源的数量是第四数量,第四数量大于所述PCIE端口110允许使用的带宽资源的最大数量,第四数量结果为空。
通过这样的方式,在实现根据设备的设备类型和所需的带宽资源的资源标识,自动确定待分配至PCIE端口的带宽资源的同时,还避免了为PCIE端口分配超过PCIE端口的承载能力的带宽资源,提升了PCIE端口的运行的稳定性。
在一个示范性实施例中,上述方法还包括:在所述第一目标设备类型为第一类型、且所述第一目标资源标识为第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,包括:在所述第一目标设备类型为板卡类型、且所述第一目标资源标识为所述第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,其中,在所述第一目标设备类型为所述板卡类型的情况下,所述第一设备为板卡,所述第一资源标识是资源标识集合中的资源标识,所述资源标识集合中的每个资源标识用于表示所述板卡允许使用的带宽资源的数量,所述第一资源标识用于表示所述板卡允许使用的带宽资源的数量是所述第一数量;在所述第一目标设备类型为第二类型、且所述第一目标资源标识为第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,包括:在所述第一目标设备类型为背板类型、且所述第一目标资源标识为所述第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,其中,在所述第一目标设备类型为所述背板类型的情况下,所述第一设备为背板,所述第二资源标识用于表示所述背板允许使用的带宽资源的数量是所述第二数量。
可选的,在本实施例中,目标设备类型可以但不限于包括板卡类型、背板类型等等,第一设备可以但不限于包括板卡、背板等等。在这样的情况下,板卡可以但不限于支持x8和x16的带宽,背板可以但不限于支持x4的带宽。
在一个示范性实施例中,上述方法还包括:在所述多个PCIE端口还包括第二PCIE端口、且所述第二PCIE端口与第二设备连接的情况下,获取所述第二设备的第二设备信息,其中,所述第二设备信息中携带了所述第二设备的第二目标设备类型和所述第二设备对应的第二目标资源标识,在所述第二设备的设备类型为所述第二目标设备类型的情况下,所述第二目标资源标识用于表示所述第二目标设备类型的所述第二设备允许使用的带宽资源的数量;根据所述第二目标设备类型和所述第二目标资源标识,确定待分配至所述第二PCIE端口的带宽资源的第二目标数量;在将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口的情况下,确定所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源是否多于或等于所述第二目标数量的带宽资源;在所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源多于或等于所述第二目标数量的带宽资源的情况下,将所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源中所述第二目标数量的带宽资源分配至所述第二PCIE端口。
可选的,在本实施例中,确定待分配至第二PCIE端口的带宽资源的第二目标数量的方式与确定待分配至第一PCIE端口的带宽资源的第一目标数量的方式可以但不限于相同。
可选的,在本实施例中,多个PCIE端口可以但不限于均连接有设备,图5是根据本申请实施例的一种可选的多个PCIE端口均连接有设备的示意图,如图5所示,服务器102中可以但不限于部署有服务器主板104,在服务器主板104上部署有CPU106,CPU106上部署了多个PCIE根端口,其中,多个PCIE根端口包括PCIE根端口108,PCIE根端口108包括多个PCIE端口,多个PCIE端口包括PCIE端口110和PCIE端口112,PCIE端口110与设备114连接,PCIE端口112与设备116连接。
为了保证至少满足一个PCIE端口所连接的设备所需的带宽资源,在这样的情况下,可以但不限于优先保证将候选带宽资源中第一目标数量的带宽资源分配至PCIE端口114,在将候选带宽资源中第一目标数量的带宽资源分配至PCIE端口114的情况下,确定候选带宽资源中除第一目标数量的带宽资源之外的带宽资源是否多于或等于第二目标数量的带宽资源。在候选带宽资源中除第一目标数量的带宽资源之外的带宽资源多于或等于第二目标数量的带宽资源的情况下,将候选带宽资源中除第一目标数量的带宽资源之外的带宽资源中第二目标数量的带宽资源分配至PCIE端口112。通过这样的方式,实现了优先将所需的带宽资源分配至一个PCIE端口,满足了至少部分PCIE端口所连接的设备的带宽资源的需求,提升了PCIE端口连接的设备运行的稳定性。
在一个示范性实施例中,上述方法还包括:在所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源小于所述第二目标数量的带宽资源的情况下,将所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源分配至所述第二PCIE端口。
可选的,在本实施例中,候选带宽资源往往是有限的,在将第一目标数量的带宽资源分配至第一PCIE端口之后,候选带宽资源中剩余的带宽资源可能已经不足以满足第二PCIE端口所连接的设备对带宽资源的需求,例如:候选带宽资源中除第一目标数量的带宽资源之外的带宽资源小于第二目标数量的带宽资源,在这样的情况下,将候选带宽资源中除第一目标数量的带宽资源之外的所有带宽资源分配至第二PCIE端口。通过这样的方式,一方面,提升了候选带宽资源的利用率,另一方面,虽然候选带宽资源中剩余的带宽资源无法满足第二PCIE端口连接的设备所需的全部的带宽资源,但可以为第二PCIE端口至少分配部分所需的带宽资源,供第二PCIE端口所连接的设备使用,提升了第二PCIE端口所连接的设备运行的稳定性。
在上述步骤S306提供的技术方案中,PCIE根端口所具有的带宽资源往往是有限的,在候选带宽资源少于第一目标数量的带宽资源的情况下,可以表明此时PCIE根端口中处于空闲状态的带宽资源不足以满足设备对于带宽资源的需求,在这样的情况下,可以但不限于将候选带宽资源均分配至第一PCIE端口。
在一个示范性实施例中,可以但不限于通过以下方式在候选带宽资源中除第一目标数量的带宽资源将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口:获取所述服务器中的基本输入输出系统BIOS发送的调整请求,其中,所述调整请求用于请求将所述服务器中的目标寄存器的取值调整为目标取值,所述目标寄存器的取值用于表示分配至所述第一PCIE端口的带宽资源的数量,所述目标取值用于表示分配至所述第一PCIE端口的带宽资源的数量为所述第一目标数量;响应所述调整请求,将所述目标寄存器的取值调整所述目标取值,按照所述目标寄存器的所述目标取值,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口。
可选的,在本实施例中,在将候选带宽资源中第一目标数量的带宽资源分配至第一PCIE端口的情况下,第一设备可以但不限于通过第一目标数量的带宽资源与第一PCIE端口进行通信。
可选的,在本实施例中,可以但不限于在服务器的启动过程中,通过BIOS(BasicInput Output System,基本输入输出系统),对服务器主板硬件进行直接的初始化和配置,针对服务器主板各种Riser卡和不同PCIE设备的带宽需求,实现了在服务器启动过程中IIO初始阶段根据PCIE带宽配置的方案,动态地调整PCIE带宽配置。
为了更好地理解本申请实施例中的带宽资源的控制方法,下面结合可选的实施例,可以但不限于英特尔Eaglestream两路平台为例,对本申请实施例中的带宽资源的控制方法进行解释和说明,可以但不限于适用于本申请实施例。
英特尔Eaglestream两路平台支持两个处理器,分别用CPU0和CPU1表示,每个处理器集成IO提供5个PCIE根端口,定义为PE0、PE1、PE2、PE3、PE4。可以理解的是,CPU0PE0表示CPUO上PCIE PE0根端口。
每个PCIE根端口支持最大X16带宽配置,按照最小支持X2带宽又将X16每个端口分为PortA、PortB、PortC、PortD、PortE、PortF、PortG、PortH 8个端口,其中PortA和PortB组合支持X4带宽,可以但不限于以PortAB表示,其他X4带宽依此类推,可以表示为:PortCD、PortEF、PortGH。PortA、PortB、PortC和PortD组合支持X8带宽,可以但不限于以PortAD表示。PortEH代表PortE到PortH的X8带宽;PortAH表示代表PortA到PortH的X16带宽。
根据服务器上的硬件主板设计,可以但不限于以其中两个PCIE根端口CPU0PE1和CPU1PE0使用PCA9555芯片扩展GPIO和PCH GPIO联合使用,支持PCIE带宽自动分配功能进行说明。
服务器主板PCIe接口设计会采用OCP3.0连接器,Gen-Z连接器,MCIO高速连接器等,灵活进行PCIE接口扩展。0CP3.0转接卡可以支持OCP3.0网卡multi host功能,Gen-Z连接器,MCIO高速连接器可以搭配不同Riser卡来接入不同类型的PCIE外插卡设备(显卡、网卡、存储设备等),图6是根据本申请实施例的一种PCA9555与PCIE端口的连接示意图,如图6所示,CPU0的PE1根端口通过两个MCIO X8连接器引出,定义为CPU0PE1 PortA,CPU0PE1PortEH。CPU1的PE0根端口,PortAD接X8 OCP3.O连接器,定义为CPU1PE0 PortAD,PortEH接1个MCI0 X8连接器,定义为CPU1PE0 PortEH。
PCA9555.挂在PCH HOST_SMBUS下面,PCA9555的I2C地址为Ox44,使用PCA9555扩展的IO_0_2-IO_0_7端口。CPU1PE0 PortAD连接OCP3.0连接器,默认X8带宽,支持X16扩展,支持与CPU0PE1 PortAD组成multi host(多主机)。
CPU1PE0 PortAD OCP3.0连接器使用2pin连接到PCA9555_IO_0_2和PCA9555_IO_0_3上,用来区分是OCP扩展X16还是跨CPU域支持multi host功能。lpin表示CABLE_PRSNT(与PCA9555_IO_0_3连接)和1pin表示CPU_ADDR(与PCA9555_IO_0_2连接)。
当CPU1PE0 PortAD OCP3.0由X8扩展成X16,CABLE线缆接入CPU1PE0 PortAD和CPU1PE0 PortEH,CABLE_PRSNT信号为低(值为0),CPU_ADDR信号为高(值为1),(参考表8);当CABLE线缆连接到CPU1PE0 PortAD和CPU0PE1 PortAD时,CABLE_PRSNT信号为低,CPU_ADDR信号为低(参考表4至表7);CABLE_PRSNT默认值为高,CABELE线缆无接入,此时无需判断CPU_ADDR的值(参考表1至表3)。
当CPU根端口通过MCIO X8连接器引出,下行会接背板或板卡(例如:PCIE Riser卡),在每个MCIO连接器中使用2pin(MCIO_BP_ID0和MCIO_BP_ID1)连接到相应PCA9555芯片扩展IO上。
MCIO_BP_ID0信号:用以区分MCIO下行接的板卡类型,背板对应为0,riser对应为1。
MCIO_BP_ID1信号:用以区分MCIO下行接的是x8 slot还是x16 slot,riser上x8对应为0,x16对应1。
CPU1PE0 PortEH MCIO X8连接器的MCIO_BP_ID0信号连接到PCA9555 IO_0_4,MCIO_BP_ID1信号连接到PCA9555IO_0_5,(参考表2和6)。
CPU0PE1 PortAD MCIO X8连接器的MCIO_BP_ID0信号连接到PCA9555IO_0_6,MCIO_BP_ID1信号连接到PCA9555 IO_0_7,(参考表3)。
CPU0PE1 PortEH MCIO X8连接器的MCIO_BP_ID0信号连接到PCH GPIO GPPC_B_17,MCIO_BP_ID1信号连接到PCHGPIOGPPC_B_18(参考表3和表7)。
在这样的情况下,具体GPIO设置如表1至表8所示:
1)CABLE_PRSNT=1,CPU_ADDR=0或1时(CABLE不在位,默认使用)
CPU1PE0 表1
CPU1PE0 Port | Bandwidth | Function |
PortAD | X8 | OCP3.0 |
表2
CPU0PE1:表3
2)CABLE_PRSNT=0,CPU_ADDR=0(multi host使用)
CPU1PE0 PortAD 表4
CPU1 PE0 Port | Bandwidth | Function |
PortAD | X8 | OCP3.0 |
CPU0PE1 PortAD 表5
CPU0 PE1 Port | Bandwidth | Function |
PortAD | X8 | OCP3.0 |
CPU1PE0 PortEH:表6
CPU0 PE1 PortEH 表7
3)CABLE_PRSNT=0,CPU_ADDR=1(OCP3.0扩展X16使用)
CPU1PE0 PortAH 表8
CPU1 PE0 Port | Bandwidth | Function |
PortAH | X16 | OCP3.0 |
CPU0PE1按照上述CABLE_PRSNT=1时的表1至表3进行分配,在此不再赘述。其他处理器PCIE根端口带宽分配按照硬件设计,不再赘述。
详细来说,在BIOS启动过程处理器IIO初始化阶段,通过读取SMBUS地址,获取PCA9555 IO数据,同时读取PCH对应GPIO值,更新到数组中。通过获取到的当前PCA955 IO值和PCH GPIO值,确定待分配至PCIE端口的带宽资源的数量,进而动态调整PCIE根端口带宽设置。以表4至表7进行举例说明BIOS自动检查过程,如果当前主板配置两条CABLE线缆连接到CPU1PE0 PortAD OCP3.0连接器和CPU0PE1 PortAD MCIO连接器,通过Riser卡连接到智能网卡设备,CPU1PE0 PortEH MCIO连接器通过线缆连接背板配置X4X4接入NVMe设备,CPU0PE1 PortEH连接器连接Riser卡配置成X8接入RAID卡设备
BIOS在启动过程到IIO初始阶段,会读取到PCA9555_I0_0_3值(CABLE_PRSNT)和PCA9555_I0_0_2(CPU_ADDR)值为0,PCA9555IO_0_4(CPU1PE0 PortEH MCIO_BP_ID0)和PCA9555 IO_0_5(CPU1PE0PortEH MCIO_BP_ID1)值为0,GPIO_VER3_GPP_B17(CPU0PE1PortEH MCIO_BP_ID0)值为1和GPIO_VER3_GPP_B18(CPU0PE1 PortEH MCIO_BP_ID1)值为0,BIOS根据检测到的值,综上,BIOS将CPU0PE1 PortAD端口配置成X8,CPU0PE1 PortEH配置成X8,CPU1PE0 PortAD端口配置成X8,CPU1PE0 PortEH端口配置成X4X4,从而实现PCIE根端口带宽的动态分配。经过BIOS代码调试和实际接入PCIE Riser卡或背板验证,当前Eaglestream平台服务器都可以支持随配置变化,动态调整PCIE带宽分配。
图7是根据本申请实施的一种可选的带宽资源的控制方法的示意图,如图7所示,可以但不限于包括以下步骤:
步骤S701,服务器上电;
步骤S702,根据PCIe根端口建立PCA9555 IO值和PCH GPIO值的数组;
步骤S703,读取当前PCA9555 IO值和PCH GPIO值更新到各自数组;
步骤S704,根据数组数值依次调整每个PCIE根端口带宽。
通过上述方式,通过PCA955芯片的多路IO扩展功能,连接到CABLE在位信号,MCIO连接器和OCP3.0连接器的信号pin,结合原有PCH GPIO检测,实现了服务器主板多种PCIe配置的带宽进行灵活自动分配,提高系统的可扩展性,BIOS在启动过程中IIO初始阶段编码通过检测PCA9555IO值和PCH GPIO值去动态调整PCIE带宽配置,避免了手动修改PCIE端口的设置,提高了服务器生产运维的可靠性。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本申请各个实施例所述的方法。
在本实施例中还提供了一种带宽资源的控制装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。
图8是根据本申请实施例的带宽资源的控制装置的结构框图,如图8所示,该装置包括:
第一获取模块802,用于在服务器启动的过程中,获取与第一PCIE端口连接的第一设备的第一设备信息,其中,所述服务器中的处理器包括PCIE根端口,所述PCIE根端口包括多个PCIE端口,所述多个PCIE端口包括所述第一PCIE端口,所述第一设备信息中携带了所述第一设备的第一目标设备类型和所述第一设备对应的第一目标资源标识,在所述第一设备的设备类型为所述第一目标设备类型的情况下,所述第一目标资源标识用于表示所述第一目标设备类型的所述第一设备允许使用的带宽资源的数量;
第一确定模块804,用于根据所述第一目标设备类型和所述第一目标资源标识,确定待分配至所述第一PCIE端口的带宽资源的第一目标数量;
第一分配模块806,用于在候选带宽资源多于或等于所述第一目标数量的带宽资源的情况下,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一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端口。
在一个示范性实施例中,所述第一分配模块,包括:
获取单元,用于获取所述服务器中的基本输入输出系统BIOS发送的调整请求,其中,所述调整请求用于请求将所述服务器中的目标寄存器的取值调整为目标取值,所述目标寄存器的取值用于表示分配至所述第一PCIE端口的带宽资源的数量,所述目标取值用于表示分配至所述第一PCIE端口的带宽资源的数量为所述第一目标数量;
调整单元,用于响应所述调整请求,将所述目标寄存器的取值调整所述目标取值,按照所述目标寄存器的所述目标取值,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口。
需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。
本申请的实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述计算机可读存储介质可以包括但不限于:U盘、只读存储器(Read-Only Memory,简称为ROM)、随机存取存储器(Random Access Memory,简称为RAM)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。
本申请的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。
在一个示例性实施例中,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。
本实施例中的具体示例可以参考上述实施例及示例性实施方式中所描述的示例,本实施例在此不再赘述。
显然,本领域的技术人员应该明白,上述的本申请实施例的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本申请实施例不限制于任何特定的硬件和软件结合。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请实施例,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请实施例的原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请实施例的保护范围之内。
Claims (10)
1.一种带宽资源的控制方法,其特征在于,包括:
在服务器启动的过程中,获取与第一PCIE端口连接的第一设备的第一设备信息,其中,所述服务器中的处理器包括PCIE根端口,所述PCIE根端口包括多个PCIE端口,所述多个PCIE端口包括所述第一PCIE端口,所述第一设备信息中携带了所述第一设备的第一目标设备类型和所述第一设备对应的第一目标资源标识,在所述第一设备的设备类型为所述第一目标设备类型的情况下,所述第一目标资源标识用于表示所述第一目标设备类型的所述第一设备允许使用的带宽资源的数量;
根据所述第一目标设备类型和所述第一目标资源标识,确定待分配至所述第一PCIE端口的带宽资源的第一目标数量;
在候选带宽资源多于或等于所述第一目标数量的带宽资源的情况下,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口,其中,所述候选带宽资源是所述PCIE根端口中处于空闲状态的带宽资源。
2.根据权利要求1所述的方法,其特征在于,所述根据所述第一目标设备类型和所述第一目标资源标识,确定待分配至所述第一PCIE端口的带宽资源的第一目标数量,包括:
在所述第一目标设备类型为第一类型、且所述第一目标资源标识为第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,其中,所述第一目标数量为所述第一数量,所述第一资源标识是第一资源标识集合中的资源标识,在所述第一目标设备类型为所述第一类型的情况下,所述第一资源标识集合中的每个资源标识用于表示所述第一类型的所述第一设备允许使用的带宽资源的数量,所述第一资源标识用于表示所述第一类型的所述第一设备允许使用的带宽资源的数量是所述第一数量;
在所述第一目标设备类型为第二类型、且所述第一目标资源标识为第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,其中,所述第一目标数量为所述第二数量,所述第二资源标识是第二资源标识集合中的资源标识,在所述第一目标设备类型为所述第二类型的情况下,所述第二资源标识集合中的每个资源标识用于表示所述第二类型的所述第一设备允许使用的带宽资源的数量,所述第二资源标识用于表示所述第二类型的所述第一设备允许使用的带宽资源的数量是所述第二数量;
其中,所述第一数量大于所述第二数量。
3.根据权利要求2所述的方法,其特征在于,
在所述第一目标设备类型为第一类型、且所述第一目标资源标识为第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,包括:在与所述第一PCIE端口对应的表格中查找与所述第一类型和所述第一资源标识具有对应关系的第一数量结果,其中,所述表格中记录了多组具有对应关系的设备类型、资源标识和数量结果,所述表格中包括与所述第一类型和第三资源标识对应的第三数量结果,所述第三资源标识用于表示所述第一类型的所述第一设备允许使用的带宽资源的数量是第三数量,所述第三数量大于所述第一PCIE端口允许使用的带宽资源的最大数量,所述第三数量结果为空;在所述第一数量结果表示所述第一数量的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为所述第一数量;
在所述第一目标设备类型为第二类型、且所述第一目标资源标识为第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,包括:在与所述第一PCIE端口对应的所述表格中查找与所述第二类型和所述第二资源标识具有对应关系的第二数量结果,其中,所述表格中包括与所述第二类型和第四资源标识对应的第四数量结果,所述第四资源标识用于表示所述第二类型的所述第一设备允许使用的带宽资源的数量是第四数量,所述第四数量大于所述第一PCIE端口允许使用的带宽资源的最大数量,所述第四数量结果为空;在所述第二数量结果表示所述第二数量的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为所述第二数量。
4.根据权利要求2所述的方法,其特征在于,
在所述第一目标设备类型为第一类型、且所述第一目标资源标识为第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,包括:在所述第一目标设备类型为板卡类型、且所述第一目标资源标识为所述第一资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第一数量,其中,在所述第一目标设备类型为所述板卡类型的情况下,所述第一设备为板卡,所述第一资源标识是资源标识集合中的资源标识,所述资源标识集合中的每个资源标识用于表示所述板卡允许使用的带宽资源的数量,所述第一资源标识用于表示所述板卡允许使用的带宽资源的数量是所述第一数量;
在所述第一目标设备类型为第二类型、且所述第一目标资源标识为第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,包括:在所述第一目标设备类型为背板类型、且所述第一目标资源标识为所述第二资源标识的情况下,确定待分配至所述第一PCIE端口的带宽资源的数量为第二数量,其中,在所述第一目标设备类型为所述背板类型的情况下,所述第一设备为背板,所述第二资源标识用于表示所述背板允许使用的带宽资源的数量是所述第二数量。
5.根据权利要求1所述的方法,其特征在于,所述方法还包括:
在所述多个PCIE端口还包括第二PCIE端口、且所述第二PCIE端口与第二设备连接的情况下,获取所述第二设备的第二设备信息,其中,所述第二设备信息中携带了所述第二设备的第二目标设备类型和所述第二设备对应的第二目标资源标识,在所述第二设备的设备类型为所述第二目标设备类型的情况下,所述第二目标资源标识用于表示所述第二目标设备类型的所述第二设备允许使用的带宽资源的数量;
根据所述第二目标设备类型和所述第二目标资源标识,确定待分配至所述第二PCIE端口的带宽资源的第二目标数量;
在将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口的情况下,确定所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源是否多于或等于所述第二目标数量的带宽资源;
在所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源多于或等于所述第二目标数量的带宽资源的情况下,将所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源中所述第二目标数量的带宽资源分配至所述第二PCIE端口。
6.根据权利要求5所述的方法,其特征在于,所述方法还包括:
在所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源小于所述第二目标数量的带宽资源的情况下,将所述候选带宽资源中除所述第一目标数量的带宽资源之外的带宽资源分配至所述第二PCIE端口。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口,包括:
获取所述服务器中的基本输入输出系统BIOS发送的调整请求,其中,所述调整请求用于请求将所述服务器中的目标寄存器的取值调整为目标取值,所述目标寄存器的取值用于表示分配至所述第一PCIE端口的带宽资源的数量,所述目标取值用于表示分配至所述第一PCIE端口的带宽资源的数量为所述第一目标数量;
响应所述调整请求,将所述目标寄存器的取值调整所述目标取值,按照所述目标寄存器的所述目标取值,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口。
8.一种带宽资源的控制装置,其特征在于,包括:
第一获取模块,用于在服务器启动的过程中,获取与第一PCIE端口连接的第一设备的第一设备信息,其中,所述服务器中的处理器包括PCIE根端口,所述PCIE根端口包括多个PCIE端口,所述多个PCIE端口包括所述第一PCIE端口,所述第一设备信息中携带了所述第一设备的第一目标设备类型和所述第一设备对应的第一目标资源标识,在所述第一设备的设备类型为所述第一目标设备类型的情况下,所述第一目标资源标识用于表示所述第一目标设备类型的所述第一设备允许使用的带宽资源的数量;
第一确定模块,用于根据所述第一目标设备类型和所述第一目标资源标识,确定待分配至所述第一PCIE端口的带宽资源的第一目标数量;
第一分配模块,用于在候选带宽资源多于或等于所述第一目标数量的带宽资源的情况下,将所述候选带宽资源中所述第一目标数量的带宽资源分配至所述第一PCIE端口,其中,所述候选带宽资源是所述PCIE根端口中处于空闲状态的带宽资源。
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被处理器执行时实现所述权利要求1至7任一项中所述的方法的步骤。
10.一种电子装置,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现所述权利要求1至7任一项中所述的方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311091390.3A CN117135055A (zh) | 2023-08-28 | 2023-08-28 | 带宽资源的控制方法及装置、存储介质及电子装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311091390.3A CN117135055A (zh) | 2023-08-28 | 2023-08-28 | 带宽资源的控制方法及装置、存储介质及电子装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117135055A true CN117135055A (zh) | 2023-11-28 |
Family
ID=88862392
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311091390.3A Pending CN117135055A (zh) | 2023-08-28 | 2023-08-28 | 带宽资源的控制方法及装置、存储介质及电子装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117135055A (zh) |
-
2023
- 2023-08-28 CN CN202311091390.3A patent/CN117135055A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7480757B2 (en) | Method for dynamically allocating lanes to a plurality of PCI Express connectors | |
US6671748B1 (en) | Method and apparatus for passing device configuration information to a shared controller | |
CN110543404B (zh) | 一种服务器、硬盘点灯方法、系统及计算机可读存储介质 | |
US7162554B1 (en) | Method and apparatus for configuring a peripheral bus | |
US8037223B2 (en) | Reconfigurable I/O card pins | |
CN102388357B (zh) | 访问存储设备的方法及系统 | |
TW200530837A (en) | Method and apparatus for shared I/O in a load/store fabric | |
US7774575B2 (en) | Integrated circuit capable of mapping logical block address data across multiple domains | |
CN109947682B (zh) | 一种服务器主板及服务器 | |
US10592285B2 (en) | System and method for information handling system input/output resource management | |
US20100274999A1 (en) | Control system and method for memory | |
CN111008162A (zh) | 一种单PCIE插槽支持多PCIE Port的实现方法及系统 | |
CN114003528A (zh) | Ocp转接卡、转接系统及转接方法 | |
US7178054B2 (en) | Frame validation | |
CN116032746B (zh) | 资源池的信息处理方法及装置、存储介质及电子装置 | |
CN117077221A (zh) | 一种硬盘丝印分配方法、装置、计算机设备及介质 | |
US10628366B2 (en) | Method and system for a flexible interconnect media in a point-to-point topography | |
CN117135055A (zh) | 带宽资源的控制方法及装置、存储介质及电子装置 | |
CN213276462U (zh) | 双路服务器主板及双路服务器 | |
CN204189089U (zh) | 一种服务器 | |
CN109144578B (zh) | 一种基于龙芯计算机的显卡资源配置方法及装置 | |
CN113472576A (zh) | 一种ocp网卡的带宽分配方法及相关装置 | |
CN112597090A (zh) | 一种配置pcie设备的方法、网络设备和存储介质 | |
CN112069108A (zh) | 一种基于PCIE Switch的服务器灵活配置系统及方法 | |
CN216014148U (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 |