Dynamic selection of hardware processors for stream processing
First Claim
Patent Images
1. A computing platform comprising:
- multiple hardware processors;
multiple image processing tools, the multiple image processing tools including a first image processing tool that is executable by an individual hardware processor of the multiple hardware processors;
an image processing pipeline configured to receive an image data stream and to process the image data stream with a sequence of the multiple image processing tools;
a resource manager configured to receive from an application (a) an instruction to execute the image processing pipeline and (b) a first performance goal that indicates an allowable latency of the first image processing tool;
the resource manager being further configured to perform acts based at least in part on receiving the instruction from the application, the acts comprising;
determining that a first hardware processor of the multiple hardware processors is configured to execute the first image processing tool with no more than the allowable latency;
determining that a second hardware processor of the multiple processors is configured to execute the first image processing tool with no more than the allowable latency;
determining that executing the first image processing tool on the first hardware processor uses less power than executing the first image processing tool on the second hardware processor; and
selecting the first hardware processor to execute the first image processing tool.
1 Assignment
0 Petitions
Accused Products
Abstract
A computing platform supports stream processing pipelines, each of which comprises a sequence of stream processing tools. Upon specification of a stream processing pipeline, multiple available hardware processors are evaluated to determine which of the processor is capable of executing each tool of the pipeline while satisfying specified performance goals. Among these processors, a hardware processor is selected for each pipeline tool that will minimize power consumption.
32 Citations
20 Claims
-
1. A computing platform comprising:
-
multiple hardware processors; multiple image processing tools, the multiple image processing tools including a first image processing tool that is executable by an individual hardware processor of the multiple hardware processors; an image processing pipeline configured to receive an image data stream and to process the image data stream with a sequence of the multiple image processing tools; a resource manager configured to receive from an application (a) an instruction to execute the image processing pipeline and (b) a first performance goal that indicates an allowable latency of the first image processing tool; the resource manager being further configured to perform acts based at least in part on receiving the instruction from the application, the acts comprising; determining that a first hardware processor of the multiple hardware processors is configured to execute the first image processing tool with no more than the allowable latency; determining that a second hardware processor of the multiple processors is configured to execute the first image processing tool with no more than the allowable latency; determining that executing the first image processing tool on the first hardware processor uses less power than executing the first image processing tool on the second hardware processor; and selecting the first hardware processor to execute the first image processing tool. - View Dependent Claims (2, 3)
-
-
4. A method, comprising:
-
receiving an instruction from an application to execute a processing pipeline, wherein the processing pipeline comprises multiple stream processing tools; receiving an indication of a performance goal from the application, the performance goal indicating an allowable latency for a stream processing tool of the multiple stream processing tools; determining that a first hardware processor is configured to execute the stream processing tool with no more than the allowable latency; determining that a second hardware processor is configured to execute the stream processing tool with no more than the allowable latency; determining that executing the stream processing tool on the first hardware processor uses less power than executing the stream processing tool on the second hardware processor; and selecting the first hardware processor to execute the stream processing tool. - View Dependent Claims (5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A computing platform comprising:
-
a first hardware processor; a second hardware processor; a resource manager configured to perform acts comprising; receiving an instruction from an application to execute a processing pipeline, wherein the processing pipeline comprises multiple stream processing tools; receiving an indication of a performance goal from the application, the performance goal indicating an allowable latency for a stream processing tool of the multiple stream processing tools; determining that the first hardware processor is configured to execute the stream processing tool with no more than the allowable latency; determining that the second hardware processor is configured to execute the stream processing tool with no more than the allowable latency; determining that executing the stream processing tool on the first hardware processor uses less power than executing the stream processing tool on the second hardware processor; and selecting the first hardware processor to execute the stream processing tool, determining that executing the stream processing tool on the first hardware processor uses less power than executing the stream processing tool on the second hardware processor; and selecting the first hardware processor to execute the stream processing tool. - View Dependent Claims (14, 15, 16, 17, 18, 19, 20)
-
Specification