IP Library › Granted Patent US 11,243,817
Granted Patent B2
US 11,243,817 · App. 16/369,036 · Granted Feb 8, 2022

Technologies for data migration between edge accelerators hosted on different edge locations

Inventors: Evan Custodio (North Attleboro, MA); Francesc Guim Bernat (Barcelona, ES); Suraj Prabhakaran (Aachen, DE); Trevor Cooper (Portland, OR); Ned M. Smith (Beaverton, OR); Kshitij Doshi (Tempe, AZ); Petar Torre (Feldkirchen, DE)
Assignee: INTEL CORPORATION
G06F9/505G06F9/5044G06F9/5083G06F2209/509
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,243,817
App. No.
16/369,036
Granted
Feb 8, 2022
Kind
B2
Abstract

Technologies for migrating data between edge accelerators hosted on different edge locations include a device hosted on a present edge location. The device includes one or more processors to: receive a workload from a requesting device, determine one or more accelerator devices hosted on the present edge location to perform the workload, and transmit the workload to the one or more accelerator devices to process the workload. The one or more processor is further to determine whether to perform data migration from the one or more accelerator devices to one or more different edge accelerator devices hosted on a different edge location, and send, in response to a determination to perform the data migration, a request to the one or more accelerator devices on the present edge location for transformed workload data to be processed by the one or more different edge accelerator devices.

Claims (36)

1. A computing device hosted on a present edge location comprising:

memory;

instructions; and

one or more processors to:

access a workload from a requesting device;

determine one or more accelerator devices hosted on the present edge location to perform the workload;

transmit the workload to the one or more accelerator devices to process the workload, the transmission of the workload to the one or more accelerator devices to cause the one or more accelerator devices to convert the workload from a universal format to an accelerator-specific format;

determine whether to perform data migration from the one or more accelerator devices to one or more different edge accelerator devices hosted on a different edge location; and

send, in response to a determination to perform the data migration, a request to the one or more accelerator devices on the present edge location for transformed workload data to be processed by the one or more different edge accelerator devices.

2. The computing device of claim 1 , wherein the request is a first request, and the one or more processors are further to receive a second request to execute the workload from the requesting device, wherein the requesting device is a client compute device or a device hosted outside of the present edge location.

3. The computing device of claim 1 , wherein to determine the one or more accelerator devices hosted on the present edge location to perform the workload, the one or more processors is to select at least one of the one or more accelerator devices on the present edge location based on at least one of a quality of service, compute requirements, or a data type of the workload.

4. The computing device of claim 1 , wherein to determine the one or more accelerator devices hosted on the present edge location to perform the workload, the one or more processors is to perform functional currying to partition large processing tasks into multiple focused functions.

5. The computing device of claim 1 , wherein the one or more accelerator devices are field programmable gate arrays (FPGAs), wherein to transmit the workload to the one or more accelerator devices to convert the workload from the universal format to the accelerator-specific format, the one or more processors is to transmit the workload to the one or more accelerator devices to transform the workload to a bit stream usable by a field programmable gate array (FPGA).

6. The computing device of claim 1 , wherein to determine whether to perform the data migration, the one or more processors is to determine whether the one or more accelerator devices are available to continue to perform acceleration of the workload.

7. The computing device of claim 6 , wherein to determine whether the one or more accelerator devices are available to continue to perform the acceleration of the workload, the one or more processors is to determine whether a distance between a client compute device and the one or more accelerator devices exceeds a predefined threshold.

8. The computing device of claim 6 , wherein to determine whether the one or more accelerator devices are available to continue to perform the acceleration of the workload, the one or more processors is to determine a presence of failure of service at the present edge location.

9. One or more non-transitory machine-readable storage media comprising a plurality of instructions stored thereon that, after being prepared for execution, cause a computing device hosted on a present edge location that executes the prepared instructions to:

receive a workload from a requesting device;

determine one or more accelerator devices hosted on the present edge location to perform the workload;

transmit the workload to the one or more accelerator devices to process the workload, the transmission of the workload to the one or more accelerator devices to cause the one or more accelerator devices to convert the workload from a universal format to an accelerator-specific format;

determine whether to perform data migration from the one or more accelerator devices to one or more different edge accelerator devices hosted on a different edge location; and

send, in response to a determination to perform the data migration, a request to the one or more accelerator devices on the present edge location for transformed workload data to be processed by the one or more different edge accelerator devices.

10. The one or more non-transitory machine-readable storage media of claim 9 , wherein the request is a first request, and the plurality of instructions, when executed, cause the computing device to receive a second request to execute the workload from the requesting device, wherein the requesting device is a client compute device or a device hosted outside of the present edge location.

11. The one or more non-transitory machine-readable storage media of claim 9 , wherein to determine the one or more accelerator devices hosted on the present edge location to perform the workload, the computing device is to select at least one of the one or more accelerator devices on the present edge location based on at least one of a quality of service, compute requirements, or a data type of the workload.

12. The one or more non-transitory machine-readable storage media of claim 9 , wherein to determine the one or more accelerator devices hosted on the present edge location to perform the workload, the computing device is to perform functional currying to partition large processing tasks into multiple focused functions.

13. The one or more non-transitory machine-readable storage media of claim 9 , wherein the one or more accelerator devices are field programmable gate arrays (FPGAs), wherein to transmit the workload to the one or more accelerator devices to convert the workload from the universal format to the accelerator-specific format, the computing device is to transmit the workload to the one or more accelerator devices to transform the workload to a bit stream usable by a field programmable gate array (FPGA).

14. The one or more non-transitory machine-readable storage media of claim 9 , wherein to determine whether to perform the data migration, the computing device is to determine whether the one or more accelerator devices are available to continue to perform acceleration of the workload.

15. The one or more non-transitory machine-readable storage media of claim 14 , wherein to determine whether the one or more accelerator devices are available to continue to perform the acceleration of the workload, the computing device is to determine whether a distance between a client compute device and the one or more accelerator devices exceeds a predefined threshold.

16. The one or more non-transitory machine-readable storage media of claim 14 , wherein to determine whether the one or more accelerator devices are available to continue to perform the acceleration of the workload, the computing device is to determine a presence of failure of service at the present edge location.

17. The one or more non-transitory machine-readable storage media of claim 9 , wherein the request is a first request, and, to send the request to the one or more accelerator devices on the present edge location for the transformed workload data, the computing device is to send a second request to the one or more accelerator devices on the present edge location for the transformed workload data to be sent to the one or more different edge accelerator devices hosted on the different edge location different than the present edge location for continued acceleration of the workload.

18. A method comprising:

receiving, by a computing device hosted on a present edge location, a workload from a requesting device;

determining, by the computing device, one or more accelerator devices hosted on the present edge location to perform the workload;

transmitting, by the computing device, the workload to the one or more accelerator devices to process the workload, the transmission of the workload to the one or more accelerator devices to cause the one or more accelerator devices to convert the workload from a universal format to an accelerator-specific format;

determining, by the computing device, whether to perform data migration from the one or more accelerator devices to one or more different edge accelerator devices hosted on a different edge location; and

sending, in response to determining to perform the data migration and by the computing device, a request to the one or more accelerator devices on the present edge location for transformed workload data to be processed by the one or more different edge accelerator devices.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 4, 2022
From: PRABHAKARAN, SURAJ
To: INTEL CORPORATION
Reel/Frame 059168/0936 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 23, 2021
From: CUSTODIO, EVAN; GUIM BERNAT, FRANCESC; COOPER, TREVOR; SMITH, NED M.; DOSHI, KSHITIJ; TORRE, PETAR
To: INTEL CORPORATION
Reel/Frame 058470/0559 →
Continuity (1)
Related Publication 20190227843A1 · Jul 25, 2019
Cited By (1)
US 12,326,800