Methods and systems for cloud gaming
Systems and methods for virtual machine management in a cloud computing system. The systems and methods comprise receiving a game play session setup request from a user device, retrieving, in response to the session setup request, a user settings profile. The user settings profile comprises a service level agreement for session setup. A first hardware request is sent to a virtual machine manager. The first hardware request is based on the service level agreement for session setup. The virtual machine manager initializes a first virtual machine based on first hardware request. A peer-to-peer real-time communication connection is created between the user device and first virtual machine. During the game play session, an updated service level agreement is received and a second hardware request is sent to the virtual machine manager, wherein the second hardware request is based on updated service level agreement.
1 . A method for virtual machine management in a cloud computing system, the method comprising:
receiving, over a network connection, at an edge server of the cloud computing system, a game play session setup request from a user device;
retrieving, via the edge server, in response to the game play session setup request, a user settings profile, wherein the user settings profile comprises a service level agreement for session setup, wherein the service level agreement corresponds to a level of cloud computing resources available to the user device;
sending a first hardware request to a virtual machine manager of the edge server, wherein the first hardware request is based on the service level agreement for session setup;
initializing, by the virtual machine manager of the edge server, a first virtual machine based on the first hardware request;
creating, via the edge server, a first peer-to-peer real-time communication connection between the user device and the first virtual machine;
receiving, at the edge server, an updated service level agreement, wherein the updated service level agreement corresponds to a different level of cloud computing resources available to the user device than the level corresponding to the service level agreement;
sending a second hardware request to the virtual machine manager of the edge server, wherein the second hardware request is based on the updated service level agreement, and
initializing, by the virtual machine manager, a second virtual machine based on the second hardware request.
2 . The method of claim 1 , wherein the game play session setup request indicates a user selected video game.
3 . The method of claim 1 , wherein the updated service level agreement is received during a game play session.
4 . The method of claim 2 , further comprising:
wherein the user settings profile comprises game state data for the user selected video game; and
loading the user selected video game on the first virtual machine based on the game state data.
5 . The method of claim 1 , wherein the game play session setup request indicates a user selected video game; and
the method further comprises:
loading, on the second virtual machine, the user selected video game based on game state data.
6 . The method of claim 1 , further comprising:
creating a second peer-to-peer real-time communication connection between the user device and the second virtual machine.
7 . The method of claim 1 , further comprising:
instructing the virtual machine manager to deactivate the first virtual machine.
8 . The method of claim 1 , wherein the service level agreement is minimum settings or optimal settings to establish a session of gameplay.
9 . The method of claim 1 , wherein the different level of cloud computing resources of the updated service level agreement corresponds to a change in at least one of: number of compute processing units, number of graphics processing units, bandwidth, video bitrate, audio bitrate, ray tracing, geometry processing, vector graphics, shaders, texture quality, field of view, depth of field, lens flare, motion blur, anisotropy, gamma correction, color precision, NPC density, or Vsync.
10 . A non-transitory computer-readable medium, having instructions recorded thereon for virtual machine management in a cloud computing system, wherein execution of the instructions by control circuitry causes the control circuitry to:
receive, over a network connection, at an edge server of the cloud computing system, a game play session setup request from a user device;
retrieve, via the edge server, in response to the game play session setup request, a user settings profile, wherein the user settings profile comprises a service level agreement for session setup, wherein the service level agreement corresponds to a level of cloud computing resources available to the user device;
send a first hardware request to a virtual machine manager of the edge server, wherein the first hardware request is based on the service level agreement for session setup;
initialize, by the virtual machine manager of the edge server, a first virtual machine based on the first hardware request;
create, via the edge server, a first peer-to-peer real-time communication connection between the user device and the first virtual machine;
receive, at the edge server, an updated service level agreement, wherein the updated service level agreement corresponds to a different level of cloud computing resources available to the user device than the level corresponding to the service level agreement;
send a second hardware request to the virtual machine manager of the edge server, wherein the second hardware request is based on the updated service level agreement; and
initialize, by the virtual machine manager, a second virtual machine based on the second hardware request.
11 . The non-transitory computer-readable medium of claim 10 , wherein the game play session setup request indicates a user selected video game.
12 . The non-transitory computer-readable medium of claim 10 , wherein the updated service level agreement is received during a game play session.
13 . The non-transitory computer-readable medium of claim 11 , wherein:
the user settings profile comprises game state data for the user selected video game; and
execution of the instructions further causes the control circuitry to load the user selected video game on the first virtual machine based on the game state data.
14 . The non-transitory computer-readable medium of claim 10 , wherein the game play session setup request indicates a user selected video game, wherein execution of the instructions further causes the control circuitry to:
load, on the second virtual machine, the user selected video game based on game state data.
15 . The non-transitory computer-readable medium of claim 10 , wherein execution of the instructions further causes the control circuitry to:
create a second peer-to-peer real-time communication connection between the user device and the second virtual machine.
16 . The non-transitory computer-readable medium of claim 10 , wherein execution of the instructions further causes the control circuitry to:
instruct the virtual machine manager to deactivate the first virtual machine.
17 . The non-transitory computer-readable medium of claim 10 , wherein the service level agreement is minimum settings or optimal settings to establish a session of gameplay.
18 . An apparatus for virtual machine management in a cloud computing system, the apparatus comprising:
a processor configured to:
receive, over a network connection, at an edge server of the cloud computing system, a game play session setup request from a user device;
retrieve, via the edge server, in response to the game play session setup request, a user settings profile, wherein the user settings profile comprises a service level agreement for session setup, wherein the service level agreement corresponds to a level of cloud computing resources available to the user device;
send a first hardware request to a virtual machine manager of the edge server, wherein the first hardware request is based on the service level agreement for session setup;
initialize, by the virtual machine manager of the edge server, a first virtual machine based on the first hardware request;
create, via the edge server, a peer-to-peer real-time communication connection between the user device and the first virtual machine;
receive, at the edge server, an updated service level agreement, wherein the updated service level agreement corresponds to a different level of cloud computing resources available to the user device than the level corresponding to the service level agreement;
send a second hardware request to the virtual machine manager of the edge server, wherein the second hardware request is based on the updated service level agreement; and
initialize, by the virtual machine manager, a second virtual machine based on the second hardware request.