IP Library Granted Patent US 12,450,097
Granted Patent B2
US 12,450,097 · App. 18/436,283 · Granted Oct 21, 2025

User adjustable 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 12,450,097
App. No.
18/436,283
Granted
Oct 21, 2025
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 (47)

1. An apparatus, comprising:

a user interface configured to receive instructions to establish a compute unit comprising components from among a plurality of physical computing components for implementation by a management entity that that instructs a communication fabric communicatively coupling the plurality of physical computing components and establishes logical isolation within the communication fabric to form the compute unit, wherein the management entity deploys a software component to the compute unit for use by least an associated processor of the compute unit after formation;

the user interface configured to present telemetry information related to the operation of the compute unit comprising one or more status views; and

wherein the software component is configured to provide at least a portion of the telemetry information related to operation of the compute unit.

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

3. The apparatus of claim 1 , wherein the compute unit comprises physical computing components further selected from among data storage modules, memory devices, and network interface modules.

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 segregation among ports of the one or more PCIe switch circuits.

5. The apparatus of claim 1 , wherein, responsive to a predictive allocation, the management entity is configured to alter composition of physical computing components within the compute unit by at least changing the logical isolation within the communication fabric for the compute unit.

6. The apparatus of claim 5 , wherein altering the composition comprises adding or removing a physical computing component from the compute unit.

7. The apparatus of claim 1 , wherein responsive to an indication of a change in workload associated with at least the software component, 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.

8. The apparatus of claim 7 , 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.

9. The apparatus of claim 1 , wherein the software component comprises an operating system.

10. The apparatus of claim 1 , wherein the software component 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.

11. A method, comprising:

in a user interface, receiving instructions to establish a compute unit comprising components from among a plurality of physical computing components for implementation by a management entity that that instructs a communication fabric communicatively coupling the plurality of physical computing components and establishes logical isolation within the communication fabric to form the compute unit, wherein the management entity deploys a software component to the compute unit for use by least an associated processor of the compute unit after formation;

in the user interface, presenting telemetry information related to the operation of the compute unit comprising one or more status views; and

wherein the software component is configured to provide at least a portion of the telemetry information related to operation of the compute unit.

12. The method of claim 11 , wherein the compute unit comprises physical computing components selected from among central processing units (CPUs) and graphics processing units (GPUs).

13. The method of claim 11 , 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 segregation among ports of the one or more PCIe switch circuits.

14. The method of claim 11 , wherein, responsive to a predictive allocation, the management entity is configured to alter composition of physical computing components within the compute unit by at least changing the logical isolation within the communication fabric for the compute unit; and

wherein altering the composition comprises adding or removing a physical computing component from the compute unit.

15. The method of claim 11 , wherein responsive to an indication of a change in workload associated with at least the software component, 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;

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.

16. The method of claim 11 , wherein the software component comprises an operating system.

17. The method of claim 11 , wherein the software component 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.

18. A computing apparatus comprising:

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 a processing system, direct the processing system to at least:

a user interface configured to receive instructions to establish a compute unit comprising components from among a plurality of physical computing components for implementation by a management entity that that instructs a communication fabric communicatively coupling the plurality of physical computing components and establishes logical isolation within the communication fabric to form the compute unit, wherein the management entity deploys a software component to the compute unit for use by least an associated processor of the compute unit after formation;

the user interface configured to present telemetry information related to the operation of the compute unit comprising one or more status views; and

wherein the software component is configured to provide at least a portion of the telemetry information related to operation of the compute unit.

19. An apparatus, comprising:

a user interface configured to receive instructions to establish a compute unit comprising components from among a plurality of physical computing components for implementation by a management entity that that instructs a communication fabric communicatively coupling the plurality of physical computing components and establishes logical isolation within the communication fabric to form the compute unit;

wherein the management entity deploys a software component to the compute unit for use by least an associated processor of the compute unit after formation; and

wherein responsive to an indication of a change in workload associated with at least the software component, 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.

20. A method, comprising:

in a user interface, receiving instructions to establish a compute unit comprising components from among a plurality of physical computing components for implementation by a management entity that that instructs a communication fabric communicatively coupling the plurality of physical computing components and establishes logical isolation within the communication fabric to form the compute unit;

wherein the management entity deploys a software component to the compute unit for use by least an associated processor of the compute unit after formation; and

wherein responsive to an indication of a change in workload associated with at least the software component, 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.

21. A computing apparatus comprising:

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 a processing system, direct the processing system to at least:

a user interface configured to receive instructions to establish a compute unit comprising components from among a plurality of physical computing components for implementation by a management entity that that instructs a communication fabric communicatively coupling the plurality of physical computing components and establishes logical isolation within the communication fabric to form the compute unit;

wherein the management entity deploys a software component to the compute unit for use by least an associated processor of the compute unit after formation; and

wherein responsive to an indication of a change in workload associated with at least the software component, 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.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 8, 2024
From: BREAKSTONE, JASON; LONG, CHRISTOPHER R.; CANNATA, JAMES SCOTT
To: LIQID INC.
Reel/Frame 066415/0731 →
Continuity (6)
Continuation 17233711 · Apr 19, 2021
Continuation 16819646 · Mar 16, 2020
Continuation 15675377 · Aug 11, 2017
Provisional Application 62468231 · Mar 7, 2017
Provisional Application 62374573 · Aug 12, 2016
Related Publication 20240184634A1 · Jun 6, 2024
References Cited (81)
US 6061750A · Beardsley et al. · 2000 [cited by applicant]
US 6325636B1 · Hipp et al. · 2001 [cited by applicant]
US 6828207B2 · Nagatomo et al. · 2004 [cited by applicant]
US 7243145B1 · Poortman · 2007 [cited by applicant]
US 7260487B2 · Brey et al. · 2007 [cited by applicant]
US 7340578B1 · Khanzode · 2008 [cited by applicant]
US 7505889B2 · Salmonsen et al. · 2009 [cited by applicant]
US 7606960B2 · Munguia · 2009 [cited by applicant]
US 7725757B2 · Padweka et al. · 2010 [cited by applicant]
US 7877542B2 · Chow et al. · 2011 [cited by applicant]
US 8125919B1 · Khanka et al. · 2012 [cited by applicant]
US 8150800B2 · Webman et al. · 2012 [cited by applicant]
US 8656117B1 · Wong et al. · 2014 [cited by applicant]
US 8688926B2 · Breakstone et al. · 2014 [cited by applicant]
US 8880771B2 · Subramaniyan et al. · 2014 [cited by applicant]
US 9602437B1 · Bernath · 2017 [cited by applicant]
US 10382279B2 · Roese et al. · 2019 [cited by applicant]
US 10536349B1 · Hayward · 2020 [cited by applicant]
US 20020059428A1 · Susai et al. · 2002 [cited by applicant]
US 20030110423A1 · Helms et al. · 2003 [cited by applicant]
US 20030126478A1 · Burns et al. · 2003 [cited by applicant]
US 20050188191A1 · Yoshida et al. · 2005 [cited by applicant]
US 20050223136A1 · Tanaka et al. · 2005 [cited by applicant]
US 20060259810A1 · Hosoya et al. · 2006 [cited by applicant]
US 20060277206A1 · Bailey et al. · 2006 [cited by applicant]
US 20070067432A1 · Tarui et al. · 2007 [cited by applicant]
US 20080034153A1 · Lee et al. · 2008 [cited by applicant]
US 20080198744A1 · Menth · 2008 [cited by applicant]
US 20080281938A1 · Rai et al. · 2008 [cited by applicant]
US 20090006837A1 · Rothman et al. · 2009 [cited by applicant]
US 20090100280A1 · Lindsay · 2009 [cited by applicant]
US 20090190427A1 · Brittain et al. · 2009 [cited by applicant]
US 20090193201A1 · Brittain et al. · 2009 [cited by applicant]
US 20090193203A1 · Brittain et al. · 2009 [cited by applicant]
US 20090276551A1 · Brown et al. · 2009 [cited by applicant]
US 20090288084A1 · Astete et al. · 2009 [cited by applicant]
US 20100088467A1 · Lee et al. · 2010 [cited by applicant]
US 20100100655A1 · Dowedeit · 2010 [cited by applicant]
US 20110119423A1 · Kishore et al. · 2011 [cited by applicant]
US 20110289510A1 · Lin et al. · 2011 [cited by applicant]
US 20110299317A1 · Shaeffer et al. · 2011 [cited by applicant]
US 20110302349A1 · Griggs · 2011 [cited by applicant]
US 20110320861A1 · Bayer et al. · 2011 [cited by applicant]
US 20120030544A1 · Fisher-Jeffes · 2012 [cited by applicant]
US 20120089854A1 · Breakstone et al. · 2012 [cited by applicant]
US 20120151118A1 · Flynn et al. · 2012 [cited by applicant]
US 20120166699A1 · Kumar et al. · 2012 [cited by applicant]
US 20120210163A1 · Cho · 2012 [cited by applicant]
US 20120317433A1 · Ellis et al. · 2012 [cited by applicant]
US 20130132643A1 · Huang · 2013 [cited by applicant]
US 20130185416A1 · Larkin et al. · 2013 [cited by applicant]
US 20140047166A1 · Asnaashari et al. · 2014 [cited by applicant]
US 20140056319A1 · Hellwig · 2014 [cited by applicant]
US 20140059265A1 · Iyer et al. · 2014 [cited by applicant]
US 20140075235A1 · Chandhoke et al. · 2014 [cited by applicant]
US 20140103955A1 · Avritch et al. · 2014 [cited by applicant]
US 20140108846A1 · Berke et al. · 2014 [cited by applicant]
US 20140365714A1 · Sweere et al. · 2014 [cited by applicant]
US 20150026385A1 · Egi et al. · 2015 [cited by applicant]
US 20150067128A1 · Naseh et al. · 2015 [cited by applicant]
US 20150074322A1 · Galles · 2015 [cited by applicant]
US 20150121115A1 · Chandra et al. · 2015 [cited by applicant]
US 20150186437A1 · Molaro · 2015 [cited by applicant]
US 20150212755A1 · Asnaashari · 2015 [cited by applicant]
US 20150304423A1 · Satoyama et al. · 2015 [cited by applicant]
US 20150373115A1 · Breakstone et al. · 2015 [cited by applicant]
US 20160197996A1 · Barton et al. · 2016 [cited by applicant]
US 20160248631A1 · Duchesneau · 2016 [cited by applicant]
US 20170054603A1 · Kulkarni et al. · 2017 [cited by applicant]
US 20170118115A1 · Tsuji · 2017 [cited by applicant]
US 20170149888A1 · Tasoulas et al. · 2017 [cited by applicant]
US 20180213369A1 · Dong et al. · 2018 [cited by applicant]
US 20220350767A1 · McGraw · 2022 [cited by examiner]
CN 101615106 · 2012 [cited by applicant]
CN 104657330 · 2015 [cited by applicant]
Aragon, Juan L. et al., “Control Speculation For Energy-Efficient Next-Generation Superscalar Processors,” IEEE Transactions on Computers, vol. 55, No. 3, pp. 281-291, Mar. 2006. [cited by applicant]
Chinese Office Action and Search Report for CN Application No. 201780063313.3, mailed Jan. 4, 2022; 12 pages. [cited by applicant]
Extended European Search Report for EP Patent Application No. 17840371.3, 8 pages, Feb. 18, 2020. [cited by applicant]
International Search Report & Written Opinion for PCT Application No. PCT/US2017/046602, 8 pages, Oct. 19, 2017. [cited by applicant]
International Search Report & Written Opinion for PCT Application No. PCT/US2017/046607, 7 pages, Oct. 23, 2017. [cited by applicant]
Lu, Yingping et al., “Performance Study Of iSCSI-Based Storage Subsystems,” IEEE Communications Magazine, pp. 176-182, Aug. 2003. [cited by applicant]