In one embodiment, a subset of a set of streaming kernels of an
application is selected for implementation on a reconfigurable processor.
The streaming kernels are selected by first forming a stream flow graph
of the application by parsing a program of instructions of the
application, the stream flow graph having kernel nodes and edges, and
determining benefit and cost values for each kernel node in the stream
flow graph. Next, a subset of the kernel nodes that maximizes a weighted
sum of the benefits values is selected, subject to a constraint that the
sum of cost values is not greater than a prescribed value for the
reconfigurable processor.