IP Library Granted Patent US 12,405,791
Granted Patent B2
US 12,405,791 · App. 18/309,203 · Granted Sep 2, 2025

Dynamic communication architecture for decentralized heterogenous accelerators

Inventors: Dejan S. Milojicic (Milpitas, CA); Kaiwen Cao (Spring, TX); Aditya Dhakal (Milpitas, CA)
Assignee: Hewlett Packard Enterprise Development LP
G06F9/3005G06F9/3877
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,405,791
App. No.
18/309,203
Granted
Sep 2, 2025
Kind
B2
Abstract

Systems and methods are provided for a dynamic communication architecture that can include decentralized heterogenous accelerators, and an operation of mapping corresponding decentralized virtualized accelerators. The mapping of corresponding decentralized virtualized accelerators is performed on top of, for example, a memory-mapped multi-accelerator communication architecture to enable effective and flexible sharing of data. The mapping can be dynamically adjusted with regard to the workload running by analyzing workflow communication.

Claims (36)

1. A non-transitory machine-readable medium storing instructions that cause one or more processors of an electronic system to perform operations comprising:

mapping a plurality of workflow code execution components respectively to a plurality of system components;

determining a communication performance characteristic level associated with each of the plurality of workflow code execution components; and

correlating a communication architecture between each of the plurality of system components respectively with each of the plurality of workflow code execution components based on the communication performance characteristic level associated with each of the plurality of workflow code execution components, wherein the correlating of the communication architecture between two of the plurality of system components is made based on a comparison of communication performance characteristic levels between two of the workflow code execution components.

2. The non-transitory machine-readable medium of claim 1 , wherein the communication performance characteristic level comprises a measurement of latency and/or throughput.

3. The non-transitory machine-readable medium of claim 2 , wherein the communication architecture, which is between a pair of the system components and which is associated with the workflow code execution component with the greatest communication performance characteristic level, is given highest priority amongst the remaining communication architecture.

4. The non-transitory machine-readable medium of claim 1 , wherein the plurality of system components do not use a centralized server to communicate with each other.

5. The non-transitory machine-readable medium of claim 1 , wherein the plurality of system components comprise a CPU and at least one accelerator.

6. The non-transitory machine-readable medium of claim 1 , wherein the plurality of system components comprise multiple accelerators.

7. The non-transitory machine-readable medium of claim 1 , wherein the communication architecture comprises a memory mapping communication architecture, a peripheral component interconnect express (PCIe) communication architecture, an ethernet communication architecture, or an Infiniband communication architecture.

8. The non-transitory machine-readable medium of claim 1 , wherein the determining of the communication performance characteristic level is made using communication capability information derived from data exchange between each of the plurality of system components.

9. A method comprising:

providing a communication architecture between a first system component and a second system component;

identifying a workflow code execution component having a greatest communication performance characteristic level amongst other workflow code execution components; and

associating the communication architecture with the workflow code execution component having the greatest communication performance characteristic level, wherein the method further comprises attributing highest priority to the communication architecture amongst other communication architecture provided between other system components.

10. The method of claim 9 , wherein the communication performance characteristic level comprises a measurement of latency and/or throughput.

11. The method of claim 9 , wherein the first system component and the second system component do not use a centralized server to communicate with each other.

12. The method of claim 9 , wherein the first system component and the second system component comprise multiple accelerators.

13. The method of claim 9 , wherein the identifying of the workflow code execution component having the greatest communication performance characteristic level is made using communication capability information provided by at least one of the first system component and the second system component.

14. A communication architecture system comprising:

a first system component;

a second system component;

a third system component;

a plurality of workflow code execution components;

a processor; and

a memory configured to store instructions that, in response to being executed by the processor, cause the processor to:

provide a first communication architecture between the first system component and the second system component;

provide a second communication architecture between the second system component and the third system component;

determine which of the first communication architecture and the second communication architecture has highest priority;

compare a speed of execution of the plurality of workflow code execution components;

identify which of the plurality of workflow code execution components has a greatest speed of execution based on the compare step; and

associate the workflow code execution component having the greatest speed of execution to the first communication architecture or the second communication architecture determined as having the highest priority.

15. The communication architecture system of claim 14 , wherein the comparison of the speed of execution of the plurality of workflow code execution components comprises a comparison of measurements of latency and/or throughput.

16. The communication architecture system of claim 14 , wherein the first system component, second system component, and third system component do not use a centralized server to communicate with each other.

17. The communication architecture system of claim 14 , wherein the first system component, second system component, and third system component comprise a CPU and multiple accelerators.

18. The communication architecture system of claim 14 , wherein the identifying of the workflow code execution component having the greatest speed of execution is made using communication capability information provided by at least one of the first system component, second system component, and third system component.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 9, 2023
From: MILOJICIC, DEJAN S.; CAO, KAIWEN; DHAKAL, ADITYA
To: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
Reel/Frame 063586/0182 →
Continuity (1)
Related Publication 20240362022A1 · Oct 31, 2024
References Cited (12)
US 8365184B2 · Carter · 2013 [cited by examiner]
US 10740152B2 · Bobba · 2020 [cited by examiner]
US 10817353B1 · Kain · 2020 [cited by examiner]
US 11915041B1 · Tanach · 2024 [cited by examiner]
US 20130198366A1 · Branson · 2013 [cited by examiner]
US 20160127212A1 · Guminy · 2016 [cited by examiner]
US 20240256333A1 · Weber · 2024 [cited by examiner]
Harris, M., “Unified Memory for CUDA Beginners,” Jun. 19, 2017, Technical Blog, 6 pages, https://developer.nvidia.com/blog/unified-memory-cuda-beginners/. [cited by applicant]
Jones, T. et al., “UNITY: Unified Memory and File Space,” Jun. 27, 2017, 8 pages. [cited by applicant]
Pinto, C. et al., “A Virtualization Framework for IOMMU-less Many-Core Accelerators,” Jun. 2014, ResearchGate, 9 pages,. [cited by applicant]
Sakharnykh, N., “Maximizing Unified Memory Performance in CUDA,” Nov. 19, 2017, Technical Blog, 6 pages. [cited by applicant]
Xu, H, et al., “Machine Learning Guided Optimal Use of GPU Unified Memory,” Nov. 15, 2019, IEEE/ACM Workshop on Memory Centric High Performance Computing (MCPHC), 7 pages. [cited by applicant]