Massively Distributed Processing System Architecture, Scheduling, Unique Device Identification and Associated Methods
First Claim
1. A distributed processing system, comprising:
- at least one server system coupled to a network; and
a client agent program configured to operate on distributed devices coupled to the network, the client agent program composing;
a processing system component comprising a core agent module, the core agent module being configured to operate with any of a plurality of different task modules; and
a separate project component comprising at least one project task module, each task module being configured to run on top of the core agent module and to process distributed project workloads for at least one distributed processing project;
wherein the server system is configured to provide the components of the client agent program to the distributed devices and to provide distributed workloads to the distributed devices; and
wherein generalised application program interfaces (APIs), flexible scheduling, distributed data management, background communications, variable workload granularity and dynamic management of client agents and task modules, including automatic updates, are utilized are utilised by the server system and the client agent programs to facilitate operations of the distributed processing system.
0 Assignments
0 Petitions
Accused Products
Abstract
A massively distributed processing system and associated methods are described that utilize an advantageous processing architecture for a multitude of widely distributed devices to process distributed workloads for a plurality distributed processing projects. To provide the infrastructure processing power for the distributed processing system, a modular client agent program, including a system component with a core agent module and a separate project component with at least one task module, is configured to operate on the distributed devices and to process a variety of project workloads. For each different distributed project, different project components or task modules may be provided by a server system to the distributed devices to run on the core agent module or system component. In addition, a capabilities database can be used by a server system to schedule workloads based upon the capabilities of the distributed devices. Furthermore, scheduling, device ID, task wrapper and further infrastructure and application development implementations are also provided.
-
Citations
17 Claims
-
1. A distributed processing system, comprising:
-
at least one server system coupled to a network; and a client agent program configured to operate on distributed devices coupled to the network, the client agent program composing; a processing system component comprising a core agent module, the core agent module being configured to operate with any of a plurality of different task modules; and a separate project component comprising at least one project task module, each task module being configured to run on top of the core agent module and to process distributed project workloads for at least one distributed processing project; wherein the server system is configured to provide the components of the client agent program to the distributed devices and to provide distributed workloads to the distributed devices; and wherein generalised application program interfaces (APIs), flexible scheduling, distributed data management, background communications, variable workload granularity and dynamic management of client agents and task modules, including automatic updates, are utilized are utilised by the server system and the client agent programs to facilitate operations of the distributed processing system. - View Dependent Claims (2, 3, 4, 5, 6)
-
-
7. A distributed processing system, comprising:
-
at least one server system coupled to a network; and a client agent program configured to operate on distributed devices coupled to the network, the client agent program comprising; a processing system component comprising a core agent module, the core agent module being configured to operate with any of a plurality of different task modules; and a separate project component comprising at least one project task module, each task module being configured to run on top of the core agent module and to process distributed project workunits for at least one distributed processing project; wherein the server system is configured to provide the components of the client agent program to the distributed devices and to provide distributed workunits to the distributed devices; and wherein the server system is further configured to schedule workunits for the client agent programs utilizing a plurality of scheduling criteria. - View Dependent Claims (8, 9)
-
-
10. A distributed processing system, comprising:
-
at least one server system coupled to a network; and a client agent program configured to operate on distributed devices coupled to the network, the client agent program comprising; a processing system component comprising a core agent module, the core agent module being configured to operate with any of a plurality of different task modules; and a separate project component comprising at least one project task module, each task module being configured to run on top of the core agent module and to process distributed project workunits for at least one distributed processing project; wherein the server system is configured to provide the components of the client agent program to the distributed devices and to provide distributed workunits to the distributed devices; and wherein the server system is further configured to utilize a persisted, server-generated identification (ID) technique to keep track of identities for the distributed devices, wherein the identification technique entails the use of an opaque device key to detect cloned device IDs that may arise intentionally or unintentionally. - View Dependent Claims (11)
-
-
12. A distributed processing system, comprising:
-
at least one server system coupled to a network; and a client agent program configured to operate on distributed devices coupled to the network, the client agent program comprising; a processing system component comprising a core agent module, the core agent module being configured to operate with any of a plurality of different task modules; and a separate project component comprising at least one project task module, each task module being configured to run on top of the core agent module and to process distributed project workunits for at least one distributed processing project; wherein the server system is configured to provide the components of the client agent program to the distributed devices and to provide distributed workunits to the distributed devices; and wherein the server system is further configured to provide project task module to the distributed device utilizing a task wrapper executable, the task wrapper executable being configured to provide a constrained virtual environment for execution of the task module on the client agent. - View Dependent Claims (13, 14, 15, 16, 17)
-
Specification