Systems and methods for multi-branch routing for interconnected chip networks
AssigneeT-Head (Shanghai) Semiconductor Co., Ltd.
InventorsLiang Han, Yunxiao Zou
Life of this patent
Estimating the term…
Abstract
A system includes a high-bandwidth inter-chip network (ICN) that allows communication between parallel processing units (PPUs) in the system. For example, the ICN allows a PPU to communicate with other PPUs on the same compute node or server and also with PPUs on other compute nodes or servers. In embodiments, communication may be at the command level (e.g., at the direct memory access level) and at the instruction level (e.g., the finer-grained load/store instruction level). The ICN allows PPUs in the system to communicate without using a PCIe bus, thereby avoiding its bandwidth limitations and relative lack of speed. The respective routing tables comprise information of multiple paths to any given other PPU.
Claims17
A system comprising:
- a plurality of parallel processing units (PPUs) included in a first chip, each of the PPUs including:
- a plurality of processing cores;
- a plurality of memories, wherein a first set of the memories couple to a first set of the plurality of processing cores;
- and
- a plurality of interconnects in an inter-chip network (ICN) configured to communicatively couple the plurality of PPUs,
- wherein each of the PPUs is configured to communicate over the ICN in accordance with respective routing tables that are stored and reside in registers included in the respective PPUs,
- wherein the respective routing tables comprise information of multiple paths to any given other PPU, and
- wherein communications are processed in accordance with the routing scheme that provides balanced workloads, guaranteed dependency, and guaranteed access orders.
A communication method comprising:
- performing a setup operation including creation of static pre-determined routing tables;
- forwarding a communication packet from a source parallel processing unit (PPU), wherein the communication packet is formed and forwarded in accordance with the static pre-determined routing tables;
- receiving the communication packet at a destination parallel processing unit (PPU);
- wherein the source PPU and destination PPU are included in respective ones of a plurality of parallel processing units (PPUs) included in a network, wherein a first set of the plurality processing cores are included in a first chip and a second set of the plurality processing cores are included in a second chip, and wherein the plurality of processing units communicates over a plurality of interconnects and corresponding communications are configured in accordance with the static pre-determined routing tables;
- and
- balancing the forwarding of the communication packet, including distributing the communication packet via physical based interleaving.
A system, comprising:
- a first set of parallel processing units (PPUs) included in a first compute node, wherein respective PPUs included in the first set of PPUs are included in separate respective chips;
- a second set of parallel processing units (PPUs) included in a second compute node, wherein respective PPUs included in the second set of PPUs are included in separate respective chips;
- and
- a plurality of interconnects in an inter-chip network (ICN) configured to communicatively couple the first set of PPUs and the second set of PPUs, wherein PPUs included in the first set of PPUs and the second set of PPUs communicate over the plurality of interconnects and corresponding communications are configured in accordance with routing tables that reside in storage features of respective ones of the PPUs included in the first set of PPUs and the second set of PPUs,
- wherein the plurality of interconnects are configured to couple parallel communications from a first PPU in said first compute node to a second PPU in said second compute node over at least two paths, and
- wherein balanced workloads are provided by multi-flow through minimal links and interleaving with flow ID and source parallel processing unit (PPU) ID.
Dependencies are inferred from the claim text.