CN105408879B - 快捷外围部件互连域的资源管理 - Google Patents

快捷外围部件互连域的资源管理 Download PDF

Info

Publication number
CN105408879B
CN105408879B CN201480041749.9A CN201480041749A CN105408879B CN 105408879 B CN105408879 B CN 105408879B CN 201480041749 A CN201480041749 A CN 201480041749A CN 105408879 B CN105408879 B CN 105408879B
Authority
CN
China
Prior art keywords
resource
domain
pcie
information
available resources
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.)
Active
Application number
CN201480041749.9A
Other languages
English (en)
Other versions
CN105408879A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201810527299.4A priority Critical patent/CN109032974B/zh
Publication of CN105408879A publication Critical patent/CN105408879A/zh
Application granted granted Critical
Publication of CN105408879B publication Critical patent/CN105408879B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • 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/16Handling requests for interconnection or transfer for access to memory bus
    • G06F13/1605Handling requests for interconnection or transfer for access to memory bus based on arbitration
    • G06F13/161Handling requests for interconnection or transfer for access to memory bus based on arbitration with latency improvement
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4004Coupling between buses
    • G06F13/4027Coupling between buses using bus bridges
    • G06F13/4031Coupling between buses using bus bridges with arbitration
    • G06F13/4036Coupling between buses using bus bridges with arbitration and deadlock prevention
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/70Admission control; Resource allocation
    • H04L47/78Architectures of resource allocation
    • H04L47/783Distributed allocation of resources, e.g. bandwidth brokers
    • H04L47/785Distributed allocation of resources, e.g. bandwidth brokers among multiple network domains, e.g. multilateral agreements
    • 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/38Information transfer, e.g. on bus
    • G06F13/40Bus structure
    • G06F13/4063Device-to-bus coupling
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Hardware Design (AREA)
  • Multi Processors (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Bus Control (AREA)

Abstract

本发明的实施例提供一种用于管理快捷外围部件互连(Peripheral Component Interconnect‑Express,PCIe)网络中的域间资源分配的方案。多个链路处理器中的一个处理器被选为管理处理器。所述管理处理器获取关于所述PCIe网络的可用资源的信息。当收到来自请求处理器的资源请求时,所述管理处理器将所述可用资源中的一个资源分配给所述请求处理器。所述管理处理器指示一个或多个链路处理器根据所述分配的资源的内存地址信息对一个或多个域间NTB进行编程,以便允许所述请求处理器和所述分配的资源之间的跨域资源访问,其中所述分配的资源与所述请求处理器之间的流量将经过所述一个或多个域间NTB。

Description

快捷外围部件互连域的资源管理
相关申请案交叉申请
本发明要求2014年6月25日递交的发明名称为“快捷外围部件互连域的资源管理(resource management for peripheral component interconnect express domains)”的第14/315,099号美国非临时专利申请案的优先权以及要求2013年7月22日递交的发明名称为“级联快捷PCI网络域(Cascading PCI-Express network domains)”的第61/857,031号美国临时专利申请案的在先申请优先权,这两个在先申请的全部内容以引入的方式并入本文中。
技术领域
本发明大体上涉及一种快捷外围部件互连域(Peripheral ComponentInterconnect-Express,PCIe)网络,具体而言,涉及一种管理PCIe网络上的域间资源分配的技术。
背景技术
作为外围部件互连(Peripheral Component Interconnect,PCI)技术的后继者,快捷PCI(PCI-Express,PCIe)是将CPU与其部署在个人计算机(Personal Computer,PC)或服务器内的外围设备进行互连的最广泛使用的手段。PCIe是一个高吞吐量、低延迟、基于分组和交换的互连技术。
多个PCIe域通过一个或多个PCIe非透明网桥(Non-Transparent Bridge,NTB)互连,每个PCIe域均有其自己的主机,即微计算机或CPU。这种配置中的NTB用于执行PCIe域的地址空间之间的地址转换,其中这些地址空间连接到这些PCIe域,从而允许在分隔的PCIe域中的节点(即,I/O设备、CPU等)之间进行数据传送。
PCIe网络的大小和复杂度持续增加。预计将产生对PCIe域上的资源管理的需求。
发明内容
本发明的一实施例提供一种用于管理快捷外围部件互连(Peripheral ComponentInterconnect-Express,PCIe)网络中的域间资源分配的装置。所述PCIe网络包括多个PCIe域,每个PCIe域由一个链路处理器管理并通过非透明网桥(Non-Transparent Bridge,NTB)连接到一个或多个其它域。所述装置包括存储器以及与所述存储器耦合的管理处理器。所述管理处理器用于获取关于所述域的可用资源的信息,所述域的可用资源由每个域的链路处理器上报。所述关于可用资源的信息包括上报的每个可用资源的内存地址。所述处理器用于将所述获取的关于所述可用资源的信息存储在所述存储器中,以及从所述域之一的请求处理器接收资源请求。响应于所述资源请求,所述处理器将所述可用资源中的一个资源分配给所述请求处理器。所述分配的资源存在于与具有所述请求处理器的所述域不同的一个域中。所述处理器从所述存储器中获取所述分配的资源的内存地址信息,指示一个或多个链路处理器根据所述分配的资源的所述内存地址信息对一个或多个域间NTB进行编程,以便允许所述请求处理器和所述分配的资源之间的跨域资源访问,其中所述分配的资源与所述请求处理器之间的流量将经过所述一个或多个域间NTB。
本发明的另一实施例提供一种用于管理快捷外围部件互连(PeripheralComponent Interconnect-Express,PCIe)网络中的域间资源分配的方法。所述PCIe网络包括多个PCIe域,每个PCIe域由一个链路处理器管理并通过非透明网桥(Non-TransparentBridge,NTB)连接到一个或多个其它域。处理器获取关于所述域的可用资源的信息,所述域的可用资源由每个域的链路处理器上报。所述关于可用资源的信息包括上报的每个可用资源的内存地址。所述处理器将所述获取的关于所述可用资源的信息存储在存储器中。所述处理器从所述域之一的请求处理器接收资源请求。响应于所述资源请求,所述处理器将所述可用资源中的一个资源分配给所述请求处理器。所述分配的资源存在于与具有所述请求处理器的所述域不同的另一个域中。所述处理器从所述存储器中获取所述分配的资源的内存地址信息并指示一个或多个链路处理器根据所述分配的资源的所述内存地址信息对一个或多个域间NTB进行编程,以便允许所述请求处理器和所述分配的资源之间的跨域资源访问,其中所述分配的资源与所述请求处理器之间的流量将经过所述一个或多个域间NTB。
上述方法可由一个或多个处理器、存储器以及一个或多个模块、程序或存储在所述存储器中的用于执行这些方法的指令集执行。
用于执行上述方法的指令可包含在计算机程序产品中,所述计算机程序产品配置用于由一个或多个处理器执行。在一些实施例中,所述装置包括计算机可读存储介质(例如,一个或多个磁盘存储设备、闪存设备或其它非易失固态存储设备)和嵌入其中的可执行计算机程序机制。
附图说明
图1为包括三个示例性PCIe域的PCIe网络的方框图。
图2为示出了使用域间NTB的内存地址转换的两个PCIe域的方框图。
图3为示出了使用域间NTB的路由ID转换的两个PCIe域的PCIe网络的方框图。
图4为用于管理PCIe网络中的域间资源分配的方法的流程图。
具体实施方式
为了使本申请的上述目的、技术方案和优点更易于理解,详细描述如下。现将参考实施例,其示例在附图中示出。由于这些方框图、流程图和/或示例包含一个或多个功能和/或操作,所以本领域人员将理解可以通过许多硬件、软件、固件或它们的任意组合单独和/或共同实现这些方框图、流程图或示例内的每个功能和/或操作。
图1示出了通过一个或多个NTB互连的多个域。出于说明目的,图1仅示出了三个PCIe域100、200、300。可存在通过NTB互连的更多PCIe域。域100、200通过NTB 150连接,而域100、300通过NTB 250连接。图1所示的域100、200、300分别由链路处理器101、201、301管理。
不同域可包含具有不同配置的不同设备。出于说明目的,图1示出的域100、200、300中的每一个均包含类似于其它域的设备,仅域100将详细说明。域100包括链路处理器(例如,CPU)101、PCIe交换网络103、一个或多个PCIe I/O设备131至139以及一个或多个工作处理器111至119。PCIe交换网络103包括一个或若干彼此互连的PCIe交换机(图1中未示出)。链路处理器101、PCIe I/O设备131至139以及工作处理器111至119连接到PCIe交换网络103中的至少一个PCIe交换机。
链路处理器101充当域100的根主机,根主机负责将地址分配给连接到域100中的PCIe交换网络103的设备。工作处理器111、112分别通过非透明网桥(Non-TransparentBridge,NTB)121、122连接到PCIe交换网络103。NTB 121使不同存储区的两个主机、链路处理器101和工作处理器111能够隔离,但同时允许链路处理器101和工作处理器111之间的数据交换。NTB 121提供链路处理器101和工作处理器111的内存空间之间的地址转换。通过NTB 121,网桥的任一侧上的设备从另一侧均不可见,但是提供了一个路径用于链路处理器101和工作处理器111的存储区之间的数据传送和状态交换。NTB 121具有两组基地址寄存器(Base Address Register,BAR),一组用于链路处理器101侧,另一组用于工作处理器111侧。BAR用于定义将窗口转换为NTB 121的另一侧上的内存空间的地址以及允许事务映射到本地存储区或I/O。
工作处理器119通过透明网桥(Transparent Bridge,TB)129连接到PCIe交换网络103,在这种情况下,它们必须配置为端点。链路处理器101通过发现网桥和终端设备来枚举系统。对于TB 129,具有“类型1”头的配置状态寄存器(Configuration Status Register,CSR)通知链路处理器101在该网桥之外保持枚举,因为其它设备位于下游。作为端点设备的工作处理器119在其CSR中具有“类型0”头,以便通知枚举器(即,链路处理器101)没有其它设备位于下游。CSR包括用于从链路处理器101请求存储和I/O孔径的基础BAR。
PCIe域(例如,PCIe域100、200或300)是拥有其自己的独立64位地址空间的PCIe网络。工作处理器111、112通过NTB 121、122连接到PCIe域100。物理上,如果使用NTB,那么工作处理器111、112位于单独的域中。但在本实施例中,NTB的工作是将来自PCIe域100的地址映射到工作处理器的域中,工作处理器111、112仍然受链路处理器101控制,因此,在逻辑层上,工作处理器111、112可视为PCIe域100的一部分。当概念域用于本实施例中时,如图1所示,工作处理器111、112是PCIe域100的一部分。
在如图1所示的PCIe域100中,每个节点(例如,工作处理器或I/O设备)具有两个独立的地址。一个是内存地址(Memory Address,MA),另一个是请求ID(Request ID,RID),RID的格式为8位总线(BUS)编号、5位设备(DEVICE)编号和3位功能(FUNCTION)编号的序列(即,B:D:F)。当处理器向节点之一,例如,PCIe I/O设备131至139之一,发起对数据的读或写请求时,处理器使用节点的MA(即,包中的目的地址将成为节点的MA)来寻址节点并通过其RID将其自身确定为数据的请求者。当节点返回数据(读的情况下)或数据接收的确认包(写的情况下)时,节点将处理器的RID用作目的地址。因此,如果请求包穿过两个域的边界上的NTB,则两个地址(即,MA和RID)都必须转换以避免远程域中的地址冲突以及将包(请求和后续响应或完成确认)发送到正确的节点。注意的是,一个PCIe域中的地址独立于其它PCIe域而分配,但这些PCIe域的地址空间可为相同的64位地址空间。因此,当包穿过NTB时,发生两次地址转换,一次是转换包的MA,该MA本来是源域中NTB的接口的MA,而另一次转换是转换RID。这两个转换机制在下文描述。
图2所示为MA地址转换的示例。为了向PCIe系统指示存在一个可寻址且可访问的可用设备,该设备配置有BAR,该BAR具有在枚举阶段分配给其的地址。该寄存器是当有包发往NTB的那一侧时获得物理写入的寄存器。PCIe域100包括具有MA“A1”的节点A 118,MA“A1”由PCIe域100中的链路处理器101(图2中未示出)分配。通过NTB 150连接到PCIe域100的PCIe域200包括具有内存地址B2的节点B 218,内存地址B2由PCIe域200中的链路处理器201(图2中未示出)分配。
为了使一个域中的请求节点能够访问另一域中的被访问节点,请求者节点的域中的NTB 150中必须存在具有与被访问节点相同长度的可用地址。例如,为了从PCIe域200中的节点B 218访问PCIe域100中的节点A 118(地址A1),PCIe域200中的长度与A1相同的地址A2应该可以被映射到NTB 150中的PCIe域100中的地址A1。PCIe域200中的节点可通过发送数据包给地址A2来访问节点A 118,地址A2将转换为A1并由NTB 150转发给节点A 118。类似地,为了从PCIe域100访问PCIe域200中的节点B 218(地址B2),将PCIe域100中的长度与B2相同的地址B1映射到PCIe域200中的地址B2。MA通过基地址寄存器(Base AddressRegister,BAR)实施。
具体而言,作为一个实施方式,NTB 150将转换条目保存在A2的地址转换表中,A2与PCIe域100中的节点A 118的实地址A1相关联。如果收到发往NTB 150的A2的包,则包中的目的地址被替换为与地址转换表中的A2相关联的A1。类似地,NTB 150还将转换条目保存在B1的地址转换表中,B1与PCIe域200中的节点B 218的实地址B2相关联。如果收到发往NTB150的B1的包,则包中的目的地址被替换为与地址转换表中的B1相关联的地址B2。这两个地址表可为同一表中的不同部分。
如上所述,基于数据包中发现的RID将响应或完成包路由回请求者。这样,如果穿过域,则必须转换RID以确保将响应/完成包路由回合适的NTB并最终路由回原始请求者节点。RID地址的转换以与MA不同的方式执行。在图3所示的示例中,PCIe域100中的节点A 118的RID为A:B:C,而PCIe域200侧NTB的接口的RID为U:V:W。当发往节点B 218的数据包到达NTB 150处,来自节点A 118的请求者包中的RID被插入到保存在NTB 150中的RID转换表中。节点A 118的RID与该RID转换表中的索引X相关联。数据包的转换后RID通过将NTB的8位端口地址与RID转换表中的索引X相连来创建。也就是说,在PCIe域200中转发的数据包的转换后RID地址是U:X,其中X为8位长。在一些实施方式中,X为5位长,仅替换B:D:F地址的中间5位部分(即,仅“D”部分),也就是说,在这种情况下,新地址将为U:X:C,其中C是原始RID的功能(FUNCTION)的值。
一旦包到达PCIe域200中的指定节点B 218并由节点B 218处理,响应包产生并发往U:X(或上面提供的替代性示例中的U:X:C),这将使包发往NTB 150,因为总线(BUS)地址U属于NTB 150。一旦NTB 150接收该包,NTB 150查找RID转换表并基于X与RID转换表中保存的A:B:C之间的关系将地址U:X转换回A:B:C。然后,NTB 150通过将RID A:B:C作为目标来将该包转发给节点A 118。
基于不同策略,PCIe域100、200和300可允许来自远程域的处理器访问给定域中的资源。策略可基于资源的可用性,或基于中心策略强制共享一定数量资源,等等。为此,PCIe域100、200和300的每个链路处理器构建资源描述符表105、205和305并将其保存在存储器中。资源描述符表包含关于可用于分享的资源的信息。资源描述符表205、305被转发给管理处理器101,管理处理器101通过合并从链路处理器101、201和301接收的表来构建全局资源可用性表110,并使用该集合数据来分配资源给远程域中的处理器。管理处理器101从全局资源可用性表110中获取所需信息以对域间NTB进行编程,以便实现资源与请求处理器之间的通信,其中所分配的资源与请求处理器之间的流量将经过这些域间NTB。
如图1和4所示,在步骤401中,PCIe域100的链路处理器101通过域间NTB 150建立与PCIe域200的链路处理器201的通信信道。在一个实现方式中,可建立与域间NTB 150中的门铃寄存器的通信信道。门铃寄存器用于从非透明网桥的一侧发送中断给另一侧。类似地,可在链路处理器101与PCIe域300中的链路处理器301之间建立另一通信信道。
一旦建立了用于控制消息的通信信道,链路处理器101、201、301可运行选择算法,该选择算法从链路处理器101、201、301中选择一个作为管理处理器——多个域的整体互连的中央控制器,在当前实施例中,多个域是指PCIe域100、PCIe域200和PCIe域300。该选择算法可选择,例如,(1)与整个PCIe网络中的所有节点的平均距离(即,跳数或延迟)最小的链路处理器,(2)最少使用的链路处理器,或(3)将与远程域共享最大数量资源的链路处理器。出于说明目的,在本实施例中,通过使用上述算法之一将链路处理器101选择作为图1所示的多个域的互连的管理处理器。在本示例性实施方式中,管理处理器是在链路处理器之一上执行的逻辑实体,管理处理器可为物理上独立于任一链路处理器的独立系统,例如,连接到所连接域的链路处理器的处理器。
该管理处理器101,在所示出的实施例中为链路处理器101,负责将一个域中的资源分配给另一个域中的节点。这些资源可为TX/RX队列的部分或整个网络链路、以磁盘/固态驱动器(Solid State Drive,SSD)分区或整个磁盘或甚至多个磁盘为形式的存储卷、一些扩展存储器等。管理处理器101还负责控制如何对域间NTB进行编程以实现多个域上的资源访问。例如,域间NTB中BAR的大小以及将加载到域间NTB的地址转换表条目中的地址值。加载到地址转换表中的正确值使包穿过NTB并到达远程域中的正确设备。
在步骤403中,域100、200、300的链路处理器101、201、301与管理处理器101共享资源信息。每个待共享资源的信息包含以下信息中的至少一部分:(1)域ID;(2)资源类型;(3)资源ID;(4)内存地址的大小以及基地址;(5)数量信息;(6)附加信息。资源类型可为网络、存储、内存、图形处理单元(Graphics Processing Unit,GPU)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)等。或者,资源类型可包括多种特定信息,例如,关于型号(Make)、模型(Model)或功能(Function)的信息,这些特定信息不仅关于资源类型,还可用于确定将哪个驱动器加载到远程处理器上。设备内的资源ID取决于设备类型可为虚拟功能、信道、队列等。在这种情况下,设备内存在多个可用资源,(例如,网络带宽的小部分或业务类型或硬盘分区等),并且这些资源通常通过队列、信道或虚拟功能表示。资源ID可用于计算设备内特定资源的准确地址(即,距基地址的偏移量)。
附加信息可包括可被请求的资源的粒度,其中粒度信息可限定对于一个请求将返回多少资源。附加信息可包括所需的时间段更新。时间段更新可用于当在设置的时间段内还没有更新请求到达时自动释放资源。附加信息可包括使用指示符,其可为独有的、共享的、静态的或动态的。独有的表示资源仅被单个处理器使用的情况,而共享的可意味着资源访问在多个处理器之间复用。静态的表示资源被静态地分配给一个处理器并一直被该单个处理器占用的情况,而动态的意味着当一个处理器想要使用资源时,该资源可供该处理器使用,但当处理器不使用该资源时,该资源可临时供另一处理器使用。
可通过消息传递协议或通过在管理处理器的内存中创建一个消息队列将可用资源的信息作为结构化的资源描述符表105、205、305发送给所选管理处理器101,其中数据通过域间NTB的门铃或通过直接内存访问(Direct Memory Access,DMA)机制写入管理处理器的内存中。在管理处理器恰好为特定域的链路处理器,比如图1所示的管理处理器101,并且还为PCIe域100的链路处理器101的情况下,管理处理器101自身能够获取PCIe域100的资源信息。
在步骤405中,管理处理器101基于从互连中的域100、200、300的链路处理器101、201、301接收的资源描述符表105、205、305构建全局资源可用性表110或数据库。表1示出了管理处理器101构建的示例性全局资源可用性表110,该表存储在存储器102中。
表1
管理处理器101可将合适的资源分配给来自域100、200、300之一的资源请求。表1中列出的信息仅为示例;从链路处理器(101、201、301)发送给管理处理器101的关于可用资源的信息可包括比表1所示更多的信息,或可仅包括表1所列信息的一部分。
管理处理器101与对域间NTB进行编程的链路处理器协作,这最终将允许链路201与位于另一域中的所分配资源之间的跨域资源访问。
在步骤407中,作为一个示例性实施方式,当在PCIe域200中的工作处理器212上创建计算实体(即,虚拟机/容器/应用/任务/工作等)时,一组请求与计算实体关联,描述每种资源类型(即,网络、存储、远程内存、GPU、FPGA等)有多少需要分配给给定的计算实体。该组请求被传送给PCIe域200的链路处理器201,链路处理器201尝试将请求与PCIe域200中的可用资源进行匹配。如果,例如,PCIe域200中的资源无法提供一个请求的所需资源,则链路处理器201发送资源请求给管理处理器101以请求该无法提供的所需资源。
在步骤409中,接收资源请求后,管理处理器101查找全局资源可用性表(即,表1)中保存的资源信息,并根据资源请求携带的所请求类型和所请求的数量信息分配一个或多个资源。所请求的类型信息可包括所需资源类型(例如,网络、存储、远程内存、GPU、FPGA等)或关于型号、模型或功能的特定信息。在所请求的类型信息包括所需资源类型的情况下,管理处理器可按要求搜索相同类型的资源。在所请求的类型信息包括关于型号、模型或功能的信息的情况下,依赖于策略。管理处理器101可仅搜索相同型号、模型或功能的资源。或者,管理处理器101可首先搜索相同型号、模型或功能的资源,然后,如果无法找到这些资源,那么管理处理器可继续搜索相同类型的其它资源;或者,管理处理器101可搜索相同类型的资源而不特别考虑关于型号、模型或功能的信息。
为了满足资源请求的需求数量,管理处理器101可仅搜索资源余量至少等于需求数量的资源(例如,网络带宽、存储容量等)。除了考虑所请求的类型和所请求的数量,管理处理器101还可执行资源分配算法,目的是发现用于资源请求的合适资源。资源分配算法可基于网络的和全局资源可用性表中保存的资源的不同规则和条件。例如,分配算法可从以下方面选择最接近的资源:延迟或跳数或待穿过的NTB的数量、网络负载(例如,选择可通过路径访问的资源,该资源的利用率低于某一水平,例如低于50%,或该资源拥有给定的可用带宽量,比如10Gbps)、资源利用率(例如,支持一个具有相同类型的资源但利用率水平较低的设备,比如,在选择拥有较多可用带宽的资源的10G NIC情况下)等。
在步骤411中,一旦管理处理器101已将资源分配给资源请求,其获取地址信息(即,基地址和地址长度)用于对NTB进行编程。管理处理器101指示链路处理器对NTB进行编程以使工作处理器能够访问管理处理器101分配的这些资源,这些链路处理器能够对受地址信息影响的域间NTB进行编程。受影响的NTB是指PCIe域200中的工作处理器212与所分配资源之间的流量将经过的NTB。例如,可分配PCIe域300中的扩展内存(Extension Memory,EM)以服务来自PCIe域200中的工作处理器212的资源请求。为了使工作处理器212能够访问位于PCIe域300中的EM,连接PCIe域100与PCIe域200的NTB 150以及连接PCIe域100与PCIe域300的NTB 250是需要编程的NTB。
NTB一侧的链路处理器将能够对NTB进行编程。管理处理器101(链路处理器)或NTB另一侧的处理器201可对NTB 150进行编程。管理处理器101或NTB 250另一侧的链路处理器301可对NTB 250进行编程。因此,管理处理器可独立对NTB 150和NTB 250进行编程,或指示链路处理器201对NTB 150进行编程以及指示链路处理器301对NTB 250进行编程。通过来自全局资源可用性表的地址信息(即,基地址和地址长度),可对这两个NTB进行编程以允许工作处理器212访问PCIe域300中的EM。
在步骤413中,一旦已对NTB 150、250进行编程,管理处理器101将必要信息通知给请求处理器的域中的链路处理器201,链路处理器201因此将通知请求处理器并提供请求处理器(工作处理器212)所需的必要信息。必要信息可包括全局可用性表中所分配资源的类型、设备的基地址(设备的请求处理器的域中所映射的本地地址)和/或资源ID。所分配资源的类型可为Intel 82599或Broadcom BCMxyz等,在当前实施例中为EM。所分配资源的类型可有助于请求处理器加载合适的驱动器。资源ID可确定资源的哪个队列/信道/VF可访问。
一旦计算实体完成其工作,链路处理器获得通知,因此通知管理处理器101。管理处理器101执行必要的动作以释放先前分配的远程资源,包括清理所编程的NTB。
本发明实施例使用管理处理器收集关于多个PCIe域的整体互连的可用资源信息并将一个PCIe域中的资源分配给另一PCIe域中的节点。多个PCIe域的资源得以有效利用。
本领域普通技术人员应了解,结合本文实施例中所描述的示例,可通过电子硬件或计算机软件与电子硬件的组合来实施单元和算法步骤。功能是由硬件还是由软件执行取决于技术方案的特定应用和设计约束条件。本领域技术人员可使用不同方法实现每个特定应用的所描述功能,而且实现所描述功能的不同方法不应被认为是超出本发明的范围。
当这些功能以软件功能单元的形式实现以及作为单独产品销售或使用时,它们可存储在计算机可读存储介质中。基于这种理解,本发明的技术方案基本上,或构成现有技术的部分,或技术方案的部分,可通过软件产品的形式实现。计算机软件产品可包括一个或多个指令,所述指令指示计算机设备,或具体而言,计算机设备中的一个或多个处理器以及存储器(计算设备可为个人计算机、服务器、网络设备等)执行本发明的各个实施例中所描述的方法的所有或部分步骤。存储介质包括可存储程序代码的任何介质,例如,U盘、可移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory、RAM)、磁盘或光盘。

Claims (16)

1.一种用于管理快捷外围部件互连Peripheral Component Interconnect-Express,PCIe,网络中的域间资源分配的装置,其中所述PCIe网络包括多个PCIe域,每个PCIe域由一个链路处理器管理并通过非透明网桥non-transparent bridge,NTB,连接到一个或多个其它域,其特征在于,包括:
存储器;
与所述存储器耦合的管理处理器,所述管理处理器用于:
获取关于所述域的可用资源的信息,所述域的可用资源由每个域的链路处理器上报,其中所述关于所述域的可用资源的信息包括上报的每个可用资源的内存地址;
将所述获取的关于所述域的可用资源的信息存储在所述存储器中;
从所述域之一的请求处理器接收资源请求;
响应于所述资源请求,将所述可用资源中的资源分配给所述请求处理器,其中所述分配的资源存在于与具有所述请求处理器的所述域不同的域中;
从所述存储器中获取所述分配的资源的内存地址信息;
指示一个或多个链路处理器根据所述分配的资源的所述内存地址信息对一个或多个域间NTB进行编程,以便允许所述请求处理器和所述分配的资源之间的跨域资源访问,其中所述分配的资源与所述请求处理器之间的流量将经过所述一个或多个域间NTB。
2.根据权利要求1所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特征在于,所述关于所述上报的可用资源的信息包括关于每个资源的类型的信息。
3.根据权利要求2所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特征在于,所述关于类型的信息包括关于可用资源的型号Make、模型Model或功能Function的信息,以便确定为处理器加载的驱动器。
4.根据权利要求3所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特征在于,所述管理处理器还用于发送所述分配的资源的关于类型的信息给所述请求处理器以确定将加载到所述请求处理器的驱动器,其中所述信息是从所述存储器中获取的。
5.根据权利要求1所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特征在于,每个可用资源的所述内存地址包括所述内存地址的大小和基地址。
6.根据权利要求1所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特征在于,所述关于所述上报的可用资源的信息包括每个可用资源的数量信息。
7.根据权利要求1所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特征在于,所述管理处理器根据所述资源请求中携带的关于所请求类型和请求数量的信息通过查找存储在所述存储器中的关于所述可用资源的所述信息来分配所述资源。
8.根据权利要求7所述的用于管理快捷外围部件互连Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的装置,其特性在于,所述管理处理器通过进一步执行分配算法以从延迟、跳数或待穿过的NTB的数量方面确定最接近的资源来分配所述资源。
9.一种用于管理快捷外围部件互连,Peripheral Component Interconnect-Express,PCIe,网络中的域间资源分配的方法,其中所述PCIe网络包括多个PCIe域,每个PCIe域由一个链路处理器管理并通过非透明网桥non-transparent bridge,NTB,连接到一个或多个其它域,其特征在于,所述方法包括:
获取关于所述域的可用资源的信息,所述域的可用资源由每个域的链路处理器上报,其中所述关于所述域的可用资源的信息包括上报的每个可用资源的内存地址;
将所述获取的关于所述域的所述可用资源的信息存储在存储器中;
从所述域之一的请求处理器接收资源请求;
响应于所述资源请求,将所述可用资源中的资源分配给所述请求处理器,其中所述分配的资源存在于与具有所述请求处理器的所述域不同的域中;
从所述存储器中获取所述分配的资源的内存地址信息;
指示一个或多个链路处理器根据所述分配的资源的所述内存地址信息对一个或多个域间NTB进行编程,以便允许所述请求处理器和所述分配的资源之间的跨域资源访问,其中所述分配的资源与所述请求处理器之间的流量将经过所述一个或多个域间NTB。
10.根据权利要求9所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特征在于,所述关于所述上报的可用资源的信息包括关于每个资源的类型的信息。
11.根据权利要求10所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特征在于,所述关于类型的信息包括关于可用资源的型号Make、模型Model或功能Function的信息,以便确定为处理器加载的驱动器。
12.根据权利要求11所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特征在于,还包括发送所述分配的资源的关于类型的信息给所述请求处理器以确定将加载到所述请求处理器的驱动器,其中所述信息是从所述存储器中获取的。
13.根据权利要求9所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特征在于,每个可用资源的所述内存地址包括所述内存地址的大小和基地址。
14.根据权利要求9所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特征在于,所述关于所述上报的可用资源的信息包括每个可用资源的数量信息。
15.根据权利要求9所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特征在于,根据所述资源请求中携带的关于所请求类型和请求数量的信息通过查找存储在所述存储器中的关于所述可用资源的所述信息来分配所述资源。
16.根据权利要求15所述的用于管理快捷外围部件互连,Peripheral ComponentInterconnect-Express,PCIe,网络中的域间资源分配的方法,其特性在于,通过进一步执行分配算法以从延迟、跳数或待穿过的NTB的数量方面确定最接近的资源来分配所述资源。
CN201480041749.9A 2013-07-22 2014-07-22 快捷外围部件互连域的资源管理 Active CN105408879B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810527299.4A CN109032974B (zh) 2013-07-22 2014-07-22 快捷外围部件互连域的资源管理

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361857031P 2013-07-22 2013-07-22
US61/857,031 2013-07-22
US14/315,099 2014-06-25
US14/315,099 US9672167B2 (en) 2013-07-22 2014-06-25 Resource management for peripheral component interconnect-express domains
PCT/CN2014/082683 WO2015010597A1 (en) 2013-07-22 2014-07-22 Resource management for peripheral component interconnect-express domains

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201810527299.4A Division CN109032974B (zh) 2013-07-22 2014-07-22 快捷外围部件互连域的资源管理

Publications (2)

Publication Number Publication Date
CN105408879A CN105408879A (zh) 2016-03-16
CN105408879B true CN105408879B (zh) 2018-06-15

Family

ID=52344555

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201810527299.4A Active CN109032974B (zh) 2013-07-22 2014-07-22 快捷外围部件互连域的资源管理
CN201480041749.9A Active CN105408879B (zh) 2013-07-22 2014-07-22 快捷外围部件互连域的资源管理

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201810527299.4A Active CN109032974B (zh) 2013-07-22 2014-07-22 快捷外围部件互连域的资源管理

Country Status (9)

Country Link
US (1) US9672167B2 (zh)
EP (2) EP3025240B1 (zh)
JP (1) JP6231679B2 (zh)
KR (1) KR101853748B1 (zh)
CN (2) CN109032974B (zh)
AU (1) AU2014295583B2 (zh)
RU (1) RU2640648C2 (zh)
WO (1) WO2015010597A1 (zh)
ZA (1) ZA201600914B (zh)

Families Citing this family (39)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9195552B2 (en) * 2014-02-05 2015-11-24 Futurewei Technologies, Inc. Per-function downstream port containment
US20150261709A1 (en) * 2014-03-14 2015-09-17 Emilio Billi Peripheral component interconnect express (pcie) distributed non- transparent bridging designed for scalability,networking and io sharing enabling the creation of complex architectures.
JP6548459B2 (ja) 2015-05-29 2019-07-24 キヤノン株式会社 情報処理装置
US9858228B2 (en) * 2015-08-10 2018-01-02 Futurewei Technologies, Inc. Dynamic assignment of groups of resources in a peripheral component interconnect express network
EP3360039B1 (en) * 2015-10-06 2021-03-24 Xilinx, Inc. Multistage boot image loading and configuration of programmable logic devices
TWI597953B (zh) 2015-11-25 2017-09-01 財團法人工業技術研究院 具故障轉移能力的快速周邊元件互連網路系統與操作方法
AU2015381014B2 (en) * 2015-12-03 2018-02-22 Huawei Technologies Co., Ltd Array controller, solid state disk, and method for controlling solid state disk to write data
WO2017154942A1 (ja) * 2016-03-11 2017-09-14 パナソニックIpマネジメント株式会社 情報処理装置
US10565147B2 (en) * 2016-03-11 2020-02-18 Panasonic Intellectual Property Managment Co., Ltd. Information processing apparatus for data transfer between a system host and a local device
CN105827539A (zh) * 2016-03-30 2016-08-03 乐视控股(北京)有限公司 一种资源分配的方法和装置
US10082957B2 (en) * 2016-07-20 2018-09-25 Western Digital Technologies, Inc. Dual-ported PCI express-based storage cartridge including single-ported storage controllers
US10592291B2 (en) * 2016-08-12 2020-03-17 Liqid Inc. Disaggregated fabric-switched computing platform
US11294839B2 (en) 2016-08-12 2022-04-05 Liqid Inc. Emulated telemetry interfaces for fabric-coupled computing units
US11880326B2 (en) 2016-08-12 2024-01-23 Liqid Inc. Emulated telemetry interfaces for computing units
US10277677B2 (en) * 2016-09-12 2019-04-30 Intel Corporation Mechanism for disaggregated storage class memory over fabric
US10338135B2 (en) 2016-09-28 2019-07-02 Amazon Technologies, Inc. Extracting debug information from FPGAs in multi-tenant environments
US11099894B2 (en) 2016-09-28 2021-08-24 Amazon Technologies, Inc. Intermediate host integrated circuit between virtual machine instance and customer programmable logic
US10250572B2 (en) 2016-09-29 2019-04-02 Amazon Technologies, Inc. Logic repository service using encrypted configuration data
US10282330B2 (en) 2016-09-29 2019-05-07 Amazon Technologies, Inc. Configurable logic platform with multiple reconfigurable regions
US10162921B2 (en) 2016-09-29 2018-12-25 Amazon Technologies, Inc. Logic repository service
US10642492B2 (en) 2016-09-30 2020-05-05 Amazon Technologies, Inc. Controlling access to previously-stored logic in a reconfigurable logic device
US11115293B2 (en) * 2016-11-17 2021-09-07 Amazon Technologies, Inc. Networked programmable logic service provider
US10180924B2 (en) * 2017-05-08 2019-01-15 Liqid Inc. Peer-to-peer communication for graphics processing units
US10536329B2 (en) * 2017-06-01 2020-01-14 Dell Products L.P. Assisted configuration of data center infrastructure
US11249808B2 (en) * 2017-08-22 2022-02-15 Intel Corporation Connecting accelerator resources using a switch
FR3076142A1 (fr) * 2017-12-21 2019-06-28 Bull Sas Procede et serveur d'attribution d'adresses topologiques a des commutateurs de reseau, programme d'ordinateur et grappe de serveurs correspondants
US10417168B1 (en) 2018-03-14 2019-09-17 International Business Machines Corporation Combining switch slot resources
US10728172B2 (en) 2018-03-28 2020-07-28 Quanta Computer Inc. Method and system for allocating system resources
US11315013B2 (en) * 2018-04-23 2022-04-26 EMC IP Holding Company LLC Implementing parameter server in networking infrastructure for high-performance computing
WO2020133841A1 (en) * 2018-12-28 2020-07-02 Huawei Technologies Co., Ltd. Apparatus and method for locking pcie network having non-transparent bridging
US10540185B1 (en) 2019-01-11 2020-01-21 Liqid Inc. Software deployment in disaggregated computing platforms
US11954326B2 (en) 2019-02-01 2024-04-09 Liqid Inc. Memory device instantiation onto communication fabrics
US11392525B2 (en) 2019-02-01 2022-07-19 Liqid Inc. Specialized device instantiation onto PCIe fabrics
US10585827B1 (en) 2019-02-05 2020-03-10 Liqid Inc. PCIe fabric enabled peer-to-peer communications
EP3959860A4 (en) 2019-04-25 2023-01-25 Liqid Inc. MULTI-PROTOCOL COMMUNICATION CONTROL FOR TISSUE
US11106616B1 (en) * 2019-11-21 2021-08-31 Xilinx, Inc. Virtualized peripheral component interconnect express (PCIe) device
US11822964B2 (en) * 2020-06-03 2023-11-21 Baidu Usa Llc Data protection with static resource partition for data processing accelerators
US11442776B2 (en) 2020-12-11 2022-09-13 Liqid Inc. Execution job compute unit composition in computing clusters
CN114968591A (zh) * 2022-06-09 2022-08-30 阿里巴巴(中国)有限公司 资源共享系统、方法、电子设备、存储介质和程序产品

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101729356A (zh) * 2008-10-16 2010-06-09 世仰科技股份有限公司 共享储存之汇流排交换器
CN102209103A (zh) * 2010-03-29 2011-10-05 英特尔公司 向多个存储控制器多播写请求
CN102707991A (zh) * 2012-05-17 2012-10-03 中国科学院计算技术研究所 多根i/o 虚拟化共享方法和系统
CN102722414A (zh) * 2012-05-22 2012-10-10 中国科学院计算技术研究所 用于多根i/o 虚拟化共享系统的i/o 资源管理方法
EP2515241A2 (en) * 2011-04-21 2012-10-24 RJ Intellectual Properties, LLC Unified system area network and switch
CN103210379A (zh) * 2012-08-17 2013-07-17 华为技术有限公司 服务器系统、管理方法及设备

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005018325A (ja) * 2003-06-25 2005-01-20 Hitachi Ltd 半導体集積回路
JP3944176B2 (ja) * 2004-02-20 2007-07-11 株式会社東芝 探索要求送信装置およびプログラム
US7340578B1 (en) * 2004-04-28 2008-03-04 Sun Microsystems, Inc. Method and apparatus for maintaining an accurate inventory of storage capacity in a clustered data processing system
JP2006318012A (ja) * 2005-05-10 2006-11-24 Hitachi Ltd ディスク制御システム
TW201015336A (en) 2008-10-03 2010-04-16 Accusys Technology Ltd Shared-storage bus switch
US7792916B2 (en) * 2008-10-20 2010-09-07 International Business Machines Corporation Management of cluster-wide resources with shared variables
US8595343B2 (en) * 2008-11-14 2013-11-26 Dell Products, Lp System and method for sharing storage resources
CN201369046Y (zh) 2009-03-27 2009-12-23 福建星网锐捷网络有限公司 快速外部设备互联总线数据通信系统
JP5074457B2 (ja) * 2009-06-04 2012-11-14 株式会社日立製作所 計算機システム、スイッチ切り替え方法及びpciスイッチ
US8521915B2 (en) 2009-08-18 2013-08-27 Fusion-Io, Inc. Communicating between host computers and peripheral resources in an input/output (I/O) virtualization system
US8463934B2 (en) 2009-11-05 2013-06-11 Rj Intellectual Properties, Llc Unified system area network and switch
US8732349B2 (en) * 2009-11-18 2014-05-20 Fusion-Io, Inc. Assignment of resources in an input/output (I/O) virtualization system
US20110282963A1 (en) 2010-05-11 2011-11-17 Hitachi, Ltd. Storage device and method of controlling storage device
US8589613B2 (en) 2010-06-02 2013-11-19 Intel Corporation Method and system to improve the operations of an integrated non-transparent bridge device
US8429325B1 (en) 2010-08-06 2013-04-23 Integrated Device Technology Inc. PCI express switch and method for multi-port non-transparent switching
JP5555903B2 (ja) 2010-09-27 2014-07-23 株式会社日立製作所 I/oアダプタ制御方法、計算機及び仮想計算機生成方法
WO2012157103A1 (ja) 2011-05-19 2012-11-22 株式会社日立製作所 マルチルートスイッチ、計算機、及び計算機間通信方法
RU2461055C1 (ru) * 2011-07-13 2012-09-10 Федеральное государственное унитарное предприятие "Научно-исследовательский институт "Квант" Кластерная система с прямой коммутацией каналов
JP5903801B2 (ja) 2011-08-23 2016-04-13 富士通株式会社 通信装置およびid設定方法
US9086919B2 (en) * 2012-08-23 2015-07-21 Dell Products, Lp Fabric independent PCIe cluster manager
WO2014106321A1 (zh) 2013-01-04 2014-07-10 华为技术有限公司 一种基于pcie网络的虚拟机通信方法、服务器及系统
CN103092676A (zh) 2013-01-04 2013-05-08 华为技术有限公司 虚拟机集群的模拟输入输出方法、装置及系统
CN103095463B (zh) * 2013-02-01 2016-08-03 福建星网锐捷网络有限公司 Pcie交换网系统和通信方法
CN103353861B (zh) 2013-06-18 2016-06-29 中国科学院计算技术研究所 实现分布式i/o资源池化的方法及装置
CN103312720B (zh) 2013-07-01 2016-05-25 华为技术有限公司 一种数据传输方法、设备及系统

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101729356A (zh) * 2008-10-16 2010-06-09 世仰科技股份有限公司 共享储存之汇流排交换器
CN102209103A (zh) * 2010-03-29 2011-10-05 英特尔公司 向多个存储控制器多播写请求
EP2515241A2 (en) * 2011-04-21 2012-10-24 RJ Intellectual Properties, LLC Unified system area network and switch
CN102707991A (zh) * 2012-05-17 2012-10-03 中国科学院计算技术研究所 多根i/o 虚拟化共享方法和系统
CN102722414A (zh) * 2012-05-22 2012-10-10 中国科学院计算技术研究所 用于多根i/o 虚拟化共享系统的i/o 资源管理方法
CN103210379A (zh) * 2012-08-17 2013-07-17 华为技术有限公司 服务器系统、管理方法及设备

Also Published As

Publication number Publication date
EP3025240A1 (en) 2016-06-01
CN109032974B (zh) 2021-10-19
JP6231679B2 (ja) 2017-11-15
JP2016530618A (ja) 2016-09-29
CN109032974A (zh) 2018-12-18
RU2016105477A (ru) 2017-08-25
AU2014295583B2 (en) 2017-07-20
EP3025240A4 (en) 2016-06-22
EP3025240B1 (en) 2017-09-06
RU2640648C2 (ru) 2018-01-10
CN105408879A (zh) 2016-03-16
EP3252613B1 (en) 2019-01-02
US20150026385A1 (en) 2015-01-22
KR20160033771A (ko) 2016-03-28
EP3252613A1 (en) 2017-12-06
US9672167B2 (en) 2017-06-06
ZA201600914B (en) 2020-01-29
WO2015010597A1 (en) 2015-01-29
AU2014295583A1 (en) 2016-03-03
KR101853748B1 (ko) 2018-05-02

Similar Documents

Publication Publication Date Title
CN105408879B (zh) 快捷外围部件互连域的资源管理
US10325343B1 (en) Topology aware grouping and provisioning of GPU resources in GPU-as-a-Service platform
US10359940B2 (en) Method and apparatus for dynamically allocating storage resources to compute nodes
US20210112003A1 (en) Network interface for data transport in heterogeneous computing environments
US7594060B2 (en) Data buffer allocation in a non-blocking data services platform using input/output switching fabric
US7865654B2 (en) Programmable bridge header structures
US9237093B2 (en) Bandwidth on-demand adaptive routing
KR20120092930A (ko) 맵 리듀스를 이용한 분산 메모리 클러스터 제어 장치 및 방법
WO2014183531A1 (zh) 一种分配远程内存的方法及装置
CN105324758A (zh) 启用封装的pcie虚拟化
CN104219279A (zh) 用于超大规模分布式处理应用的模块化架构的系统和方法
US20170124018A1 (en) Method and Device for Sharing PCIE I/O Device, and Interconnection System
US20070150699A1 (en) Firm partitioning in a system with a point-to-point interconnect
Yang et al. Joint optimization of mapreduce scheduling and network policy in hierarchical clouds
CN105745900B (zh) 访问文件的方法、分布式存储系统和网络设备
CN105530197A (zh) SoC节点之间资源共享配置方法和设备
CN107155307B (zh) 访问文件的方法、系统和主机
CN108241537A (zh) 资源分配系统、设备分配控制器以及设备识别方法

Legal Events

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