RECONFIGURABLE PROCESSOR FABRIC IMPLEMENTATION USING SATISFIABILITY ANALYSIS
First Claim
1. A computer-implemented method for resource allocation comprising:
- configuring a first plurality of processing elements from a reconfigurable fabric for computational calculations, based on a dataflow graph, wherein the configuring is performed using a satisfiability solver technique comprising constructing a set of mapping constraints and building a satisfiability model of the mapping constraints, and wherein the satisfiability solver technique includes adaptive windowing;
configuring routing resources within the reconfigurable fabric based on the satisfiability solver technique; and
performing data computation based on the dataflow graph using the first plurality of processing elements and the routing resources.
5 Assignments
0 Petitions
Accused Products
Abstract
Disclosed techniques utilize a satisfiability solver for allocation and/or configuration of resources in a reconfigurable fabric of processing elements. A dataflow graph is an input provided to a toolchain that includes a satisfiability solver. The satisfiability solver operates on subsets of interconnected nodes within a dataflow graph to derive a solution. The solution is trimmed by removing artifacts and unnecessary parts. The solutions of subsets are then used as an input to additional subsets of nodes within the dataflow graph in an iterative process to derive a complete solution. The satisfiability solver technique uses adaptive windowing in both the time dimension and the spatial dimensions of the dataflow graph. Processing elements and routing elements within the reconfigurable fabric are configured based on the complete solution. Data computation is performed based on the dataflow graph using the processing elements and the routing resources.
52 Citations
40 Claims
-
1. A computer-implemented method for resource allocation comprising:
-
configuring a first plurality of processing elements from a reconfigurable fabric for computational calculations, based on a dataflow graph, wherein the configuring is performed using a satisfiability solver technique comprising constructing a set of mapping constraints and building a satisfiability model of the mapping constraints, and wherein the satisfiability solver technique includes adaptive windowing; configuring routing resources within the reconfigurable fabric based on the satisfiability solver technique; and performing data computation based on the dataflow graph using the first plurality of processing elements and the routing resources. - View Dependent Claims (2, 3, 4, 9, 10, 11, 12, 15, 16, 17, 18, 19, 23, 24, 25, 26, 27, 28, 30, 31, 33, 34, 35, 36, 37, 38)
-
-
5-8. -8. (canceled)
-
13-14. -14. (canceled)
-
20-22. -22. (canceled)
-
29. (canceled)
-
32. (canceled)
-
39. A computer program product embodied in a non-transitory computer readable medium for resource allocation, the computer program product comprising code which causes one or more processors to perform operations of:
-
configuring a first plurality of processing elements from a reconfigurable fabric for computational calculations, based on a dataflow graph, wherein the configuring is performed using a satisfiability solver technique comprising constructing a set of mapping constraints and building a satisfiability model of the mapping constraints, and wherein the satisfiability solver technique includes adaptive windowing; configuring routing resources within the reconfigurable fabric based on the satisfiability solver technique; and
performing data computation based on the dataflow graph using the first plurality of processing elements and the routing resources.
-
-
40. A computer system for resource allocation comprising:
-
a memory which stores instructions; one or more processors attached to the memory wherein the one or more processors, when executing the instructions which are stored, are configured to; configure a first plurality of processing elements from a reconfigurable fabric for computational calculations, based on a dataflow graph, wherein the configuring is performed using a satisfiability solver technique comprising constructing a set of mapping constraints and building a satisfiability model of the mapping constraints, and wherein the satisfiability solver technique includes adaptive windowing; configure routing resources within the reconfigurable fabric based on the satisfiability solver technique; and perform data computation based on the dataflow graph using the first plurality of processing elements and the routing resources.
-
Specification