Seamless extension of local computing power
Abstract
Machines, systems and methods for remotely provisioning computing power over a communications network are provided. The method may comprise selecting one or more tasks being executed on a first computing system to be migrated for execution on a second computing system connected to the first computing system by way of a communications network; determining a first point of execution reached during the execution of at least a selected task on the first computing system prior to the selected task being migrated for execution to the second computing system; migrating the selected task to the second computing system, wherein the second computing system continues to execute the selected task from the first point of execution; and monitoring the connection between the first computing system and the second computing system so that in response to detecting a disconnection, execution of the selected task continues seamlessly.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for remotely provisioning computing power over a communications network, the method comprising:
at a determined first point of execution of a plurality of points of execution, synchronizing an intermediate state of a selected task between a local computing system and a remote computing system; after the synchronizing of the intermediate state, establishing a responsibility for the selected task using a local stub and a remote stub of the local and remote computing systems, respectively, wherein establishing the responsibility includes selecting one of the local computing system and the remote computing system to continue executing the selected task in the event of a disconnection; migrating the selected task to the remote computing system prior to a disconnection based on the established responsibility, wherein the remote computing system continues to execute the selected task from the first point of execution; at each of the remaining designated points of execution, performing the steps of:
reestablishing a responsibility for the selected task using the local stub and the remote stub, wherein reestablishing the responsibility includes selecting one of the local computing system and the remote computing system to continue executing the selected task in the event of a disconnection; and
executing a task management protocol associated with the determined established responsibility wherein the task management protocol determines either an asynchronous mode or a synchronous mode.
2 . The method of claim 1 , wherein, in the asynchronous mode, the selected task is remotely executed from the disconnection at the remote computing system until completion or the next designated point of execution and in the synchronous mode, the selected task is returned to the local computing system, and locally executed from the disconnection point to completion or the next designated point of execution.
3 . The method of claim 1 , wherein the remote computing system stores data generated from the execution of the selected task to a data storage medium that is inaccessible by the local computing system, wherein the corresponding data stored on the data storage medium is periodically synchronized with the local computing system over the communications network.
4 . The method of claim 1 , wherein the remote computing system stores data generated from the section of the selected task to a data storage medium that is accessible by the local computing system over the communications network.
5 . A computer program product for remotely provisioning computing power over a communications network, the computer program product comprising:
one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising:
program instructions to, at a determined first point of execution of a plurality of points of execution, synchronize an intermediate state of a selected task between a local computing system and a remote computing system;
program instructions to, after the synchronizing of the intermediate state, establish a responsibility for the selected task using a local stub and a remote stub of the local and remote computing systems, respectively, wherein the program instructions to establish the responsibility include program instructions to select one of the local computing system and the remote computing system to continue executing the selected task in the event of a disconnection;
program instructions to migrate the selected task to the remote computing system prior to a disconnection based on the established responsibility, wherein the remote computing system continues to execute the selected task from the first point of execution;
program instructions to, at each of the remaining designated points of execution, perform the steps of:
reestablishing a responsibility for the selected task using the local stub and the remote stub, wherein the program instructions to reestablish the responsibility include program instructions to select one of the local computing system and the remote computing system to continue executing the selected task in the event of a disconnection; and
executing a task management protocol associated with the determined established responsibility wherein the task management protocol determines either an asynchronous mode or a synchronous mode.
6 . The computer program product of claim 5 , wherein, in the asynchronous mode, the selected task is remotely executed from the disconnection at the remote computing system until completion or the next designated point of execution and in the synchronous mode, the selected task is returned to the local computing system, and locally executed from the disconnection point to completion or the next designated point of execution.
7 . The computer program product of claim 5 , wherein the remote computing system stores data generated from the execution of the selected task to a data storage medium that is inaccessible by the local computing system, wherein the corresponding data stored on the data storage medium is periodically synchronized with the local computing system over the communications network.
8 . The computer program product of claim 5 , wherein the remote computing system stores data generated from the section of the selected task to a data storage medium that is accessible by the local computing system over the communications network.
9 . A computer system for remotely provisioning computing power over a communications network, the computer program product comprising:
one or more computer processors; one or more computer readable storage media; and program instructions stored on the one or more computer readable storage media for execution by at least one of the one or more computer processors, the program instructions comprising: program instructions to, at a determined first point of execution of a plurality of points of execution, synchronize an intermediate state of a selected task between a local computing system and a remote computing system;
program instructions to, after the synchronizing of the intermediate state, establish a responsibility for the selected task using a local stub and a remote stub of the local and remote computing systems, respectively, wherein the program instructions to establish the responsibility include program instructions to select one of the local computing system and the remote computing system to continue executing the selected task in the event of a disconnection;
program instructions to migrate the selected task to the remote computing system prior to a disconnection based on the established responsibility, wherein the remote computing system continues to execute the selected task from the first point of execution;
program instructions to, at each of the remaining designated points of execution, perform the steps of:
reestablishing a responsibility for the selected task using the local stub and the remote stub, wherein the program instructions to reestablish the responsibility include program instructions to select one of the local computing system and the remote computing system to continue executing the selected task in the event of a disconnection; and
executing a task management protocol associated with the determined established responsibility wherein the task management protocol determines either an asynchronous mode or a synchronous mode.
10 . The computer system of claim 9 , wherein, in the asynchronous mode, the selected task is remotely executed from the disconnection at the remote computing system until completion or the next designated point of execution and in the synchronous mode, the selected task is returned to the local computing system, and locally executed from the disconnection point to completion or the next designated point of execution.
11 . The computer system of claim 9 , wherein the remote computing system stores data generated from the execution of the selected task to a data storage medium that is inaccessible by the local computing system, wherein the corresponding data stored on the data storage medium is periodically synchronized with the local computing system over the communications network.
12 . The computer system of claim 9 , wherein the remote computing system stores data generated from the section of the selected task to a data storage medium that is accessible by the local computing system over the communications network.Join the waitlist — get patent alerts
Track US2016232031A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.