Heterogeneous reconfigurable agent compute engine (HRACE)
First Claim
1. A processing system comprising:
- a plurality of computing hardware resources;
a first autonomous computing agent implemented by at least one of the plurality of computing hardware resources;
a second autonomous computing agent implemented by at least one of the plurality of computing hardware resources; and
an input device for collecting raw data to be managed by at least one of the first and second computing agents;
the first computing agent and the second computing agent operable to use processing information, including computing requirements for carrying out computing tasks and resource information including characteristics of at least one of the plurality of computing hardware resources, to collaboratively assign computing tasks to the plurality of resources according to a predetermined strategy each computing agent operable to optimize task allocation according to a task demand level by reconfiguring a single computing hardware resource if the task demand is at a first level and reconfiguring a plurality of computing hardware resources if the task demand is at a second level whereby the first level is lower than the second level;
at least one of the first or second autonomous computing agents being able to monitor a task demand level and a number of the computing hardware resources and generate additional computing agents if the task demand level or the number of computing hardware resources exceeds a predetermined threshold.
2 Assignments
0 Petitions
Accused Products
Abstract
A computing system (10) includes a plurality of hardware computing resources (12-36) controlled at least in part by a plurality of autonomous computing agents (40,42,44). Each autonomous computing agent (40,42,44) includes or has access to operating information including processing information (46), resource information (48), optimization information (50), and communication information (52). The computing agents (40,42,44) collaborate to optimize performance of the system (10) and to assign computing tasks to the resources (12-36) according to a predetermined strategy. The predetermined strategy may seek to optimize speed, power, or communication efficiency of the system 10. Each agent (40,42,44) may optimize performance of the system (10) by assigning tasks to best-fit resources or by reconfiguring one or more resources. The agents (40,42,44) may collaborate to optimize performance of the system (10) by sharing resource and task information and assigning tasks to best-fit resources based on the shared information, reconfiguring one or more resources based on the shared information, or both.
-
Citations
29 Claims
-
1. A processing system comprising:
-
a plurality of computing hardware resources; a first autonomous computing agent implemented by at least one of the plurality of computing hardware resources; a second autonomous computing agent implemented by at least one of the plurality of computing hardware resources; and an input device for collecting raw data to be managed by at least one of the first and second computing agents; the first computing agent and the second computing agent operable to use processing information, including computing requirements for carrying out computing tasks and resource information including characteristics of at least one of the plurality of computing hardware resources, to collaboratively assign computing tasks to the plurality of resources according to a predetermined strategy each computing agent operable to optimize task allocation according to a task demand level by reconfiguring a single computing hardware resource if the task demand is at a first level and reconfiguring a plurality of computing hardware resources if the task demand is at a second level whereby the first level is lower than the second level; at least one of the first or second autonomous computing agents being able to monitor a task demand level and a number of the computing hardware resources and generate additional computing agents if the task demand level or the number of computing hardware resources exceeds a predetermined threshold. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 28)
-
-
17. A processing system comprising:
-
a plurality of computing hardware resources; a first autonomous computing agent implemented by at least one of the plurality of hardware resources; a second autonomous computing agent implemented by at least one of the plurality of hardware resources; processing information accessible by at least one of the first and second computing agents, the processing information including computing requirements for carrying out computing tasks; resource information accessible by at least one of the first and second computing agents, the resource information including characteristics of at least one of the plurality of computing hardware resources; communication information accessible by at least one of the first and second computing agents, the communication information including resource interconnect information and communication bandwidth information; an input device for collecting raw data to be managed by at least one of the first and second computing agents; and optimization information accessible by at least one of the first and second computing agents, the optimization information including optimization schemes and resource requirements for implementing the optimization schemes, the first computing agent and the second computing agent operable to use the processing information, the resource information, the communication information, and the optimization information to collaboratively assign computing tasks to the plurality of resources according to a predetermined strategy chosen from the group consisting of a speed optimization strategy and a power optimization strategy. each computing agent operable to optimize task allocation according to a task demand level by reconfiguring a single computing resource if the task demand is at a first level and reconfiguring a plurality of computing hardware resources if the task demand is at a second level whereby the first level is lower than the second level; at least one of the first or second computing agents being able to monitor a task demand level and a number of the computing hardware resources and generate additional computing agents if the task demand level or the number of computing hardware resources exceeds a predetermined threshold. - View Dependent Claims (18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 29)
-
Specification