Massively computational parallizable optimization management system and method
AssigneeInternational Business Machines Corporation
InventorNimrod Megiddo
Life of this patent
Estimating the term…
Loading patent…
AssigneeInternational Business Machines Corporation
InventorNimrod Megiddo
Estimating the term…
A distributed processing system, program product and method of executing a computer program distributed across a plurality of computers. First, interested participants register and provide a commitment for available excess computer capacity. Participants may enter a number of available hours and machine characteristics. A normalized capacity may be derived from the machine characteristics and a normalized excess capacity may be derived from the number of hours committed for the participant. New registrants may be assigned benchmark tasks to indicate likely performance. Parties may purchase capacity for executing large computer programs and searches. The computer program is partitioned into multiple independent tasks of approximately equal size and the tasks are distributed to participants according to available excess capacity. A determination is made whether each distributed task will execute within a selected range of other distributed tasks and, if not, tasks may be reassigned. The likelihood that a task will complete may be based on the participant's past performance. As each task is completed, the completing participant is checked to determine if the task is on schedule. Any task assigned to computers that are found to be behind schedule may be reassigned to other participants. A check is made to determined whether each task is assigned to at least one participant and several tasks may be assigned to multiple participants. Once all tasks are complete, the best result is selected for each task. Each participant may be compensated for normalized excess capacity and that compensation and charges to requesting parties may be based on total available normalized capacity.
A method of executing a computer program distributed across a plurality of computers, said method comprising:
A distributed processing system for transferring excess capacity from a plurality of computers to a party requiring execution of a computer program, said distributed processing system comprising:
A computer program product for selling unused excess capacity of a plurality of connected computers to a party requiring execution of a partitionable computer program, said computer program product comprising a computer useable medium having computer readable program code thereon, said computer readable program code comprising:
Dependencies are inferred from the claim text.