Coordinated management system and method based on multi-card interconnection
By deploying switching units and management components in server and switch enclosures, address and port mapping relationships are generated, enabling stable and efficient data transmission and flexible switching of topology relationships between multiple GPUs, thus solving the problem of limited bandwidth for inter-GPU communication in traditional technologies.
Patent Information
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- INSPUR SUZHOU INTELLIGENT TECH CO LTD
- Filing Date
- 2026-04-30
- Publication Date
- 2026-06-05
AI Technical Summary
Traditional server nodes have limited communication bandwidth between GPUs, making it difficult to achieve stable and efficient data transmission between multiple GPUs. This is especially true when scale-up interconnect protocols are inconsistent and ecosystem compatibility is poor, making it difficult to meet the real-time requirements of application scenarios.
By deploying external switching units and collaborative management components, combined with internal switching units, in-band management components, and out-of-band management components, address mapping relationships and port mapping relationships are generated to enable data packet transmission between multiple cards, and efficient transmission and flexible switching of topology relationships are achieved through port routing tables.
It enables stable and efficient data transmission between multiple acceleration devices on multiple servers and supports flexible switching of topology relationships between multiple acceleration devices, solving the problem of low data transmission efficiency in traditional technologies.
Smart Images

Figure CN122160348A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of server technology, and in particular to a collaborative management system and method based on multi-card interconnection. Background Technology
[0002] Traditional server nodes typically support a single set of eight Graphics Processing Units (GPUs). However, these eight GPUs lack interconnectivity, limiting inter-GPU communication bandwidth. This necessitates high-bandwidth intra-node interconnect technology (scale-up) to improve GPU computing power utilization. While some GPUs natively support scale-up interconnect protocols, full scale-up interconnects are limited to eight GPUs. These interconnect protocols vary from manufacturer to manufacturer and are often closed-source, posing significant challenges to server node ecosystem compatibility. Furthermore, some GPUs do not support inter-GPU scale-up interconnect protocols at all.
[0003] Currently, optical switching units (switches) based on the Peripheral Component Interconnectexpress (PCIe) standard provide a more direct data transmission path. Data does not need to pass through complex network protocol stacks and multi-layer network devices, reducing data transmission latency and overhead. If PCIe switches can be applied to multi-GPU interconnect management platforms, data transmission between GPUs will be more stable and efficient, better meeting the needs of applications with high real-time requirements.
[0004] It is evident that how to apply PCIe Switch to a multi-card interconnection management platform to achieve stable and efficient data transmission between multiple cards is a problem that needs to be solved by those skilled in the art. Summary of the Invention
[0005] This application provides a collaborative management system, method, apparatus, device, and medium based on multi-card interconnection to at least solve the problem of low data transmission efficiency between multiple cards in related technologies.
[0006] This application provides a collaborative management system based on multi-card interconnection, including an external switching unit and collaborative management component deployed in a switch chassis, and an internal switching unit, in-band management component, and out-of-band management component deployed on each server; The out-of-band management component communicates with both the internal switching unit and the in-band management component to generate address mapping and port mapping relationships based on the server's configuration information, and to store the in-band topology file in the in-band management component; the configuration information includes the address information of the acceleration device, the connection relationship between servers, and port information; The internal switching unit communicates with the external switching unit to transmit the first data packet to the external switching unit through the first port corresponding to the target acceleration device, based on the address mapping and port mapping relationship generated by the out-of-band management component. The external switching unit communicates with the collaborative management component to transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device, based on the port routing table recorded by the collaborative management component; wherein, the port routing table contains the ports corresponding to each of the acceleration devices.
[0007] This application also provides a collaborative management method based on multi-card interconnection, applicable to internal switching units, the method including: The address mapping and port mapping relationships are obtained from the out-of-band management component; these relationships are generated by the out-of-band management component based on the server's configuration information. Upon receiving the first data packet transmitted by the source acceleration device, based on the address mapping relationship and port mapping relationship, the first data packet is transmitted to the external switching unit through the first port corresponding to the target acceleration device, so that the external switching unit can determine the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; and the first data packet is transmitted to the internal switching unit corresponding to the target acceleration device through the second port.
[0008] This application also provides a collaborative management method based on multi-card interconnection, applicable to external switching units, the method including: Receive the first data packet transmitted by the internal switching unit through the first port corresponding to the target acceleration device; wherein, the first port is the port determined by the internal switching unit based on the address mapping relationship and the port mapping relationship; Based on the port routing table recorded by the collaborative management component, the second port matching the target acceleration device is determined; the port routing table contains the ports corresponding to each acceleration device. The first data packet is transmitted through the second port to the internal switching unit corresponding to the target acceleration device.
[0009] This application also provides a collaborative management device based on multi-card interconnection, suitable for internal switching units, the device including an acquisition unit and a first transmission unit; The acquisition unit is used to obtain address mapping relationships and port mapping relationships from the out-of-band management component; wherein, the address mapping relationships and port mapping relationships are generated by the out-of-band management component based on the server's configuration information; The first transmission unit is used to, upon receiving the first data packet transmitted by the source acceleration device, transmit the first data packet to the external switching unit through the first port corresponding to the target acceleration device based on the address mapping relationship and port mapping relationship, so that the external switching unit can determine the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; and transmit the first data packet to the internal switching unit corresponding to the target acceleration device through the second port.
[0010] This application also provides a collaborative management device based on multi-card interconnection, suitable for external switching units, the device including a receiving unit, a determining unit, and a second transmission unit; The receiving unit is used to receive the first data packet transmitted by the internal switching unit through the first port corresponding to the target acceleration device; wherein, the first port is the port determined by the internal switching unit based on the address mapping relationship and the port mapping relationship; The determining unit is used to determine the second port that matches the target acceleration device based on the port routing table recorded by the collaborative management component; wherein, the port routing table contains the ports corresponding to each acceleration device. The second transmission unit is used to transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device.
[0011] This application also provides an electronic device, including: a memory for storing a computer program; and a processor for implementing the steps of any of the above-described multi-card interconnection-based collaborative management methods when executing the computer program.
[0012] This application also provides a computer-readable storage medium storing a computer program, wherein the computer program, when executed by a processor, implements the steps of any of the above-described collaborative management methods based on multi-card interconnection.
[0013] This application also provides a computer program product, including a computer program that, when executed by a processor, implements the steps of any of the above-described collaborative management methods based on multi-card interconnection.
[0014] In this application, the out-of-band management component communicates with both the internal switching unit and the in-band management component to generate address and port mapping relationships based on the server's configuration information, and stores the in-band topology file in the in-band management component. The configuration information includes the address information of the acceleration devices, the connection relationships between servers, and port information. The internal switching unit communicates with the external switching unit to transmit the first data packet through the first port corresponding to the target acceleration device to the external switching unit, based on the address and port mapping relationships generated by the out-of-band management component. The external switching unit communicates with the collaborative management component to transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device, based on the port routing table recorded by the collaborative management component. The port routing table contains the ports corresponding to each acceleration device. In this technical solution, through the collaborative work of the external switching unit and collaborative management component deployed in the switch chassis, and the internal switching unit, in-band management component, and out-of-band management component deployed on each server, stable and efficient data transmission between multiple acceleration devices on multiple servers is achieved, and flexible switching of topology relationships between multiple acceleration devices is possible. Attached Figure Description
[0015] To more clearly illustrate the embodiments of this application, the accompanying drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0016] Figure 1 A schematic diagram of a collaborative management system based on multi-card interconnection provided in an embodiment of this application; Figure 2 A schematic diagram of a topology switching process provided in an embodiment of this application; Figure 3 A flowchart illustrating a collaborative management method based on multi-card interconnection for internal switching units, provided as an embodiment of this application; Figure 4 A flowchart illustrating a collaborative management method based on multi-card interconnection for external switching units, provided as an embodiment of this application; Figure 5 A schematic diagram of a multi-card interconnect-based collaborative management device for internal switching units provided in this application embodiment; Figure 6 This is a schematic diagram of a collaborative management device based on multi-card interconnection for external switching units, provided in an embodiment of this application. Detailed Implementation
[0017] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the protection scope of this application.
[0018] It should be noted that, in the description of this application, the terms "comprising," "including," or any other variations thereof are intended to cover non-exclusive inclusion, such that a process, method, article, or apparatus that comprises a list of elements includes not only those elements but also other elements not expressly listed, or elements inherent to such a process, method, article, or apparatus. The terms "first," "second," etc., in this application are used to distinguish similar objects and are not used to describe a specific order or sequence.
[0019] To enable those skilled in the art to better understand the present application, the present application will be further described in detail below with reference to the accompanying drawings and specific embodiments.
[0020] Traditional server nodes typically contain multiple GPUs, with each GPU constituting an acceleration device. For example, if eight GPUs are deployed on each server, the server can be considered an 8-GPU device. To meet significant computing power demands, multiple servers often need to work collaboratively. In this embodiment, to achieve multi-GPU interconnection, a switching unit is deployed on each server; a switch enclosure, containing switching units, is deployed between the servers. The switching units can be PCIe switches. For ease of distinction, the PCIe switches deployed on each server can be referred to as internal switching units, while the PCIe switches within the switch enclosure can be referred to as external switching units.
[0021] The PCIe switch can utilize a 104-lane PCIe switch chip configured with an internally synthesized switch mode (iSSw mode). Each CPU's PE0 / PE2 / PE3 / PE4 ports connect to two PCIe switches. Each PCIe switch has two uplink ports and six downlink ports. The six downlink ports can connect to two GPUs, two PCIe Retimer Cards, and two non-volatile memory express (NVMe) hard drives, maximizing PCIe utilization. Each PCIe switch connects to the PCIe Retimer Card's port via a Fabric port.
[0022] By deploying internal and external switching units, multiple acceleration devices on multiple servers can be interconnected. After the switching units are deployed, in order to ensure smooth data packet transmission between acceleration devices and to dynamically adjust the topology of the multi-card interconnection system according to changes in business needs, in-band and out-of-band management components are deployed on the servers, and collaborative management components are deployed on the switch chassis.
[0023] In its initial state, the out-of-band management component generates address and port mappings based on the server's configuration information and stores the in-band topology file. The collaborative management component then constructs a port routing table based on the topology. During subsequent data packet transmission, the internal switching unit relies on the address and port mappings to transmit data packets to the external switching unit. The external switching unit, in turn, relies on the port routing table to transmit data packets through the corresponding Fabric port to the internal switching unit corresponding to the target acceleration device.
[0024] When a topology switch is required, the collaborative management component can update the port routing table based on the topology switch request and send topology update response data back from the out-of-band management component. The out-of-band management component updates the system topology based on the topology update response data and transmits the topology update response data to the in-band management component. This allows the in-band management component to update its in-band topology file based on the topology update response data transmitted from the out-of-band management component, ensuring the correctness of the in-band topology file. Through the collaborative work of the external switching units and collaborative management components deployed in the switch chassis, the internal switching units deployed on each server, the in-band management component, and the out-of-band management component, stable and efficient data transmission between multiple acceleration devices on multiple servers is achieved, and flexible switching of topology relationships between multiple acceleration devices is also possible.
[0025] Figure 1 The schematic diagram of a collaborative management system based on multi-card interconnection provided in this application embodiment includes an external switching unit 11 and a collaborative management component 12 deployed in a switch chassis 1, and an internal switching unit 21, an in-band management component 22, and an out-of-band management component 23 deployed on each server 2.
[0026] Figure 1 Taking two servers 2 and one switch enclosure 1 as an example, in practical applications, more servers 2 and switch enclosures 1 can be set up according to business needs. For example, by setting up 4 servers and 2 switch enclosures, a 32-card interconnection system can be formed. By setting up 9 servers and 4 switch enclosures, a 72-card interconnection system can be formed. In this embodiment of the application, the number of servers 2 and switch enclosures 1 is not limited.
[0027] Each server 2 constitutes a node (HOST). Taking a 72-card interconnect system as an example, the 72 GPU cards between nodes are efficiently interconnected through a PCIe switch box. Each node is an AI server, containing 8 GPUs.
[0028] The GPU interconnection between hosts is as follows: The GPU connects to the host's internal signal enhancement card (PCIe Retimer Card) via a PCIe switch. The host's internal PCIe Retimer Card connects to the PCIe connector of the PCIe Switch box via a PCIe cable. Within the PCIe Switch box, forwarding may occur through one or more PCIe Switch chips. The PCIe Switch box then connects to another host's internal PCIe Retimer Card via another PCIe cable, and finally, through the host's internal PCIe switch, cross-host interconnection between GPUs is achieved. Through this connection method, GPU interconnection between hosts is completed, forming a multi-GPU interconnection system.
[0029] The processing flow of each server 2 is similar. In this embodiment, the processing flow of the internal switching unit 21, in-band management component 22, and out-of-band management component 23 on a single server will be used as an example for description. The processing flow of each switch chassis 1 is similar. In this embodiment, the processing flow of the external switching unit 11 and collaborative management component 12 of a single switch chassis 1 will be used as an example for description.
[0030] The out-of-band management component 23 communicates with the internal switching unit 21 and the in-band management component 22 respectively, and generates address mapping and port mapping relationships based on the configuration information of the server 2, and stores the in-band topology file to the in-band management component 22; wherein, the configuration information includes the address information of the acceleration device, the connection relationship between the servers 2 and the port information.
[0031] The internal switching unit 21 communicates with the external switching unit 11 to obtain the address mapping relationship and port mapping relationship from the out-of-band management component 23; when the first data packet transmitted by the source acceleration device is obtained, the first data packet is transmitted to the external switching unit 11 through the first port corresponding to the target acceleration device based on the address mapping relationship and port mapping relationship.
[0032] Each acceleration device within server 2 has its own corresponding local address. The Basic Input / Output System (BIOS) of the Central Processing Unit (CPU) within each server 2 reserves resources for all GPUs within server 2, that is, it generates a local address within the host for accessing the GPU. At the same time, host-to-GPU and GPU-to-GPU access are also based on this local address.
[0033] In practical applications, firmware components are deployed on each internal switching unit 21; the firmware components are used to assign global addresses to all acceleration devices within server 2.
[0034] The firmware components of the internal switching unit 21 support designing each port as a corresponding port type according to the hardware design, including uplink ports, downlink ports, and Fabric ports. Uplink ports are used to connect to the CPU; downlink ports are used to connect to the GPU; and Fabric ports are used to connect to the PCIe Retimer Card.
[0035] In the Fabric network built by the firmware components of the PCIe Switch chip, a global address is assigned to each GPU. In the PCIe Fabric domain, PCIe packets are routed through the global address.
[0036] Out-of-band management component 23 communicates with firmware component to obtain global addresses corresponding to all acceleration devices in server 2; and constructs address mapping relationship based on local addresses and global addresses of all acceleration devices in server 2.
[0037] In practical implementation, a PCIe address mapping mechanism can be designed at the PCIe downlink port where each GPU is located. Through address mapping between Global Address and Local Address, the Local Address of the host domain can be converted into a Global Address, thereby realizing data routing throughout the entire system.
[0038] For example, at the downlink port of GPU0 on HOST00, there is the following address mapping relationship: 0xXX_0000_0000(Local Address) => HOST01 GPU0 Global Address; 0xYY_0000_0000(Local Address) => HOST02 GPU0 Global Address; ...; 0xZZ_0000_0000(Local Address) => HOST09 GPU0 Global Address.
[0039] When HOST00's GPU0 accesses the aforementioned 0xXX_0000_0000 address, based on the address mapping mechanism, this local address will be converted into a global address, namely the HOST01 GPU0 Global Address. This global address belongs to another PCIe Switch, such as HOST01's first PCIe Switch.
[0040] In addition to address translation, different acceleration devices use different Fabric ports. In order to ensure the correct transmission of data packets, a PCIe port forwarding routing mechanism is designed at the PCIe downlink port of each GPU. This mechanism can record the Fabric ports corresponding to the global addresses of all acceleration devices in the server in a port mapping manner.
[0041] When the target acceleration device is HOST01 GPU0, the data packet needs to be forwarded from a fixed Fabric port to another PCIe switch.
[0042] For example, at the downstream port of GPU0 on HOST00, there is the following port mapping relationship: Port 0x80 => HOST01 GPU0; Port 0x80 => HOST02 GPU0; ...; Port 0x80 => HOST09 GPU0.
[0043] In this embodiment of the application, when the internal switching unit 21 obtains the first data packet transmitted by the source acceleration device, it converts the first local address of the target acceleration device carried in the first data packet into the first global address according to the address mapping relationship; wherein, the address mapping relationship includes the mapping relationship between the local address and the global address of all acceleration devices in the server 2.
[0044] The internal switching unit 21 determines the first port that matches the first global address based on the port mapping relationship; wherein the port mapping relationship includes the ports corresponding to the global addresses of all acceleration devices within server 2. The first data packet is then transmitted to the external switching unit 11 through the first port.
[0045] Assuming that the target acceleration device is HOST01 GPU0, the internal switching unit 21 determines that the Fabric port corresponding to HOST01 GPU0 is Port 0x80 according to the port mapping relationship. At this time, the internal switching unit 21 will transmit the data packet to the external switching unit 11 through the Port 0x80 port.
[0046] The external switching unit 11 communicates with the collaborative management component 12 to receive the first data packet transmitted by the internal switching unit 21; and determines the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component 12; wherein the port routing table contains the ports corresponding to each of the acceleration devices; and transmits the first data packet to the internal switching unit 21 corresponding to the target acceleration device through the second port.
[0047] The firmware components deployed on the external switching unit 11 in switch chassis 1 support designing each port as a corresponding port type according to the hardware design. The port type is set to Fabric port, used for connecting the PCIe Retimer Card.
[0048] The collaborative management component 12 records the port routing table according to the topology. When the destination is HOST01GPU0, the data packet needs to be forwarded from a fixed Fabric port to another PCIe Switch. For example, at port 0x00, the following definition is made: Port 0x00 => HOST01 GPU0; Port 0x10 => HOST02 GPU0; Port 0x20 => HOST03 GPU0; Port 0x30 => HOST04 GPU0; Port 0x40 => HOST05 GPU0; Port 0x50 => HOST06 GPU0; Port 0x60 => HOST07 GPU0; Port 0x70 => HOST08 GPU0; Port 0x80 => HOST09 GPU0.
[0049] When the target acceleration device is HOST01 GPU0, the external switching unit 11 determines the Fabric port corresponding to HOST01 GPU0 as Port 0x00 according to the port routing table. At this time, the external switching unit 11 will transmit the data packet to the internal switching unit 21 of HOST01 through Port 0x00.
[0050] As can be seen from the above technical solution, the out-of-band management component communicates with both the internal switching unit and the in-band management component to generate address mapping and port mapping relationships based on the server's configuration information, and stores the in-band topology file in the in-band management component. The configuration information includes the address information of the acceleration devices, the connection relationships between servers, and port information. The internal switching unit communicates with the external switching unit to obtain the address mapping and port mapping relationships from the out-of-band management component. Upon receiving the first data packet transmitted by the source acceleration device, it transmits the first data packet to the external switching unit through the first port corresponding to the target acceleration device, based on the address mapping and port mapping relationships. The external switching unit communicates with the collaborative management component to receive the first data packet transmitted by the internal switching unit; it determines the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; the port routing table contains the ports corresponding to all acceleration devices; and it transmits the first data packet to the internal switching unit corresponding to the target acceleration device through the second port. In this technical solution, through the collaborative work of external switching units and collaborative management components deployed in the switch chassis, internal switching units, in-band management components, and out-of-band management components deployed on each server, stable and efficient data transmission between multiple acceleration devices on multiple servers is achieved, and flexible switching of topology relationships between multiple acceleration devices is also possible.
[0051] Each switching unit has its own switching unit number. In order to distinguish whether the current data packet belongs to the data packet that the internal switching unit 21 needs to process, after the internal switching unit 21 obtains the first data packet, it can first determine whether the switching unit number carried by the first data packet belongs to the local switching unit number.
[0052] If the switching unit number carried by the first data packet does not belong to the local switching unit number, it means that the first data packet needs to be forwarded to the corresponding destination acceleration device for processing through the external switching unit 11. At this time, the internal switching unit 21 will perform the operation steps based on the address mapping relationship and port mapping relationship to transmit the first data packet to the external switching unit 11 through the first port corresponding to the target acceleration device.
[0053] The above description uses the example of internal switching unit 21 transmitting a first data packet to an external unit. In practical applications, internal switching unit 21 can also receive data packets transmitted by external switching unit 11. To facilitate the distinction between different data packets, the data packet transmitted from external switching unit 11 to internal switching unit 21 can be referred to as the second data packet.
[0054] When the internal switching unit 21 receives the second data packet transmitted by the external switching unit 11, it determines whether the switching unit number carried in the second data packet belongs to its own switching unit number. If the switching unit number carried in the second data packet belongs to its own switching unit number, it means that the destination acceleration device of the second data packet belongs to the acceleration device connected to the internal switching unit 21. At this time, the internal switching unit 21 can transmit the second data packet to the corresponding acceleration device.
[0055] In a specific implementation, the internal switching unit 21 can convert the second global address carried by the second data packet into a second local address according to the address mapping relationship; and transmit the second data packet to the acceleration device corresponding to the second local address.
[0056] In this embodiment, the number of servers 2 and switch enclosures 1 in the multi-card interconnect system can be determined according to actual business needs. After constructing the multi-card interconnect system with a determined number of servers 2 and switch enclosures 1, the topology of the multi-card interconnect system can also be dynamically adjusted according to changes in business needs.
[0057] When a topology switch is required, a topology switch request can be sent to the collaborative management component 12.
[0058] The collaborative management component 12 communicates with the out-of-band management component 23 to update the port routing table upon receiving a topology switching request and to send topology update response data back to the out-of-band management component 23.
[0059] The topology update response data carries the server number after the topology switch and the endpoint device number (BUS) corresponding to each server number.
[0060] The endpoint device can be a device connected to the internal switching unit 21, and there can be various types of endpoint devices. In this embodiment, an acceleration device is used as an example of an endpoint device.
[0061] Out-of-band management component 23 is used to receive topology update response data from collaborative management component 12; update the system topology based on the topology update response data; and transmit the topology update response data to in-band management component 22; wherein, the system topology includes the connection relationships between acceleration devices on different servers 2. In-band management component 22 is used to update the in-band topology file according to the topology update response data transmitted by out-of-band management component 23.
[0062] In practical applications, topology switching requests carry the number of multi-SIM cards after the switch. The collaborative management component 12 can determine at least one multi-SIM subsystem based on the number of multi-SIM cards carried in the topology switching request. It then filters the host port routing information that matches the multi-SIM subsystem from the port routing table and uses the host port routing information as the port routing table for the multi-SIM subsystem.
[0063] The collaborative management component 12 can feed back the host and its corresponding endpoint device number in the host port routing information to the out-of-band management component 23, so that the out-of-band management component 23 can update the system topology based on the host and its corresponding endpoint device number.
[0064] Taking a 64-card interconnect system as an example, Table 1 below shows the list of devices corresponding to a 64-card interconnect system.
[0065] Table 1. List of devices corresponding to the 64-card interconnect system .
[0066] When switching from a 64-GPU interconnect system to two 32-GPU interconnect systems, the information in the device list needs to be modified. Each server contains 8 GPUs, and a 32-GPU interconnect system requires retaining 4 servers. For example, if the first 4 servers form one 32-GPU interconnect system and the latter 4 servers form another, Table 2 below shows the device list for the first 4 servers.
[0067] Table 2. List of devices corresponding to the first 4 servers .
[0068] The collaborative management component 12 can extract topology update response data from the device list corresponding to the first 4 servers. Table 3 below shows the topology update response data list corresponding to the first 4 servers, and Table 4 shows the topology update response data list corresponding to the last 4 servers.
[0069] Table 3. List of topology update response data for the first four servers .
[0070] Table 4 lists the topology update response data for the last four servers. .
[0071] When the out-of-band management component 23 receives the topology update response data from the collaborative management component 12, it can learn which servers are included in the updated system topology and the acceleration devices contained within the servers.
[0072] Out-of-band management component 23 updates the system topology based on the topology update response data and transmits the topology update response data to in-band management component 22, so that in-band management component 22 can update the in-band topology file based on the topology update response data, ensuring the correctness of the in-band topology file.
[0073] For example, to switch a 64-card topology to two interconnected 32-card systems, the cluster management platform notifies the collaborative management component 12 within each switch chassis 1 to modify the port routing table.
[0074] Taking GPU0 as an example, each server 2 contains one GPU0. When switching from a 64-card topology to two interconnected 32-card systems, at Port0x00, only the port routing tables of the first four hosts can be retained: Port 0x00 => HOST01 GPU0; Port 0x10 => HOST02 GPU0; Port 0x20 => HOST03 GPU0; Port 0x30 => HOST04 GPU0.
[0075] The other four routing tables are deleted to ensure that packets originating from HOST01 GPU0 are not routed to the remaining four hosts. Correspondingly, at Port 0x40, only the port routing tables for the last four hosts are retained. Port 0x40 => HOST05 GPU0; Port 0x50 => HOST06 GPU0; Port 0x60 => HOST07 GPU0; Port 0x70 => HOST08 GPU0.
[0076] The above process uses GPU0 as an example. The same operation is performed on the other 8 GPUs.
[0077] Figure 2 This is a schematic diagram of a topology switching process provided in an embodiment of this application. Figure 2Taking an eight-server and one-switch chassis as an example, the eight servers are designated as Server 00 to Server 07. Each server contains an operating system, a baseboard management controller, a central processing unit, internal switching units, and acceleration devices. An out-of-band management component is deployed on the baseboard management controller. This collaborative management component notifies the out-of-band management components of each server to update the GPU topology. The collaborative management component communicates with the out-of-band management component through a dedicated interface (Oem IPMI). The collaborative management component updates the return value of the Oem IPMI interface, and the out-of-band management components of each server update the system topology according to the Oem IPMI interface return value, thereby achieving dynamic and efficient switching of the system topology.
[0078] The GPUs between nodes achieve efficient full interconnection via PCIe switches, fully leveraging the high-speed, low-latency data transmission characteristics of PCIe to ensure efficient data interaction between multiple cards. According to the topology switching method of the multi-card interconnect system provided in this application, by properly configuring the PCIe switches, the entire multi-card interconnect system can achieve topology switching with any number of cards. This effectively avoids the shortcomings of traditional interconnect methods during topology switching, such as excessively long device re-enumeration time, difficulty in guaranteeing signal integrity, and compatibility issues.
[0079] The multi-card interconnection-based collaborative management system also includes an operating system (OS) deployed on each server 2; the operating system communicates with the out-of-band management component to obtain the system topology recorded by the out-of-band management component through the Intelligent Platform Management Interface (IPMI).
[0080] The operating system is used to poll the system topology and transmit the topology change information to the out-of-band management component when it detects a change. The out-of-band management component is used to update the system topology based on the topology change information received from the operating system.
[0081] In the specific implementation, the Baseboard Management Controller (BMC), where the out-of-band management component 23 is located, provides a customized IPMI function interface. A dedicated client program in the operating system can call this interface to synchronize the GPU connection topology information recorded in the BMC to the operating system, thereby facilitating the normal operation of upper-layer software such as graphics card drivers and data communication libraries. Using the IPMI protocol's proprietary "0x3C function group + 0xD4 command," the operating system synchronizes the GPU connection topology information from the server to the BMC.
[0082] In this embodiment, the out-of-band management component 23 is used to detect the operating status of all acceleration devices in the server 2; when a faulty acceleration device occurs, a fault identifier is set for the faulty acceleration device, and the global address of the faulty acceleration device is fed back to the collaborative management component 12.
[0083] The collaborative management component 12 is used to receive the global address of the fault acceleration device fed back by the out-of-band management component 23; and adjust the port routing table according to the global address of the fault acceleration device.
[0084] The collaborative management component 12 is used to send a fault message to the out-of-band management component 23 when there is no port in the port routing table that matches the target acceleration device.
[0085] Figure 3 A flowchart illustrating a collaborative management method based on multi-card interconnection for internal switching units, provided in this application embodiment, is included in the method: S301: Obtain address mapping and port mapping from out-of-band management components.
[0086] The address mapping and port mapping relationships are generated by the out-of-band management component based on the server's configuration information.
[0087] S302: Upon receiving the first data packet transmitted by the source acceleration device, based on the address mapping relationship and port mapping relationship, the first data packet is transmitted to the external switching unit through the first port corresponding to the target acceleration device.
[0088] This allows the external switching unit to determine the second port that matches the target acceleration device based on the port routing table recorded by the collaborative management component; and to transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device.
[0089] In some embodiments, upon receiving a first data packet transmitted by the source acceleration device, the first data packet is transmitted to an external switching unit through a first port corresponding to the target acceleration device, based on address mapping and port mapping relationships, including: Upon receiving the first data packet transmitted by the source acceleration device, the first local address of the target acceleration device carried in the first data packet is converted into the first global address according to the address mapping relationship; wherein, the address mapping relationship includes the mapping relationship between the local addresses and global addresses of all acceleration devices in the server; Based on the port mapping relationship, the first port matching the first global address is determined; where the port mapping relationship includes the ports corresponding to the global addresses of all acceleration devices within the server; The first data packet is transmitted to the external switching unit through the first port.
[0090] In some embodiments, before transmitting the first data packet to the external switching unit through the first port corresponding to the target acceleration device based on the address mapping relationship and port mapping relationship, the method further includes: Determine whether the switching unit number carried in the first data packet belongs to the local switching unit number; If the switching unit number carried by the first data packet does not belong to the local switching unit number, the operation step of transmitting the first data packet to the external switching unit through the first port corresponding to the target acceleration device is performed based on the address mapping relationship and port mapping relationship.
[0091] In some embodiments, it also includes: If a second data packet is received from an external switching unit, determine whether the switching unit number carried in the second data packet belongs to the local switching unit number. If the switching unit number carried by the second data packet belongs to the local switching unit number, the second data packet will be transmitted to the corresponding acceleration device.
[0092] In some embodiments, transmitting the second data packet to the corresponding acceleration device includes: Based on the address mapping relationship, the second global address carried in the second data packet is converted into the second local address; The second data packet is transmitted to the acceleration device corresponding to the second local address.
[0093] As can be seen from the above technical solution, the out-of-band management component communicates with both the internal switching unit and the in-band management component to generate address mapping and port mapping relationships based on the server's configuration information, and stores the in-band topology file in the in-band management component. The configuration information includes the address information of the acceleration devices, the connection relationships between servers, and port information. The internal switching unit communicates with the external switching unit to obtain the address mapping and port mapping relationships from the out-of-band management component. Upon receiving the first data packet transmitted by the source acceleration device, it transmits the first data packet to the external switching unit through the first port corresponding to the target acceleration device, based on the address mapping and port mapping relationships. The external switching unit communicates with the collaborative management component to receive the first data packet transmitted by the internal switching unit; it determines the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; the port routing table contains the ports corresponding to all acceleration devices; and it transmits the first data packet to the internal switching unit corresponding to the target acceleration device through the second port. In this technical solution, through the collaborative work of external switching units and collaborative management components deployed in the switch chassis, internal switching units, in-band management components, and out-of-band management components deployed on each server, stable and efficient data transmission between multiple acceleration devices on multiple servers is achieved, and flexible switching of topology relationships between multiple acceleration devices is also possible.
[0094] Figure 4 A flowchart illustrating a collaborative management method based on multi-card interconnection for external switching units, provided in this application embodiment, is included. The method comprises: S401: Receive the first data packet transmitted by the internal switching unit through the first port corresponding to the target acceleration device.
[0095] The first port is the port determined by the internal switching unit based on the address mapping relationship and the port mapping relationship.
[0096] S402: Based on the port routing table recorded by the collaborative management component, determine the second port that matches the target acceleration device.
[0097] The port routing table contains the ports corresponding to each acceleration device.
[0098] S403: Transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device.
[0099] As can be seen from the above technical solution, the out-of-band management component communicates with both the internal switching unit and the in-band management component to generate address mapping and port mapping relationships based on the server's configuration information, and stores the in-band topology file in the in-band management component. The configuration information includes the address information of the acceleration devices, the connection relationships between servers, and port information. The internal switching unit communicates with the external switching unit to obtain the address mapping and port mapping relationships from the out-of-band management component. Upon receiving the first data packet transmitted by the source acceleration device, it transmits the first data packet to the external switching unit through the first port corresponding to the target acceleration device, based on the address mapping and port mapping relationships. The external switching unit communicates with the collaborative management component to receive the first data packet transmitted by the internal switching unit; it determines the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; the port routing table contains the ports corresponding to all acceleration devices; and it transmits the first data packet to the internal switching unit corresponding to the target acceleration device through the second port. In this technical solution, through the collaborative work of external switching units and collaborative management components deployed in the switch chassis, internal switching units, in-band management components, and out-of-band management components deployed on each server, stable and efficient data transmission between multiple acceleration devices on multiple servers is achieved, and flexible switching of topology relationships between multiple acceleration devices is also possible.
[0100] Figure 5 This is a schematic diagram of a collaborative management device based on multi-card interconnection for internal switching units, provided in an embodiment of this application. The device includes an acquisition unit 51 and a first transmission unit 52. The acquisition unit 51 is used to acquire the address mapping relationship and port mapping relationship from the out-of-band management component; wherein the address mapping relationship and port mapping relationship are generated by the out-of-band management component based on the server's configuration information; The first transmission unit 52 is used to, upon receiving the first data packet transmitted by the source acceleration device, transmit the first data packet to the external switching unit through the first port corresponding to the target acceleration device based on the address mapping relationship and the port mapping relationship, so that the external switching unit can determine the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; and transmit the first data packet to the internal switching unit corresponding to the target acceleration device through the second port.
[0101] In some embodiments, the first transmission unit includes a conversion subunit, a matching subunit, and a transmission subunit; The conversion subunit is used to convert the first local address of the target acceleration device carried in the first data packet into the first global address according to the address mapping relationship when the first data packet transmitted by the source acceleration device is obtained; wherein, the address mapping relationship includes the mapping relationship between the local address and the global address of all acceleration devices in the server; The matching subunit is used to determine the first port that matches the first global address based on the port mapping relationship; wherein, the port mapping relationship includes the ports corresponding to the global addresses of all acceleration devices in the server; The transmission subunit is used to transmit the first data packet to the external switching unit through the first port.
[0102] In some embodiments, a number determination unit is also included; The number determination unit is used to determine whether the switching unit number carried by the first data packet belongs to the local switching unit number; if the switching unit number carried by the first data packet does not belong to the local switching unit number, the first transmission unit is triggered to perform the operation step of transmitting the first data packet to the external switching unit through the first port corresponding to the target acceleration device based on the address mapping relationship and port mapping relationship.
[0103] In some embodiments, it also includes: If a second data packet is received from an external switching unit, determine whether the switching unit number carried in the second data packet belongs to the local switching unit number. If the switching unit number carried by the second data packet belongs to the local switching unit number, the second data packet will be transmitted to the corresponding acceleration device.
[0104] In some embodiments, transmitting the second data packet to the corresponding acceleration device includes: Based on the address mapping relationship, the second global address carried in the second data packet is converted into the second local address; The second data packet is transmitted to the acceleration device corresponding to the second local address.
[0105] For a description of the features of the corresponding embodiment of the multi-card interconnection-based collaborative management device applicable to internal switching units, please refer to the relevant description of the corresponding embodiment of the multi-card interconnection-based collaborative management method applicable to internal switching units, which will not be repeated here.
[0106] Figure 6 This is a schematic diagram of a collaborative management device based on multi-card interconnection for an external switching unit, provided in an embodiment of this application. The device includes a receiving unit 61, a determining unit 62, and a second transmission unit 63. The receiving unit 61 is used to receive the first data packet transmitted by the internal switching unit through the first port corresponding to the target acceleration device; wherein, the first port is the port determined by the internal switching unit based on the address mapping relationship and the port mapping relationship; The determining unit 62 is used to determine the second port that matches the target acceleration device based on the port routing table recorded by the collaborative management component; wherein, the port routing table contains the ports corresponding to each of the acceleration devices. The second transmission unit 63 is used to transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device.
[0107] For a description of the features of the corresponding embodiment of the multi-card interconnect-based collaborative management device for external switching units, please refer to the relevant description of the corresponding embodiment of the multi-card interconnect-based collaborative management method for external switching units, which will not be repeated here.
[0108] Embodiments of this application also provide an electronic device, including a memory and a processor, wherein the memory stores a computer program, and the processor is configured to run the computer program to perform the steps in any of the above embodiments of the multi-card interconnection-based collaborative management method.
[0109] Embodiments of this application also provide a computer-readable storage medium storing a computer program, wherein the computer program is configured to execute the steps in any of the above embodiments of the collaborative management method based on multi-card interconnection.
[0110] In one exemplary embodiment, the aforementioned computer-readable storage medium may include, but is not limited to, various media capable of storing computer programs, such as a USB flash drive, read-only memory (ROM), random access memory (RAM), portable hard disk, magnetic disk, or optical disk.
[0111] The embodiments of this application also provide a computer program product, which includes a computer program that, when executed by a processor, implements the steps in any of the above embodiments of the collaborative management method based on multi-card interconnection.
[0112] Embodiments of this application also provide another computer program product, including a non-volatile computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps in any of the above embodiments of the multi-card interconnection-based collaborative management method.
[0113] Those skilled in the art will further recognize that the units and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, computer software, or a combination of both. To clearly illustrate the interchangeability of hardware and software, the components and steps of the various examples have been generally described in terms of functionality in the foregoing description. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0114] The foregoing has provided a detailed description of a collaborative management system, method, apparatus, electronic device, computer-readable storage medium, and computer program product based on multi-card interconnection provided in this application. Specific examples have been used to illustrate the principles and implementation methods of this application. The descriptions of the embodiments above are only intended to aid in understanding the methods and core ideas of this application. It should be noted that those skilled in the art can make various improvements and modifications to this application without departing from its principles, and these improvements and modifications also fall within the protection scope of this application.
Claims
1. A collaborative management system based on multi-card interconnection, characterized in that, This includes external switching units and collaborative management components deployed in the switch chassis, and internal switching units, in-band management components, and out-of-band management components deployed on each server; The out-of-band management component communicates with both the internal switching unit and the in-band management component to generate address mapping and port mapping relationships based on the server's configuration information, and to store the in-band topology file in the in-band management component; wherein, the configuration information includes the address information of the acceleration device, the connection relationship between servers, and port information; The internal switching unit communicates with the external switching unit to transmit the first data packet to the external switching unit through the first port corresponding to the target acceleration device, based on the address mapping relationship and the port mapping relationship generated by the out-of-band management component. The external switching unit communicates with the collaborative management component and is used to transmit the first data packet through the second port to the internal switching unit corresponding to the target acceleration device according to the port routing table recorded by the collaborative management component; wherein, the port routing table contains the ports corresponding to each of the acceleration devices.
2. The collaborative management system based on multi-card interconnection according to claim 1, characterized in that, The internal switching unit is configured to, upon receiving a first data packet transmitted by a source acceleration device, convert the first local address of the target acceleration device carried in the first data packet into a first global address based on an address mapping relationship; wherein the address mapping relationship includes the mapping relationship between the local addresses and global addresses of all acceleration devices within the server; determine a first port matching the first global address based on a port mapping relationship; wherein the port mapping relationship includes the ports corresponding to the global addresses of all acceleration devices within the server; and transmit the first data packet to the external switching unit through the first port.
3. The collaborative management system based on multi-card interconnection according to claim 2, characterized in that, It also includes firmware components deployed on each internal switching unit; The firmware component is used to allocate global addresses to all acceleration devices within the server; The out-of-band management component communicates with the firmware component to obtain the global addresses corresponding to all acceleration devices within the server; and constructs an address mapping relationship based on the local addresses and global addresses of all acceleration devices within the server.
4. The collaborative management system based on multi-card interconnection according to claim 1, characterized in that, The internal switching unit is used to determine whether the switching unit number carried by the first data packet belongs to the local switching unit number; if the switching unit number carried by the first data packet does not belong to the local switching unit number, it performs the operation step of transmitting the first data packet to the external switching unit through the first port corresponding to the target acceleration device based on the address mapping relationship and port mapping relationship.
5. The collaborative management system based on multi-card interconnection according to claim 1, characterized in that, The internal switching unit is used to determine whether the switching unit number carried by the second data packet belongs to the local switching unit number when it receives the second data packet transmitted by the external switching unit; if the switching unit number carried by the second data packet belongs to the local switching unit number, the second data packet is transmitted to the corresponding acceleration device.
6. The collaborative management system based on multi-card interconnection according to claim 5, characterized in that, The internal switching unit is used to convert the second global address carried by the second data packet into a second local address according to the address mapping relationship; and to transmit the second data packet to the acceleration device corresponding to the second local address.
7. The collaborative management system based on multi-card interconnection according to claim 1, characterized in that, The collaborative management component communicates with the out-of-band management component to update the port routing table upon receiving a topology switching request and to send topology update response data back to the out-of-band management component. The out-of-band management component is used to receive topology update response data fed back by the collaborative management component; update the system topology according to the topology update response data, and transmit the topology update response data to the in-band management component; wherein, the system topology includes the connection relationship between acceleration devices on different servers; The in-band management component is used to update the in-band topology file based on the topology update response data transmitted by the out-of-band management component.
8. The collaborative management system based on multi-card interconnection according to claim 7, characterized in that, The collaborative management component is used to, upon receiving a topology switching request, determine at least one multi-SIM subsystem based on the number of multi-SIM cards carried in the topology switching request; filter host port routing information matching the multi-SIM subsystem from the port routing table, and use the host port routing information as the port routing table of the multi-SIM subsystem.
9. The collaborative management system based on multi-card interconnection according to claim 8, characterized in that, The collaborative management component is used to feed back each host and its corresponding endpoint device number in the host port routing information to the out-of-band management component; The out-of-band management component is used to update the system topology based on each host and its corresponding endpoint device number.
10. The collaborative management system based on multi-card interconnection according to claim 1, characterized in that, It also includes the operating system deployed on each server; The operating system communicates with the out-of-band management component to obtain the system topology recorded by the out-of-band management component through the intelligent platform management interface.
11. The collaborative management system based on multi-card interconnection according to claim 10, characterized in that, The operating system is used to transmit topology change information to the out-of-band management component when it detects a change in the system topology. The out-of-band management component is used to update the system topology based on the topology change information transmitted by the operating system.
12. The collaborative management system based on multi-card interconnection according to claim 1, characterized in that, The out-of-band management component is used to detect the operating status of all acceleration devices within the server; when a faulty acceleration device occurs, a fault identifier is set for the faulty acceleration device, and the global address of the faulty acceleration device is fed back to the collaborative management component. The collaborative management component is used to receive the global address of the fault acceleration device fed back by the out-of-band management component; and adjust the port routing table according to the global address of the fault acceleration device.
13. The collaborative management system based on multi-card interconnection according to claim 12, characterized in that, The collaborative management component is used to send a fault message to the out-of-band management component when there is no port matching the target acceleration device in the port routing table.
14. A collaborative management method based on multi-card interconnection, characterized in that, Applicable to internal switching units, the method includes: The address mapping and port mapping relationships are obtained from the out-of-band management component; wherein the address mapping and port mapping relationships are generated by the out-of-band management component based on the server's configuration information. Upon receiving the first data packet transmitted by the source acceleration device, based on the address mapping relationship and the port mapping relationship, the first data packet is transmitted to the external switching unit through the first port corresponding to the target acceleration device, so that the external switching unit can determine the second port matching the target acceleration device according to the port routing table recorded by the collaborative management component; and the first data packet is transmitted to the internal switching unit corresponding to the target acceleration device through the second port.
15. A collaborative management method based on multi-card interconnection, characterized in that, Applicable to external switching units, the method includes: Receive a first data packet transmitted by the internal switching unit through the first port corresponding to the target acceleration device; wherein, the first port is the port determined by the internal switching unit based on the address mapping relationship and the port mapping relationship; Based on the port routing table recorded by the collaborative management component, a second port matching the target acceleration device is determined; wherein, the port routing table contains the ports corresponding to each acceleration device. The first data packet is transmitted through the second port to the internal switching unit corresponding to the target acceleration device.