IP Library › Granted Patent US 10,649,915
Granted Patent B1
US 10,649,915 · App. 16/172,805 · Granted May 12, 2020

Disaggregated computing architecture using device pass-through wherein independent physical address spaces between systems nodes are implemented in a single execution environment

Inventors: Maciej Bielski (Grenoble, FR); Alvise Rigo (Grenoble, FR); Michele Paolino (Grenoble, FR); Salvatore Daniele Raho (Grenoble, FR)
Assignee: VIRTUAL OPEN SYSTEMS
G06F12/109G06F9/4411G06F9/45558H04L12/46G06F2009/45562G06F2009/45579G06F2009/45583
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,649,915
App. No.
16/172,805
Granted
May 12, 2020
Kind
B1
Abstract

The present disclosure relates to a disaggregated computing architecture comprising: a first compute node ( 302 ) comprising an interconnect interface ( 310 ); an accelerator node ( 304 ) comprising a physical device ( 402 ); and an interconnection network ( 308 ) linking the first compute node ( 302 ) and the accelerator node ( 304 ), wherein: the first compute node ( 302 ) executes a host operating system ( 410 ) and instantiates a first virtual machine (VM) executing a guest device driver ( 406 ) for driving the physical device; one or more input registers of the physical device are accessible via a first uniform physical address range (upa_a_devctl) of the interconnection network ( 308 ); and the interconnect interface ( 310 ) of the first compute node ( 302 ) is configured to map a host physical address range (hpa_c_devctl) of the host operating system ( 410 ) to the first uniform physical address range (upa_a_devctl).

Claims (39)

1. A disaggregated computing architecture comprising:

a first compute node comprising an interconnect interface;

an accelerator node comprising a physical device; and

an interconnection network linking the first compute node and the accelerator node, wherein:

the first compute node and the accelerator node are separate system nodes having independent physical address spaces and configured to implement a single execution environment;

the first compute node executes a host operating system and instantiates a first virtual machine executing a guest device driver for driving the physical device;

one or more input registers of the physical device are accessible via a first uniform physical address range of the interconnection network; and the interconnect interface of the first compute node is configured to map a host physical address range of the host operating system to the first uniform physical address range.

2. The disaggregated computing architecture of claim 1 , further comprising a first memory node, wherein the accelerator node further comprises a memory management unit configured to map addresses in a guest physical address range of the first virtual machine to a second uniform physical address range for accessing an address range in the first memory node associated with the first virtual machine.

3. The disaggregated computing architecture of claim 2 , wherein the memory management unit is configurable via a third uniform physical address range of the interconnection network.

4. The disaggregated computing architecture of claim 1 , farther comprising a global system orchestrator coupled, via a further network, to the interconnect interface of the first compute node and to an interconnect interface of the accelerator node.

5. The disaggregated computing architecture of claim 1 , further comprising a second compute node comprising an interconnect interface, wherein:

the second compute node executes a host operating system and instantiates a second virtual machine executing a second guest device driver for driving the physical device; and

the interconnect interface of the second compute node is configured to map a host physical address range of the host operating system of the second compute node to the first uniform physical address range.

6. The disaggregated computing architecture of claim 5 , further comprising a first memory node, wherein the accelerator node further comprises a memory management unit configured to map addresses in a guest physical address range of the first virtual machine to a second uniform physical address range for accessing an address range in the first memory node associated with the first virtual machine, and further comprising a second memory node, wherein the memory management unit is further configured to map addresses in a guest physical address range of the second virtual machine to a third uniform physical address range for accessing an address range in the second memory node associated with the second virtual machine.

7. The disaggregated computing architecture of claim 1 , wherein the accelerator node is a circuit of an electrical vehicle, and the first compute node is part of a data center unit of a vehicle charging station.

8. A compute node of a disaggregated computing architecture, the compute node comprising an interconnect interface, wherein:

the compute node executes a host operating system and instantiates a first virtual machine executing a guest device driver for driving a physical device of a disaggregated accelerator node, wherein the compute node and the disaggregated accelerator node are separate system nodes having independent physical address spaces and configured to implement a single execution environment;

one or more input registers of the physical device are accessible via a first uniform physical address range of an interconnection network linking the compute node and the disaggregated accelerator node; and

the interconnect interface of the compute node is configured to map a host physical address range of the host operating system to the first uniform physical address range.

9. An accelerator node of a disaggregated computing architecture, the accelerator node comprising:

a physical device;

one or more input registers of the physical device accessible via a first uniform physical address range of an interconnection network linking the accelerator node to a compute node, wherein the compute node and the accelerator node are separate system nodes having independent physical address spaces and configured to implement a single execution environment; and

a memory management unit configured to map addresses in a guest physical address range of a first virtual machine instantiated in the compute node to a second uniform physical address range for accessing an address range in a first memory node associated with the first virtual machine.

10. The accelerator node of claim 9 , wherein the memory management unit is configurable via a third uniform physical address range of the interconnection network.

11. A system orchestrator for a disaggregated computing architecture, the disaggregated computing architecture comprising at least a first compute node and at least a first accelerator node interconnected by a reconfigurable interconnection network, wherein the first compute node and the first accelerator node are separate system nodes having independent physical address spaces and configured to implement a single execution environment, the system orchestrator comprising one or more circuits that are configured to:

receive a request from a first virtual machine of the first compute node for device pass-through to a physical device of the first accelerator node; and

configure interconnect interfaces of the compute node and of the accelerator node to permit translation from a first host physical address range of the first compute node to a first host physical address range of the first accelerator node.

12. The system orchestrator of claim 11 , wherein the one or more circuits are configured to:

configure the interconnect interface of the compute node to map the first host physical address range of the first compute node to a first uniform physical address range for use of the reconfigurable interconnection network; and

configure the interconnect interface of the accelerator node to map the first uniform physical address range to the first host physical address range of the first accelerator node.

13. The system orchestrator of claim 11 , wherein the one or more circuits are further configured to:

configure a memory management unit of the accelerator node to map virtual physical addresses of the first virtual machine to uniform physical addresses for use over the reconfigurable interconnection network.

14. A method of driving a physical device of an accelerator node in a disaggregated computing architecture using device pass-through, wherein a first compute node and the accelerator node are separate system nodes having independent physical address spaces and configured to implement a single execution environment, the method comprising:

executing, by the first compute node of the disaggregated computing architecture, a host operating system, the first compute node instantiating a first virtual machine executing a guest device driver for driving the physical device;

accessing, by the guest device driver,

one or more input registers of the physical device via a guest physical address range of first virtual machine;

mapping, by a pass-through driver of the host operating system, the guest physical address range to a host physical address range of the host operating system; and

mapping, by an interconnect interface of the first compute node, the host physical address range to a first uniform physical address range of the interconnection network for addressing the accelerator node.

15. The method of claim 6 , wherein accessing the one or more input registers of the physical device comprises storing to the one or more input registers one or more pointers to an address range in a memory node associated with the first virtual machine.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 7, 2018
From: BIELSKI, MACIEJ; RIGO, ALVISE; PAOLINO, MICHELE; RAHO, SALVATORE DANIELE
To: VIRTUAL OPEN SYSTEMS
Reel/Frame 047445/0975 →
Cited By (1)
US 12,430,031