Predictive cloud-based presimulation
AssigneeMicrosoft Technology Licensing, LLC
InventorJoel Pritchett
Life of this patent
Estimating the term…
Abstract
Embodiments related to predictive cloud-based presimulation are described herein. For example, one disclose embodiment provides, on a computing device, a method comprising receiving an input of state from a client device and executing a server simulation of a digital experience based on the input of state, the server simulation configured to run concurrently with, and ahead of, a client simulation on the client device. The method further comprises generating a plurality of simulation results from the server simulation, selecting one or more simulation results from the plurality of simulation results based on a likelihood the client simulation will utilize a particular simulation result, and sending the one or more simulation results to the client device.
Claims20
A computing device, comprising:
- a logic subsystem;
- and
- a data-storage subsystem comprising instructions executable by the logic subsystem to
- receive an input of state from a client device,
- execute a server simulation of a digital experience based on the input of state, the server simulation configured to run concurrently with, and ahead of, a client simulation of the digital experience being executed on the client device,
- generate a plurality of simulation results from the server simulation,
- determine, for each simulation result, a likelihood that the client simulation will utilize the simulation result,
- select one or more simulation results from the plurality of simulation results based on the likelihood, for each selected simulation result, that the client simulation will utilize the selected simulation result, and
- send the one or more selected simulation results to the client device.
A computer-readable memory device comprising instructions stored thereon that are executable by a computing device to
- receive one or more simulation results from a server system executing a server simulation of the digital experience concurrently with, and ahead of, the client simulation being executed at the computing device, each of the simulation results comprising a function input, a corresponding function output generated by a function based on the function input, and a function identifier,
- store the one or more simulation results in a lookup structure;
- upon occurrence of a function call, determine if the lookup structure includes a corresponding simulation result for the function call,
- if the lookup structure includes the corresponding simulation result, retrieve the corresponding simulation result from the lookup structure and executing the client simulation using the corresponding simulation result retrieved from the lookup structure, and
- if the lookup structure does not include the corresponding simulation result, execute the function call.
A computing device, comprising:
- a logic subsystem;
- and
- a data-storage subsystem comprising instructions executable by the logic subsystem to
- receive an input of state from the client device,
- execute a server simulation of a digital experience based on the input of state, the simulation configured to run concurrently with, and ahead of, a client simulation of the digital experience being executed on the client device,
- generate a plurality of simulation results from the server simulation,
- determine, for each of the plurality of simulation results, a likelihood the client simulation will utilize a particular simulation result, the likelihood based on one or more statistics regarding re-simulation of previous simulation results,
- select one or more simulation results from the plurality of simulation results based on the likelihood the client simulation will utilize a particular simulation result, and
- send the one or more simulation results to the client device for providing memoization to the client simulation.
Dependencies are inferred from the claim text.