IP Library Granted Patent US 11,922,218
Granted Patent B2
US 11,922,218 · App. 17/233,711 · Granted Mar 5, 2024

Communication fabric coupled compute units

Inventors: Christopher R. Long (Colorado Springs, CO); James Scott Cannata (Denver, CO); Jason Breakstone (Broomfield, CO)
Assignee: Liqid Inc.
G06F9/5044G06F3/0482G06F3/0484G06F9/5016G06F9/5061G06F9/5077G06F9/54G06F12/02G06F9/451G06F2203/04803G06F2213/0026
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,922,218
App. No.
17/233,711
Granted
Mar 5, 2024
Kind
B2
Abstract

Communication fabric-coupled computing architectures, platforms, and systems are provided herein. In one example, an apparatus includes a management entity configured to establish a compute unit comprising components from among a plurality of physical computing components by at least instructing a communication fabric communicatively coupling the plurality of physical computing components to establish logical isolation within the communication fabric to form the compute unit. Responsive to an indication of a change in workload associated with at least a software component deployed to a processing element of the compute unit, the management entity is configured to adjust the logical isolation to alter a quantity of the plurality of physical computing components in the compute unit in accordance with the change in the workload.

Claims (33)

1. An apparatus, comprising:

a management entity configured to establish a compute unit comprising components from among a plurality of physical computing components by at least instructing a communication fabric communicatively coupling the plurality of physical computing components to establish logical isolation within the communication fabric to form the compute unit;

responsive to an indication of a change in workload associated with at least a software component deployed to a processing element of the compute unit, the management entity configured to adjust the logical isolation to alter a quantity of the plurality of physical computing components in the compute unit in accordance with the change in the workload;

wherein increasing the quantity of the plurality of physical computing components in the compute unit comprises adding at least one additional physical computing component into the compute unit; and

wherein decreasing the quantity of the plurality of physical computing components in the compute unit comprises removing at least one existing physical computing component out of the compute unit and placing the at least one existing physical computing component into a pool of free physical computing components for use by another compute unit.

2. The apparatus of claim 1 , wherein the compute unit comprises one or more physical computing components selected from among central processing units (CPUs), graphics processing units (GPUs), storage modules, and network interface modules.

3. The apparatus of claim 1 , wherein the communication fabric comprises a Peripheral Component Interconnect Express (PCIe) communication fabric comprising one or more PCIe switch circuits, and wherein the logical isolation is formed in the communication fabric with segregation established using domain-based segregation among ports of the one or more PCIe switch circuits.

4. The apparatus of claim 1 , wherein the communication fabric comprises a Peripheral Component Interconnect Express (PCIe) communication fabric comprising one or more PCIe switch circuits, and wherein the logical isolation is formed in the communication fabric with segregation established using non-transparent (NT) port-based segregation among ports of the one or more PCIe switch circuits.

5. The apparatus of claim 1 , comprising:

the management entity configured to add the at least one additional physical computing component into the compute unit by at least removing the at least one additional physical computing component from the pool of free physical computing components.

6. The apparatus of claim 1 , wherein the software component is configured to report telemetry data related to the change in workload.

7. The apparatus of claim 1 , wherein the software component comprises at least one among an operating system, an application, and a telemetry element deployed to the processing element.

8. The apparatus of claim 7 , wherein the software component further comprises a driver function configured to emulate operation of an Ethernet interface to an operating system of the associated processor, and wherein the driver function is further configured to transfer communications received by the Ethernet interface over the communication fabric.

9. The apparatus of claim 1 , wherein the compute unit has visibility over the communication fabric using the logical isolation to only physical computing components assigned to the compute unit.

10. A method comprising:

establishing a compute unit comprising components from among a plurality of physical computing components by at least instructing a communication fabric communicatively coupling the plurality of physical computing components to establish logical isolation within the communication fabric to form the compute unit;

responsive to an indication of a change in workload associated with at least a software component deployed to a processing element of the compute unit, adjusting the logical isolation to alter a quantity of the plurality of physical computing components in the compute unit in accordance with the change in the workload;

wherein increasing the quantity of the plurality of physical computing components in the compute unit comprises adding at least one additional physical computing component into the compute unit; and

wherein decreasing the quantity of the plurality of physical computing components in the compute unit comprises removing at least one existing physical computing component out of the compute unit and placing the at least one existing physical computing component into a pool of free physical computing components for use by another compute unit.

11. The method of claim 10 , wherein the compute unit comprises one or more physical computing components selected from among central processing units (CPUs), graphics processing units (GPUs), storage modules, and network interface modules.

12. The method of claim 10 , wherein the communication fabric comprises a Peripheral Component Interconnect Express (PCIe) communication fabric comprising one or more PCIe switch circuits, and wherein the logical isolation is formed in the communication fabric with segregation established using domain-based segregation among ports of the one or more PCIe switch circuits.

13. The method of claim 10 , wherein the communication fabric comprises a Peripheral Component Interconnect Express (PCIe) communication fabric comprising one or more PCIe switch circuits, and wherein the logical isolation is formed in the communication fabric with segregation established using non-transparent (NT) port-based segregation among ports of the one or more PCIe switch circuits.

14. The method of claim 10 , further comprising:

adding the at least one additional physical computing component into the compute unit by at least removing the at least one additional physical computing component from the pool of free physical computing components.

15. The method of claim 10 , wherein the software component comprises at least one among an operating system, an application, and a telemetry element deployed to the processing element.

16. A computing apparatus comprising:

one or more non-transitory computer readable storage media;

a processing system operatively coupled with the one or more non-transitory computer readable storage media; and

program instructions stored on the one or more non-transitory computer readable storage media, that when executed by the processing system, direct the processing system to at least:

establish a compute unit comprising components from among a plurality of physical computing components by at least instructing a communication fabric communicatively coupling the plurality of physical computing components to establish logical isolation within the communication fabric to form the compute unit; and

responsive to an indication of a change in workload associated with at least a software component deployed to a processing element of the compute unit, adjust the logical isolation to alter a quantity of the plurality of physical computing components in the compute unit in accordance with the change in the workload;

based on the workload indicating an increase in workload, alter the quantity of the plurality of physical computing components in the compute unit by adding at least one additional physical computing component into the compute unit; and

based on the workload indicating a decrease in workload, alter the quantity of the plurality of physical computing components in the compute unit by removing at least one existing physical computing component out of the compute unit.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 19, 2021
From: BREAKSTONE, JASON; LONG, CHRISTOPHER R.; CANNATA, JAMES SCOTT
To: LIQID INC.
Reel/Frame 055956/0292 →
Continuity (5)
Continuation 16819646 · Mar 16, 2020
Continuation 15675377 · Aug 11, 2017
Provisional Application 62468231 · Mar 7, 2017
Provisional Application 62374573 · Aug 12, 2016
Related Publication 20210240538A1 · Aug 5, 2021