IP Library Granted Patent US 10,936,520
Granted Patent B2
US 10,936,520 · App. 16/852,676 · Granted Mar 2, 2021

Interfaces for peer-to-peer graphics processing unit arrangements

Inventors: James Scott Cannata (Denver, CO); German Kazakov (Longmont, CO); Christopher R. Long (Colorado Springs, CO); Jason Breakstone (Broomfield, CO)
Assignee: Liqid Inc.
G06F13/4022G06F9/5044G06F9/5077G06F12/02G06F13/28G06F13/4282G06T1/20G06F2213/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 10,936,520
App. No.
16/852,676
Granted
Mar 2, 2021
Kind
B2
Abstract

Disaggregated computing architectures, platforms, and systems are provided herein. In one example, a method includes receiving user input to establish a compute unit comprising a host processor and at least two graphics processing units (GPUs) having a peer-to-peer capability. The method also includes instructing a management element for a communication fabric to form the compute unit and communicatively couple the host processor and the at least two GPUs over the communication fabric. The method also includes instructing the management element to establish an isolation function to form the peer arrangement between the at least two GPUs in the communication fabric, where the isolation function isolates a first address domain associated with the at least two GPUs from at least a second address domain associated with the host processor by at least establishing synthetic devices representing the at least two GPUs in the second address domain.

Claims (45)

1. A method comprising:

receiving user input to establish a compute unit comprising a host processor and at least two graphics processing units (GPUs) having a peer-to-peer capability;

instructing a management element for a communication fabric to form the compute unit and communicatively couple the host processor and the at least two GPUs over the communication fabric; and

instructing the management element to establish an isolation function to form the peer arrangement between the at least two GPUs in the communication fabric, wherein the isolation function isolates a first address domain associated with the at least two GPUs from at least a second address domain associated with the host processor by at least establishing synthetic devices representing the at least two GPUs in the second address domain.

2. The method of claim 1 , wherein the isolation function redirects traffic transferred by the host processor for the at least two GPUs in the second address domain for delivery to corresponding ones of the at least two GPUs in the first address domain.

3. The method of claim 1 , wherein the management element adds the at least two GPUs into the peer arrangement by at least instantiating the at least two GPUs in the second address domain and initiating synthetic devices representing the at least two GPUs in the first address domain; and

wherein the management element removes the at least two GPUs from the peer arrangement by at least inactivating the synthetic devices representing the at least two GPUs in the first address domain.

4. The method of claim 1 , further comprising:

instructing the management element to establish the isolation function in the communication fabric by at least providing address traps that monitor for traffic over the communication fabric directed to addresses associated with the at least two GPUs in the second address domain and translate the addresses into corresponding addresses for the at least two GPUs in the first address domain.

5. The method of claim 1 , wherein responsive to traffic from a first of the GPUs indicating the second of the GPUs as a destination in the second address domain, the isolation function is configured to employ an address trap to receive the traffic and transfer the traffic to the second of the GPUs in the first address domain.

6. The method of claim 5 , wherein the peer arrangement between the at least two GPUs comprises a direct memory access (DMA) link established between memory associated with each of the GPUs.

7. The method of claim 1 , further comprising:

instructing the management element to establish the isolation function by controlling communication switch circuitry that forms at least a portion of the communication fabric.

8. The method of claim 1 , wherein the isolation function comprises one or more address traps and one or more address translation tables.

9. The method of claim 1 , further comprising:

receiving further user input to establish add a target GPU to the compute unit; and

instructing the management element to alter the compute unit and communicatively couple the host processor, the at least two GPUs, and the target GPU over the communication fabric.

10. The method of claim 1 , further comprising:

receiving further user input to establish remove a target GPU from the compute unit; and

instructing the management element to alter the compute unit and remove the communicatively coupling between the host processor and the target GPU over the communication fabric.

11. A system comprising:

a user interface configured to receive user input to establish a compute unit comprising a host processor and at least two graphics processing units (GPUs) having a peer-to-peer capability;

a fabric interface configured to instruct a management element for a communication fabric to form the compute unit and communicatively couple the host processor and the at least two GPUs over the communication fabric; and

the fabric interface configured to instruct the management element to establish an isolation function to form the peer arrangement between the at least two GPUs in the communication fabric, wherein the isolation function isolates a first address domain associated with the at least two GPUs from at least a second address domain associated with the host processor by at least establishing synthetic devices representing the at least two GPUs in the second address domain.

12. The system of claim 11 , wherein the isolation function redirects traffic transferred by the host processor for the at least two GPUs in the second address domain for delivery to corresponding ones of the at least two GPUs in the first address domain.

13. The system of claim 11 , wherein the management element adds the at least two GPUs into the peer arrangement by at least instantiating the at least two GPUs in the second address domain and initiating synthetic devices representing the at least two GPUs in the first address domain; and

wherein the management element removes the at least two GPUs from the peer arrangement by at least inactivating the synthetic devices representing the at least two GPUs in the first address domain.

14. The system of claim 11 , further comprising:

the fabric interface configured to instruct the management element to establish the isolation function in the communication fabric by at least providing address traps that monitor for traffic over the communication fabric directed to addresses associated with the at least two GPUs in the second address domain and translate the addresses into corresponding addresses for the at least two GPUs in the first address domain.

15. The system of claim 11 , wherein responsive to traffic from a first of the GPUs indicating the second of the GPUs as a destination in the second address domain, the isolation function is configured to employ an address trap to receive the traffic and transfer the traffic to the second of the GPUs in the first address domain;

wherein the peer arrangement between the at least two GPUs comprises a direct memory access (DMA) link established between memory associated with each of the GPUs.

16. The system of claim 11 , further comprising:

the fabric interface configured to instruct the management element to establish the isolation function by controlling communication switch circuitry that forms at least a portion of the communication fabric.

17. The system of claim 11 , wherein the isolation function comprises one or more address traps and one or more address translation tables.

18. The system of claim 11 , further comprising:

the user interface configured to receive further user input to establish add a target GPU to the compute unit; and

the fabric interface configured to instruct the management element to alter the compute unit and communicatively couple the host processor, the at least two GPUs, and the target GPU over the communication fabric.

19. An apparatus comprising:

one or more computer readable storage media;

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

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

receive user input to establish a compute unit comprising a host processor and at least two graphics processing units (GPUs) having a peer-to-peer capability;

instruct a management element for a communication fabric to form the compute unit and communicatively couple the host processor and the at least two GPUs over the communication fabric; and

instruct the management element to establish an isolation function to form the peer arrangement between the at least two GPUs in the communication fabric, wherein the isolation function isolates a first address domain associated with the at least two GPUs from at least a second address domain associated with the host processor by at least establishing synthetic devices representing the at least two GPUs in the second address domain.

20. The apparatus of claim 19 , wherein the isolation function redirects traffic transferred by the host processor for the at least two GPUs in the second address domain for delivery to corresponding ones of the at least two GPUs in the first address domain.

Assignments (5)
RELEASE OF SECURITY INTEREST Recorded Apr 16, 2021
From: CANADIAN IMPERIAL BANK OF COMMERCE
To: LIQID INC.
Reel/Frame 055953/0860 →
SECURITY INTEREST Recorded Jan 5, 2021
From: LIQID INC.
To: HORIZON TECHNOLOGY FINANCE CORPORATION
Reel/Frame 054900/0539 →
SECURITY INTEREST Recorded Oct 30, 2020
From: LIQID INC.
To: CANADIAN IMPERIAL BANK OF COMMERCE
Reel/Frame 054221/0235 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2020
From: LONG, CHRISTOPHER R.; KAZAKOV, GERMAN; CANNATA, JAMES SCOTT
To: LIQID INC.
Reel/Frame 052438/0921 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 20, 2020
From: BREAKSTONE, JASON
To: LIQID INC.
Reel/Frame 052438/0944 →
Continuity (5)
Continuation 16246712 · Jan 14, 2019
Continuation 15848268 · Dec 20, 2017
Provisional Application 62592859 · Nov 30, 2017
Provisional Application 62502806 · May 8, 2017
Related Publication 20200242065A1 · Jul 30, 2020