Patent ID: 9239996
Filing Date: 2016-01-19
CPC Classification: G06F,G06Q,H04L

Claim Text:
1. A computer implemented method for distributing cloud compute jobs, the method comprising acts of: receiving, by a central computer system, over a communication network a request to complete a computer based task, the request including at least a virtual machine image specifying the computer based task; creating automatically, by the central computer system, at least one condition constraining the completion of the computer based task, based on analysis of task execution information of the computer based task; partitioning, by the central computer system, the computer based task into one or more sub-tasks; determining, by the central computer system, assignment of the one or more sub-tasks to one or more of a plurality of compute providers, wherein the act of determining the assignment of the one or more sub-task includes analyzing the plurality of compute providers for at least resource availability and determining a translation cost for changing an execution format of the one or more sub-tasks to a supported virtual machine execution format of at least one of the plurality of compute providers and to meet the automatically created at least one condition constraining the completion of the computer based task, wherein at least one of the plurality of compute providers provides a different virtual machine execution format associated with execution of a compute task; transmitting, over the communication network, a request to execute each sub-task to at least one virtual machine of a respective provider; and providing access, over the communication network, to any portion of the executed task, wherein the computer based task is scheduled to be executed according to the any condition.