Method and system for creating and programming an adaptive computing engine
First Claim
1. A system for creating an adaptive computing engine (ACE), the system comprising:
- algorithmic elements adaptable for use in the ACE and configured to provide algorithmic operations;
means for mapping the algorithmic operations to heterogeneous nodes such that the heterogeneous nodes are initially configured to provide appropriate hardware circuit functions that perform the algorithmic operations, the heterogeneous nodes being coupled with each other by a reconfigurable interconnection network, the mapping by the mapping means including selecting a combination of ACE building blocks from ACE building block types for the appropriate hardware circuit functions; and
means for utilizing the algorithmic operations such that the heterogeneous nodes are optimally configured to provide the appropriate hardware circuit functions, the utilizing by the utilizing means including simulating performance of the ACE with the combination of ACE building blocks and altering the combination of ACE building blocks until predetermined performance standards that determine an efficiency of the ACE are met while simulating performance of the ACE.
1 Assignment
0 Petitions
Accused Products
Abstract
A system for creating an adaptive computing engine (ACE) includes algorithmic elements adaptable for use in the ACE and configured to provide algorithmic operations, and provides mapping of the algorithmic operations to heterogeneous nodes. The mapping is for initially configuring the heterogeneous nodes to provide appropriate hardware circuit functions that perform algorithmic operations. A reconfigurable interconnection network interconnects the heterogeneous nodes. The mapping includes selecting a combination of ACE building blocks from the ACE building block types for the appropriate hardware circuit functions. The system and corresponding method also includes utilizing the algorithmic operations for optimally configuring the heterogeneous nodes to provide the appropriate hardware circuit function. The utilizing includes the simulating of the performance of the ACE with the combination of ACE building blocks and altering the combination until predetermined performance standards that determine the efficiency of the ACE are met while simulating performance of the ACE.
101 Citations
19 Claims
-
1. A system for creating an adaptive computing engine (ACE), the system comprising:
-
algorithmic elements adaptable for use in the ACE and configured to provide algorithmic operations; means for mapping the algorithmic operations to heterogeneous nodes such that the heterogeneous nodes are initially configured to provide appropriate hardware circuit functions that perform the algorithmic operations, the heterogeneous nodes being coupled with each other by a reconfigurable interconnection network, the mapping by the mapping means including selecting a combination of ACE building blocks from ACE building block types for the appropriate hardware circuit functions; and means for utilizing the algorithmic operations such that the heterogeneous nodes are optimally configured to provide the appropriate hardware circuit functions, the utilizing by the utilizing means including simulating performance of the ACE with the combination of ACE building blocks and altering the combination of ACE building blocks until predetermined performance standards that determine an efficiency of the ACE are met while simulating performance of the ACE. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A method for creating an adaptive computing engine (ACE), the method comprising:
-
providing algorithmic elements adaptable for use in the ACE and configured to provide algorithmic operations; mapping the algorithmic operations to heterogeneous nodes such that the heterogeneous nodes are initially configured to provide appropriate hardware circuit functions that perform the algorithmic operations, the heterogeneous nodes being coupled with each other by a reconfigurable interconnection network, the mapping including selecting a combination of ACE building blocks from ACE building block types for the appropriate hardware circuit functions; and utilizing the algorithmic operations such that the heterogeneous nodes are optimally configured to provide the appropriate hardware circuit functions, the utilizing comprising simulating performance of the ACE with the combination of ACE building blocks and altering the combination of ACE building blocks until predetermined performance standards that determine an efficiency of the ACE are met while simulating performance of the ACE. - View Dependent Claims (8, 9, 10, 11, 12)
-
-
13. A method for optimizing operations of an adaptive computing engine (ACE), the method comprising:
-
providing a plurality of computation unit composite blocks for an adaptive computing engine; selecting a combination of computation units from the plurality to perform a predetermined function; simulating performance of the predetermined function by the selected combination; determining whether the simulated performance meets chosen metrics of performance; and adjusting the selected combination until the chosen metrics of performance are met. - View Dependent Claims (14, 15, 16, 17)
-
-
18. A profiler for an adaptive computing engine (ACE), the profiler comprising:
-
means for providing code to simulate a hardware design, and means for identifying one or more hot spots in the code, wherein the identified hot spots are those areas of code requiring high power and/or high data movement. - View Dependent Claims (19)
-
Specification