CN115006848A - Cloud game resource allocation method and device, computer equipment and storage medium - Google Patents
Cloud game resource allocation method and device, computer equipment and storage medium Download PDFInfo
- Publication number
- CN115006848A CN115006848A CN202210597036.7A CN202210597036A CN115006848A CN 115006848 A CN115006848 A CN 115006848A CN 202210597036 A CN202210597036 A CN 202210597036A CN 115006848 A CN115006848 A CN 115006848A
- Authority
- CN
- China
- Prior art keywords
- resource binding
- binding model
- candidate resource
- cloud game
- delay time
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 71
- 238000013468 resource allocation Methods 0.000 title claims abstract description 29
- 230000006870 function Effects 0.000 claims description 64
- 238000007621 cluster analysis Methods 0.000 claims description 37
- 238000004458 analytical method Methods 0.000 claims description 26
- 238000004590 computer program Methods 0.000 claims description 24
- 230000008569 process Effects 0.000 claims description 18
- 238000000605 extraction Methods 0.000 claims description 4
- 239000002699 waste material Substances 0.000 abstract description 7
- 230000000875 corresponding effect Effects 0.000 description 127
- 238000010586 diagram Methods 0.000 description 11
- 230000000694 effects Effects 0.000 description 10
- 238000004891 communication Methods 0.000 description 9
- 238000012545 processing Methods 0.000 description 9
- 238000009877 rendering Methods 0.000 description 7
- 238000012360 testing method Methods 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 239000000203 mixture Substances 0.000 description 4
- 238000012549 training Methods 0.000 description 4
- 239000003086 colorant Substances 0.000 description 3
- 239000012634 fragment Substances 0.000 description 3
- 238000013500 data storage Methods 0.000 description 2
- 238000005259 measurement Methods 0.000 description 2
- OKTJSMMVPCPJKN-UHFFFAOYSA-N Carbon Chemical compound [C] OKTJSMMVPCPJKN-UHFFFAOYSA-N 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 230000015572 biosynthetic process Effects 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 230000008571 general function Effects 0.000 description 1
- 229910021389 graphene Inorganic materials 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000003786 synthesis reaction Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
Classifications
-
- A—HUMAN NECESSITIES
- A63—SPORTS; GAMES; AMUSEMENTS
- A63F—CARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
- A63F13/00—Video games, i.e. games using an electronically generated display having two or more dimensions
- A63F13/70—Game security or game management aspects
- A63F13/77—Game security or game management aspects involving data related to game devices or game servers, e.g. configuration data, software version or amount of memory
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Multimedia (AREA)
- Business, Economics & Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- Processing Or Creating Images (AREA)
Abstract
The application relates to a cloud game resource allocation method, a cloud game resource allocation device, a computer device and a storage medium. The method comprises the following steps: determining a plurality of preset candidate resource binding models corresponding to the cloud games; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container; determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model; selecting a target resource binding model matched with the cloud game from a plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model; wherein a target container in the target resource binding model is used to run the cloud game; computing resources characterized by computing resource information bound to the target container for scheduled use while the cloud game is running. By adopting the method, the computing resource waste of cloud game resource allocation can be reduced.
Description
Technical Field
The present application relates to the field of cloud computing technologies, and in particular, to a cloud game resource allocation method and apparatus, a computer device, and a storage medium.
Background
With the development of cloud computing technology, cloud game technology has appeared, wherein cloud games are operated on a server side based on cloud computing, and the server compresses rendered game pictures and transmits the compressed game pictures to a client side through a network. For the user equipment, the cloud game can be operated only by basic video decompression capacity without any high-end processor and display card.
In the conventional technology, a computing resource of a server side is configured for a cloud game manually by a developer. However, when the computing resources are configured in this way, the configuration effect of the computing resources cannot be ensured, which may cause the waste of the computing resources.
Disclosure of Invention
In view of the foregoing, it is desirable to provide a cloud game resource allocation method, apparatus, computer device, computer readable storage medium and computer program product capable of reducing the waste of computing resources.
In a first aspect, the present application provides a cloud game resource allocation method. The method comprises the following steps:
determining a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container;
determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model;
selecting a target resource binding model matched with the cloud game from a plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model;
wherein a target container in the target resource binding model is used to run the cloud game; computing resources characterized by computing resource information bound to the target container for scheduled use while the cloud game is running.
In one embodiment, the selecting, from the plurality of candidate resource binding models, a target resource binding model matching the cloud game based on the completion delay time corresponding to each of the candidate resource binding models includes:
performing cluster analysis on the candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model to obtain a cluster analysis result;
and according to the clustering analysis result, selecting a target resource binding model matched with the cloud game from the candidate resource binding models.
In one embodiment, the performing, according to the completion delay time corresponding to each candidate resource binding model, cluster analysis on a plurality of candidate resource binding models to obtain a cluster analysis result includes:
respectively classifying each candidate resource binding model into a current cluster, and taking the corresponding completion delay time as a clustering center value of the current cluster;
merging the two current clusters with the closest cluster center values to obtain a new cluster;
calculating a cluster center value of the new cluster based on the completion delay time corresponding to each candidate resource binding model in the new cluster;
and taking the new cluster as a current cluster, returning to execute the step of combining two current clusters with the closest cluster center values to obtain a new cluster, and obtaining a cluster analysis result until the clustering is finished.
In one embodiment, the selecting, according to the cluster analysis result, a target resource binding model matching the cloud game from a plurality of candidate resource binding models includes:
determining a clustering center value according to the clustering analysis result;
determining an optimal model matching condition based on the cluster center value;
and determining the candidate resource binding model meeting the optimal model matching condition from the plurality of candidate resource binding models to obtain a target resource binding model.
In one embodiment, the method further comprises:
if the target resource binding model matched with the cloud game does not exist in the candidate resource binding models, calculating a new candidate resource binding model according to the candidate resource binding models, determining the completion delay time of the graphic library interface function corresponding to the new candidate resource binding model, returning to execute the completion delay time corresponding to each candidate resource binding model, and selecting the target resource binding model matched with the cloud game from the candidate resource binding models.
In one embodiment, the graphic library interface function is multiple; the determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model comprises:
for each candidate resource binding model, determining the completion delay time corresponding to each of a plurality of graphic library interface functions when the cloud game runs based on the candidate resource binding model, and obtaining a plurality of sub-completion delay times;
and determining the completion delay time corresponding to the candidate resource binding model according to the plurality of sub-completion delay times.
In one embodiment, the method further comprises:
running the cloud game according to the target resource binding model;
and in the running process of the cloud game, if the dynamic model adjustment condition is met, returning to the step of determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model and the subsequent steps so as to dynamically adjust the target resource binding model.
In a second aspect, the present application further provides a cloud game resource allocation apparatus. The device comprises:
the cloud game system comprises a determining module, a resource binding module and a resource binding module, wherein the determining module is used for determining a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container;
the extraction module is used for determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model;
the analysis module is used for selecting a target resource binding model matched with the cloud game from the candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model;
wherein a target container in the target resource binding model is used to run the cloud game; computing resources characterized by computing resource information bound to the target container for scheduled use while the cloud game is running.
In one embodiment, the analysis module is further configured to perform cluster analysis on the multiple candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model, so as to obtain a cluster analysis result; and according to the clustering analysis result, selecting a target resource binding model matched with the cloud game from the candidate resource binding models.
In one embodiment, the analysis module is further configured to assign each candidate resource binding model to a current class cluster, and use a corresponding completion delay time as a cluster center value of the current class cluster; merging the two current clusters with the closest cluster center values to obtain a new cluster; calculating a cluster center value of the new cluster based on the completion delay time corresponding to each candidate resource binding model in the new cluster; and taking the new cluster as a current cluster, returning to execute the step of combining two current clusters with the closest cluster center values to obtain a new cluster, and obtaining a cluster analysis result until the clustering is finished.
In one embodiment, the analysis module is further configured to determine a cluster center value according to the cluster analysis result; determining an optimal model matching condition based on the cluster center value; and determining the candidate resource binding model meeting the optimal model matching condition from the plurality of candidate resource binding models to obtain a target resource binding model.
In one embodiment, the analysis module is further configured to, if there is no target resource binding model matching the cloud game in the multiple candidate resource binding models, calculate a new candidate resource binding model according to the multiple candidate resource binding models, determine a completion delay time of a graphical library interface function corresponding to the new candidate resource binding model, return to execute the completion delay time corresponding to each candidate resource binding model, and select a target resource binding model matching the cloud game from the multiple candidate resource binding models.
In one embodiment, the graphic library interface function is multiple; the extraction module is further configured to determine, for each candidate resource binding model, completion delay times corresponding to a plurality of graphical library interface functions respectively when the cloud game runs based on the candidate resource binding model, so as to obtain a plurality of sub-completion delay times; and determining the completion delay time corresponding to the candidate resource binding model according to the plurality of sub-completion delay times.
In one embodiment, the analysis module is further configured to run the cloud game according to the target resource binding model; and in the running process of the cloud game, if the dynamic model adjustment condition is met, returning to the step of determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model and the subsequent steps so as to dynamically adjust the target resource binding model.
In a third aspect, the present application also provides a computer device. The computer device comprises a memory and a processor, wherein the memory stores a computer program, and the processor implements the steps of the method of the embodiments of the present application when executing the computer program.
In a fourth aspect, the present application further provides a computer-readable storage medium. The computer readable storage medium has stored thereon a computer program which, when executed by a processor, performs the steps of the method according to embodiments of the present application.
In a fifth aspect, the present application further provides a computer program product. The computer program product comprises a computer program which, when executed by a processor, performs the steps of the method according to embodiments of the present application.
The cloud game resource allocation method, the cloud game resource allocation device, the computer equipment, the storage medium and the computer program product determine a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container; determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model; selecting a target resource binding model matched with the cloud game from a plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model; the target container in the target resource binding model is used for running a cloud game; and the computing resources represented by the computing resource information bound with the target container are used for scheduling and using when the cloud game runs. By determining the completion delay time corresponding to the candidate resource binding model, the target resource binding model matched with the cloud game can be selected based on the objective measurement standard of the completion delay time of the graphical library interface function, and compared with a manual configuration mode of a developer, the reasonability and accuracy of computing resources are guaranteed, so that the waste of the computing resources is reduced to a certain extent.
Drawings
FIG. 1 is a diagram of an application environment of a cloud game resource allocation method according to an embodiment;
FIG. 2 is a flowchart illustrating a cloud game resource allocation method according to an embodiment;
FIG. 3 is an architecture diagram of a candidate resource binding model in one embodiment;
FIG. 4 is a diagram of computing resources, in one embodiment;
FIG. 5 is a diagram illustrating a process flow corresponding to a graphics library interface function in one embodiment;
FIG. 6 is a schematic diagram illustrating rendering of a cloud game screen in one embodiment;
FIG. 7 is a simplified flowchart of a cloud game resource allocation method according to an embodiment;
FIG. 8 is a block diagram of a cloud game resource allocation apparatus according to an embodiment;
FIG. 9 is a diagram showing an internal structure of a computer device in one embodiment;
fig. 10 is an internal structural view of a computer device in another embodiment.
Detailed Description
In order to make the objects, technical solutions and advantages of the present application more apparent, the present application is described in further detail below with reference to the accompanying drawings and embodiments. It should be understood that the specific embodiments described herein are merely illustrative of the present application and are not intended to limit the present application.
The cloud game resource allocation method provided by the embodiment of the application can be applied to the application environment shown in fig. 1. Wherein the terminal 102 communicates with the server 104 via a network. The data storage system may store data that the server 104 needs to process. The data storage system may be integrated on the server 104 or may be placed on the cloud or other network server. The server 104 may determine a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container; the server 104 may determine a completion delay time of the graphical library interface function corresponding to each candidate resource binding model; the server 104 may select a target resource binding model matching the cloud game from the plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model. It is to be appreciated that the server 104 can run a cloud game in accordance with a target resource binding model. It is understood that the terminal 102 may display the game screen when the cloud game runs accordingly. The terminal 102 may be, but not limited to, various personal computers, notebook computers, smart phones, tablet computers, internet of things devices and portable wearable devices, and the internet of things devices may be smart speakers, smart televisions, smart air conditioners, smart car-mounted devices, and the like. The portable wearable device can be a smart watch, a smart bracelet, a head-mounted device, and the like. The server 104 may be implemented as a stand-alone server or as a server cluster comprised of multiple servers.
In one embodiment, as shown in fig. 2, a cloud game resource allocation method is provided, and this embodiment is illustrated as applying the method to a server, it is to be understood that the method may also be applied to a system including a terminal and a server, and implemented through interaction between the terminal and the server. In this embodiment, the method includes the steps of:
step 202, determining a plurality of preset candidate resource binding models corresponding to the cloud game.
The candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container. It can be understood that the candidate resource binding model is essentially resource configuration information related to the running of the cloud game, and the server can run the cloud game using the corresponding resource according to the candidate resource binding model.
Specifically, the server may determine a target service type corresponding to the cloud game, and obtain a plurality of preset candidate resource binding models matched with the target service type. It can be understood that the cloud game provider provides cloud game services of a plurality of service types, and a plurality of candidate resource binding models can be preset under each service type. The server may determine a plurality of preset candidate resource binding models under the target traffic type. Wherein the traffic type may include at least one cloud game type of peer-to-peer game, game streaming, and progressive download.
In one embodiment, the computing resource information may include at least one of resource information such as information of a Central Processing Unit (CPU), information of a Graphics Processing Unit (GPU), and memory information. For example, each candidate resource binding model may include the number of containers, the number of cores of the CPU, and the memory size.
In one embodiment, the candidate resource binding model includes information for a plurality of containers and information for a plurality of cores of the CPU, and the core to which each container is bound. It will be appreciated that the binding of each container to a corresponding core is essentially in the form of a topology.
In one embodiment, as shown in FIG. 3, a system architecture diagram is provided. The framework comprises an application layer, an android container host machine layer and a hardware layer. The cloud game may be run based on the container. The Host (Host) provides computing resource support for the container, for example, CPU computing resources are provided to ensure the running of the cloud game. As can be seen from fig. 3, the operation of the cloud game depends on computing resources, and the method of the present application is a scheme for allocating resources to the cloud game, and provides reasonable and accurate computing resources for the operation of the cloud game by accurately and reasonably determining the target resource binding model matched with the cloud game.
In one embodiment, a block diagram of a hardware architecture is provided as shown in FIG. 4. The Central Processing Unit (CPU) is provided with 4 kernels, and the first graphic processor, the second graphic processor, the memory and the peripheral are connected with the CPU through a bus. When the server runs the cloud game, the target resource binding model determined by the method reasonably and accurately schedules the corresponding computing resource connected to the CPU through the bus and the computing resource of the CPU. It will be appreciated that a CPU is a processor with 4 cores and with three levels of cache. The CPU may also be a processor having other configurations. The first graphics processor and the second graphics processor may be provided by different graphics processor vendors.
And step 204, determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model.
Wherein the completion delay time is a time required to execute a graphics library interface function in the course of running the cloud game. It can be understood that there is a difference between each candidate resource binding model, and there is a difference in the completion delay time obtained by running the cloud game using each candidate resource binding model.
Specifically, the server may run the cloud game according to each candidate resource binding model, and count the completion delay time of the graphic library interface function in the process of running the cloud game. The graphic library interface function is an interface function of an open graphics library (open gl).
In one embodiment, the server may derive the completion delay time by counting the number of clock cycles required to execute the graphics library interface function.
In one embodiment, the server may count the completion delay time of the graphical library interface function using a recurring event counter. It will be appreciated that the server may read the value in the loop event counter at the beginning of execution of the graphics library interface function and read the value in the loop event counter again at the end of execution. The server can obtain the completion delay time of the graphic library interface function by calculating the difference between the two read values.
In one embodiment, the server may determine accelerator hardware corresponding to the graphics library, and extract a key delay parameter corresponding to a graphics library interface function from the accelerator hardware during the process of running the cloud game according to each candidate resource binding model, so as to calculate the completion delay time.
In one embodiment, the graphics library interface function may include at least one of gl _ blend, gl _ fill _ face, gl _ depth _ test, gl _ diter, and the like. Where gl _ blend mixes the source and target colors in some way to generate a special effect. The gl _ cut _ face specifies the polygon facet of the retire operation. The gl _ depth _ test is used to start the function of updating the depth buffer. gl _ diter increases the number of available colors by dithering of color values at the expense of resolution.
In one embodiment, the server may run the cloud game according to the target resource binding model determined by the method, and execute a processing flow corresponding to the graphics library interface function in the process of running the cloud game to obtain pixel point information of the game picture, and store the pixel point information in the frame buffer area to complete real-time rendering of the game picture. The processing flow corresponding to the interface function of the graphic library shown in fig. 5. It can be understood that, firstly, information of the vertex, coordinates, indexes, colors, and the like is set through a graphics library (OpenGL ES) interface, and the information is transmitted to a vertex shader (vertex shader) to obtain vertex coordinates. The vertex buffer object (vertex buffer object) is used to buffer information of the vertex. And (3) carrying out primitive assembly (private assembly) on the vertex coordinates to construct virtual points, lines and triangles, and then carrying out rasterization (raterizer). The rasterized result is passed into a fragment shader (fragment shader) for final color computation. And carrying out a series of processing including transparency test (alpha test), Depth/template test (Depth/Stencil test), mixing (Blend) and shaking (gather) on the pixel points output by the fragment shader to obtain final pixel point information, and storing the final pixel point information into a frame buffer (frame buffer).
In one embodiment, as shown in FIG. 6, a schematic illustration of cloud game screen rendering is provided. The server can run the cloud game according to the target resource binding model determined by the method, and combines the principle of cloud game picture rendering to realize the picture layer synthesis and display sending process so as to finish the rendering of the game picture. The principle of cloud game picture rendering is explained as follows: the service of the display composition system (surfacemaker) describes the display screen of the system, i.e. the hardware frame buffer of the system, by means of a buffer output management object (graphpane). The graphparplane object corresponds to a display hardware object (DisplayHardware) through which a hardware frame buffer of the system is accessible. The data exchange interface (EGL) is an interface between a graphics library and a native window system, and is used for exchanging rendering data with windows directly of each platform. Since the graphics library (OpenGL ES) is a general function library, it needs to go through the local intermediary of framebuffermationwindows (local windows) for normal use. A software-implemented graphics library (libalog) is a set of dynamic graphics libraries implemented by software methods in android. A hardware-implemented graphics library (libhgl) is a hardware-implemented graphics library provided by graphics processor vendors. The android system provides a graceo module (frame buffer access module) at the hardware abstraction layer, encapsulating all operations on the hardware frame buffer. The underlying operating system (Linux) kernel provides a unified display driver, a device node (/ dev/graphics/fb or/dev/fb), such as a device node corresponding to the display screen (fb 0).
And step 206, selecting a target resource binding model matched with the cloud game from the multiple candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model.
And the target container in the target resource binding model is used for running the cloud game. And the computing resources represented by the computing resource information bound with the target container are used for scheduling and using when the cloud game runs.
Specifically, the server may select a target resource binding model matching the cloud game from the plurality of candidate resource binding models by comparing the completion delay time corresponding to each candidate resource binding model.
In one embodiment, the server may determine a candidate resource binding model with a corresponding completion delay time at a low level, to obtain a target resource binding model. It should be noted that the smaller the corresponding completion delay time is, the better the cloud game is operated according to the candidate resource binding model. It is to be appreciated that the server can determine the candidate resource binding model with the least completion delay time as the target resource binding model.
In one embodiment, the server may obtain the target resource binding model by comparing candidate resource binding models whose corresponding completion delay times are in the median level. It can be understood that too long completion delay time can lead to poor cloud game running effect, too short completion delay time can lead to higher cost of computing resources, and the target resource binding model of meso position can give consideration to running effect and cost, promotes the price/performance ratio. That is, the server may select the target resource binding model from the candidate resource binding models whose completion delay times are located in the preset median region.
The cloud game resource allocation method determines a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container; determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model; selecting a target resource binding model matched with the cloud game from a plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model; the target container in the target resource binding model is used for running a cloud game; and the computing resources represented by the computing resource information bound with the target container are used for scheduling and using when the cloud game runs. By determining the completion delay time corresponding to the candidate resource binding model, the target resource binding model matched with the cloud game can be selected based on the objective measurement standard of the completion delay time of the graphical library interface function, and compared with a manual configuration mode of a developer, the reasonability and accuracy of computing resources are guaranteed, so that the waste of the computing resources is reduced to a certain extent.
In one embodiment, selecting a target resource binding model matching the cloud game from the plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model comprises: performing cluster analysis on the candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model to obtain a cluster analysis result; and selecting a target resource binding model matched with the cloud games from the candidate resource binding models according to the clustering analysis result.
Specifically, the server may determine the similarity between the candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model. The server can aggregate the candidate resource binding models with higher similarity into a cluster to obtain a cluster analysis result. The server can determine a candidate resource binding model with the median completion delay time from a plurality of candidate resource binding models according to the clustering analysis result to obtain a target resource binding model matched with the cloud game. It is to be understood that the server may use the completion delay time as an evaluation criterion for evaluating the similarity of the candidate binding models.
In the embodiment, the clustering analysis is performed on the candidate resource binding models to obtain the clustering analysis result, and the target resource binding model matched with the cloud game is selected according to the clustering analysis result, so that the configuration effect of the computing resources can be ensured, the waste of the computing resources is reduced, and the configured resources have higher cost performance.
In one embodiment, performing cluster analysis on the plurality of candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model, and obtaining a cluster analysis result includes: classifying each candidate resource binding model into a current cluster respectively, and taking the corresponding completion delay time as a clustering center value of the current cluster; merging two current clusters with the closest cluster center values to obtain a new cluster; calculating a clustering center value of the new cluster based on the completion delay time corresponding to each candidate resource binding model in the new cluster; and taking the new cluster as the current cluster, and returning to the step of combining two current clusters with the closest cluster center values to obtain a new cluster until the clustering is finished to obtain a cluster analysis result.
Wherein the current class cluster is a currently existing class cluster. It can be understood that the current class cluster included in the cluster analysis result is the class cluster that finally exists after the clustering is completed.
Specifically, the server may classify each candidate resource binding model into a current cluster, and use the corresponding completion delay time as a cluster center value of the current cluster. The server can merge two current clusters with the closest cluster center values to obtain a new cluster. The server can determine the median of the completion delay time corresponding to each resource binding model in the new cluster to obtain the cluster center value of the new cluster. The server can take the new cluster as the current cluster, and returns to the step of combining two current clusters with the closest cluster center values to obtain a new cluster until the clustering is finished, and a cluster analysis result is obtained.
In one embodiment, the server may determine the cluster center values of two current clusters corresponding to the new cluster, and calculate an average value of the two cluster center values to obtain the cluster center value of the new cluster.
In an embodiment, the server may determine an average value of the completion delay time corresponding to each candidate resource binding model in the new cluster, to obtain a cluster center value of the new cluster. It will be appreciated that the cluster center value is used to characterize the center of the corresponding cluster. The cluster center value is substantially the completion delay time corresponding to the cluster center. The median and mean values of the completion delay times can both characterize the cluster-like center.
In an embodiment, if two current clusters with the closest cluster center values do not satisfy the cluster similarity condition, the server may stop clustering to obtain a cluster analysis result. It is understood that the cluster similarity condition is a condition for determining whether two current cluster classes are similar. The cluster similarity condition may be that the difference between the cluster center values of the two current clusters is not greater than the cluster similarity threshold. The cluster similarity condition may be that the candidate resource binding models corresponding to the cluster center values of the two current clusters have similar structures, that is, the information of the containers in the candidate resource binding models and the bound computing resource information are not much different.
In one embodiment, if there are no two current clusters, the server may stop clustering to obtain a cluster analysis result.
In the embodiment, a new cluster is obtained by combining two current clusters with the closest cluster center values, and the cluster center value of the new cluster is calculated based on the completion delay time corresponding to each candidate resource binding model in the new cluster; and taking the new cluster as the current cluster, returning to the step of executing the step of combining two current clusters with the closest cluster center values to obtain a new cluster, and obtaining a cluster analysis result until the clustering is finished, so that a target resource binding model matched with the cloud game can be selected subsequently according to the cluster analysis result, the configuration effect of the computing resources is ensured, the waste of the computing resources is reduced, and the configured resources have higher cost performance.
In one embodiment, selecting a target resource binding model matching the cloud game from the plurality of candidate resource binding models according to the clustering analysis result comprises: determining a clustering center value according to a clustering analysis result; determining an optimal model matching condition based on the clustering center value; and determining the candidate resource binding model meeting the optimal model matching condition from the plurality of candidate resource binding models to obtain the target resource binding model.
In particular, the cluster analysis result may include at least one current class cluster. The current cluster included in the cluster analysis result is the cluster which finally exists after the clustering is finished. The server may determine model center values for the plurality of candidate resource binding models based on the cluster center value of the current class cluster in the cluster analysis results. For example, the server may use the cluster center value at the middle position as the model center value, and determine the optimal model matching condition according to the model center value. The best match condition may be the candidate resource binding model whose corresponding completion delay time is closest to the cluster center value. The server can determine a candidate resource binding model with the corresponding completion delay time closest to the model center value from a plurality of candidate resource binding models to obtain a target resource binding model.
In one embodiment, the cluster analysis results may include a plurality of current class clusters. The server can determine the model center value by comparing the cluster center values of a plurality of current clusters. It is understood that if the operation effect is prioritized compared to the cost, the best matching condition may be the candidate resource binding model whose corresponding completion delay time is closest and smaller than the cluster center value. If the cost is prioritized over the operation effect, the best matching condition may be the candidate resource binding model whose corresponding completion delay time is closest and greater than the cluster center value.
In one embodiment, the server may determine cluster center values of a plurality of current clusters in the cluster analysis result, and obtain the model center value by calculating an average value of the plurality of cluster center values. It is to be appreciated that the model center value is used to characterize a center case of the plurality of candidate resource binding models. The model center value substantially meets the running requirement of the cloud game and takes the resource cost into account, and the completion delay time corresponds to the target resource binding model.
In this embodiment, an optimal model matching condition is obtained based on the determined clustering center value, so that a candidate resource binding model satisfying the optimal model matching condition is determined from a plurality of candidate resource binding models, a target resource binding model is obtained, the resource configuration effect is ensured, and the configured resources have higher cost performance.
In one embodiment, the method further comprises: if the target resource binding model matched with the cloud game does not exist in the candidate resource binding models, calculating a new candidate resource binding model according to the candidate resource binding models, determining the completion delay time of the graphic library interface function corresponding to the new candidate resource binding model, returning to execute the completion delay time corresponding to each candidate resource binding model, and selecting the target resource binding model matched with the cloud game from the candidate resource binding models.
Specifically, if the difference between the completion delay time closest to the model center value and the model center value exceeds the difference range specified in the optimal model matching condition, the server may determine that a target resource binding model matching the cloud game does not exist in the plurality of candidate resource binding models. It is to be understood that the best model matching condition may be the candidate resource binding model whose corresponding completion delay time is closest to and within the range of the difference value. The server can calculate a new candidate resource binding model based on the candidate resource binding models according to the model center value, determine the completion delay time of the graphic library interface function corresponding to the new candidate resource binding model, return to execute the completion delay time corresponding to each candidate resource binding model, and select a target resource binding model matched with the cloud game from the candidate resource binding models. It can be understood that, since a new candidate resource binding model is calculated, model center values of all candidate resource binding models are changed, and the server can continue to iterate until a target resource binding model is determined.
In one embodiment, if the completion delay time corresponding to the new candidate resource binding model is consistent with the model center value, the server may directly use the new candidate resource binding model as the target resource binding model.
In one embodiment, the server may determine information of containers and bound computing resources in a plurality of candidate resource binding models to derive a new candidate resource binding model that can reach the model center value.
In this embodiment, if a target resource binding model matching the cloud game does not exist in the plurality of candidate resource binding models, a new candidate resource binding model is calculated, the completion delay time of the graphic library interface function corresponding to the new candidate resource binding model is determined, and the completion delay time corresponding to each candidate resource binding model is returned to be executed to select the target resource binding model, so that the cost performance of the allocated resource is improved.
In one embodiment, the graphics library interface function is plural; determining the completion delay time of the graph library interface function corresponding to each candidate resource binding model comprises: for each candidate resource binding model, determining the completion delay time corresponding to each of a plurality of graphic library interface functions when the cloud game runs based on the candidate resource binding model, and obtaining a plurality of sub-completion delay times; and determining the completion delay time corresponding to the candidate resource binding model according to the plurality of sub-completion delay times.
Specifically, the server may determine, for each candidate resource binding model, completion delay times corresponding to the multiple graphic library interface functions respectively when the cloud game runs based on the candidate resource binding model, to obtain multiple sub-completion delay times. It is understood that the sub-completion delay time is the completion delay time corresponding to each graphical interface function. The server may calculate an average of the plurality of sub-completion delay times to obtain a completion delay time corresponding to the candidate resource binding model.
In one embodiment, the server may determine GPUs provided by different GPU providers to extract the completion delay time corresponding to the GPU provided by each GPU provider to execute the graphics library interface function. It can be appreciated that there are differences in the GPUs provided by the GPU vendors. In the running process of the cloud game, the container uses the CPU, the CPU sends out a GPU instruction, and the GPU completes the calculation of the interface function of the graphic library. By pertinently extracting the completion delay time corresponding to the GPU provided by each GPU provider, the target resource binding model can be more accurately selected.
In one embodiment, the server may calculate a square root of an average of the plurality of sub-completion delay times to obtain a completion delay time corresponding to the candidate resource binding model. The server may also calculate a weighted average of the plurality of sub-completion delay times to obtain a completion delay time corresponding to the candidate resource binding model. It will be appreciated that the weight of each sub-completion delay time is positively correlated to the importance of the graphics library interface function.
In the embodiment, the completion delay time corresponding to the multiple graphic library interface functions is obtained by determining the completion delay time corresponding to the multiple graphic library interface functions when the cloud game runs based on the candidate resource binding model, and the completion delay time corresponding to the candidate resource binding model is determined according to the multiple sub completion delay times, so that the target resource binding model can be selected based on the completion delay time, and the cost performance of the configured resources is improved.
In one embodiment, the method further comprises: running the cloud game according to the target resource binding model; and in the running process of the cloud game, if the dynamic model adjustment condition is met, returning to the step of executing the completion delay time and the subsequent steps of determining the graphic library interface function corresponding to each candidate resource binding model so as to dynamically adjust the target resource binding model.
Wherein the model dynamic adjustment condition is a condition for triggering dynamic adjustment of the target resource binding model.
Specifically, the server may run the cloud game according to the target resource binding model. And in the running process of the cloud game, determining the completion delay time of the graphic library interface function corresponding to the target resource binding model. If the completion delay time corresponding to the target resource binding model is changed or the change exceeds a preset change range, the server can judge that the model dynamic adjustment condition is met, and return to the step of executing the completion delay time and the subsequent steps of determining the graphic library interface function corresponding to each candidate resource binding model to dynamically adjust the target resource binding model, so that the target resource binding model matched with the cloud game is determined again.
In one embodiment, if the cloud game operating environment changes, the server may determine that the model dynamic adjustment condition is satisfied, and determine a completion delay time corresponding to each candidate resource binding model based on the current cloud game operating environment. For example, if a new play method occurs in the cloud game or the operation parameters of the cloud game change, the server may determine that the model dynamic adjustment condition is satisfied. It can be understood that when the cloud game environment changes, the completion delay time corresponding to the target resource binding model also changes. For example, the user a plays a cloud game in the current time period, and if the completion delay time corresponding to the target resource binding model is changed, the server may determine the target resource binding model again, where the target resource binding model may include 12 containers, 8 cores, and 4TB (terabyte) memory. The user B plays the cloud game in the next time period, and the server may refer to the target resource binding model determined at the time of the user a, for example, the cloud game may be executed in 12 containers, 8 cores, and 4TB memory in the initial stage.
In this embodiment, in the running process of the cloud game, if the dynamic model adjustment condition is satisfied, the step of determining the completion delay time of the graphical library interface function corresponding to each candidate resource binding model and subsequent steps are returned to dynamically adjust the target resource binding model, so that the target resource binding model can be accurately determined, the effect of resource allocation is further ensured, and the cost performance of the allocated resources is improved.
In one embodiment, a simplified flowchart of a cloud game resource allocation method is provided as shown in fig. 7. The method comprises the following steps:
s702, determining a target service type corresponding to the cloud game, and obtaining a plurality of preset candidate resource binding models matched with the target service type.
Specifically, the server is provided with a model library for storing the resource binding model, the server can determine a target service type corresponding to the cloud game, and determine a plurality of preset candidate resource binding models matched with the target service type from the model library to obtain a plurality of candidate resource binding models corresponding to the cloud game. It is to be appreciated that cloud gaming providers may provide cloud gaming services of a variety of business types. The server can determine a target resource binding model matched with the cloud game from a theoretical level in a training stage. Each candidate resource binding model is essentially an attempt to determine a target resource binding model.
S704, determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model.
Specifically, in the training phase, the server may extract, for each candidate resource binding model, the completion delay time of the plurality of graphics library interface functions to obtain a plurality of sub-completion delay times corresponding to each candidate resource binding model, so as to determine the completion delay time corresponding to each candidate resource binding model.
S706, selecting a target resource binding model from the candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model.
Specifically, in the training phase, the server may select, based on the completion delay time corresponding to each candidate resource binding model, a target resource binding model whose corresponding completion delay time is in the median. It can be understood that the subsequent target resource binding model is to be put into use on a large scale and needs to be more adaptive.
And S708, operating the cloud game under the target service type according to the target resource binding model.
Specifically, in the running phase, the server may run the cloud game under the target business type according to the target resource binding model.
And S710, determining the completion delay time of the graphic library interface function corresponding to the target resource binding model in the running process of the cloud game.
Specifically, in the running process of the cloud game, the server may continuously collect the completion delay time of the graphic library interface function corresponding to the target resource binding model.
S712, if the currently determined completion delay time is changed from the previously determined completion delay time, dynamically adjusting the target resource binding model.
Specifically, if the currently determined completion delay time is changed compared with the previously determined completion delay time, the server may determine the completion delay time corresponding to the candidate resource binding model except the target resource binding model, perform cluster analysis according to the completion delay time corresponding to each currently determined resource binding model, and re-determine the target resource binding model.
In one embodiment, the operational stages may include a preliminary operational stage and a scale operational stage. And in the initial operation stage, allowing the cloud game object to determine a target resource binding model by itself. For example, the cloud game object determines the information of the container of the target resource binding model and the corresponding kernel parameter information of the CPU by itself. The kernel parameter information may include parameters such as an occupied Memory size, an affinity of the kernel, and a Numa (Non Uniform Memory Access) structure of the kernel. It is understood that a cloud gaming object is an object that applies for a cloud gaming service of a target business type from a cloud gaming provider. The cloud game object can also directly adopt a target resource binding model obtained in a training stage. The server can take the target resource binding model determined by the cloud game object as a new candidate resource binding model so as to re-determine the target resource binding model matched with the cloud game. In the scale operation stage, the server can operate the cloud game according to the target resource binding model, and continuously determine the completion delay time corresponding to the target resource binding model. And when the delay time is changed, dynamically adjusting the target resource binding model. For example, the server may determine a new target resource binding model again when running the cloud game, and replace the new target resource binding model to run the cloud game when the system is not busy, so that the new target resource binding model is invisible to the player. It can be understood that the server may also continuously determine the target resource binding models of different services at the cloud game running stage, and change the target resource binding models when the cloud game providers apply for a small amount of cloud game services and the services are not busy. For example, when the player A operates the cloud game, a new target resource binding model is determined, and when the player B operates the cloud game in the next time period, the target resource binding model is replaced.
It should be understood that, although the steps in the flowcharts related to the embodiments described above are shown in sequence as indicated by the arrows, the steps are not necessarily performed in sequence as indicated by the arrows. The steps are not performed in the exact order shown and described, and may be performed in other orders, unless explicitly stated otherwise. Moreover, at least a part of the steps in the flowcharts related to the embodiments described above may include multiple steps or multiple stages, which are not necessarily performed at the same time, but may be performed at different times, and the execution order of the steps or stages is not necessarily sequential, but may be rotated or alternated with other steps or at least a part of the steps or stages in other steps.
Based on the same inventive concept, the embodiment of the application also provides a cloud game resource allocation device for realizing the cloud game resource allocation method. The implementation scheme for solving the problem provided by the device is similar to the implementation scheme described in the above method, so specific limitations in one or more embodiments of the cloud game resource allocation device provided below may refer to the limitations in the above cloud game resource allocation method, and details are not described here.
In one embodiment, as shown in fig. 8, there is provided a cloud game resource allocation apparatus 800, including: a determination module 802, an extraction module 804, and an analysis module 806, wherein:
a determining module 802, configured to determine a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container;
an extracting module 804, configured to determine a completion delay time of a graphics library interface function corresponding to each candidate resource binding model;
an analysis module 806, configured to select, based on the completion delay time corresponding to each of the candidate resource binding models, a target resource binding model that matches the cloud game from the plurality of candidate resource binding models;
wherein a target container in the target resource binding model is used to run the cloud game; computing resources characterized by computing resource information bound to the target container for scheduled use while the cloud game is running.
In an embodiment, the analyzing module 806 is further configured to perform cluster analysis on the multiple candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model, so as to obtain a cluster analysis result; and selecting a target resource binding model matched with the cloud game from the candidate resource binding models according to the clustering analysis result.
In an embodiment, the analyzing module 806 is further configured to classify each candidate resource binding model into a current cluster, and use the corresponding completion delay time as a cluster center value of the current cluster; merging two current clusters with the closest cluster center values to obtain a new cluster; calculating a clustering center value of the new cluster based on the completion delay time corresponding to each candidate resource binding model in the new cluster; and taking the new cluster as the current cluster, and returning to the step of combining two current clusters with the closest cluster center values to obtain a new cluster until the clustering is finished to obtain a cluster analysis result.
In an embodiment, the analyzing module 806 is further configured to determine a cluster center value according to the cluster analysis result; determining an optimal model matching condition based on the clustering center value; and determining the candidate resource binding model meeting the optimal model matching condition from the plurality of candidate resource binding models to obtain the target resource binding model.
In an embodiment, the analysis module 806 is further configured to, if there is no target resource binding model matching the cloud game in the multiple candidate resource binding models, calculate a new candidate resource binding model according to the multiple candidate resource binding models, determine a completion delay time of the gui interface function corresponding to the new candidate resource binding model, return to execute the completion delay time corresponding to each candidate resource binding model, and select a target resource binding model matching the cloud game from the multiple candidate resource binding models.
In one embodiment, the graphics library interface function is plural; the extracting module 804 is further configured to determine, for each candidate resource binding model, completion delay times respectively corresponding to a plurality of graphic library interface functions when the cloud game runs based on the candidate resource binding model, so as to obtain a plurality of sub-completion delay times; and determining the completion delay time corresponding to the candidate resource binding model according to the plurality of sub-completion delay times.
In one embodiment, the analysis module 806 is further configured to run a cloud game according to the target resource binding model; and in the running process of the cloud game, if the dynamic model adjustment condition is met, returning to the step of executing the completion delay time of the graphic library interface function corresponding to each candidate resource binding model and the subsequent steps so as to dynamically adjust the target resource binding model.
All or part of the modules in the cloud game resource allocation device can be realized by software, hardware and a combination thereof. The modules can be embedded in a hardware form or independent from a processor in the computer device, and can also be stored in a memory in the computer device in a software form, so that the processor can call and execute operations corresponding to the modules.
In one embodiment, a computer device is provided, which may be a server, and the internal structure thereof may be as shown in fig. 9. The computer device includes a processor, a memory, an Input/Output interface (I/O for short), and a communication interface. The processor, the memory and the input/output interface are connected through a system bus, and the communication interface is connected to the system bus through the input/output interface. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device includes a non-volatile storage medium and an internal memory. The non-volatile storage medium stores an operating system, a computer program, and a database. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The database of the computer device is used to store a resource binding model. The input/output interface of the computer device is used for exchanging information between the processor and an external device. The communication interface of the computer device is used for connecting and communicating with an external terminal through a network. The computer program is executed by a processor to implement a cloud game resource allocation method.
In one embodiment, a computer device is provided, which may be a terminal, and its internal structure diagram may be as shown in fig. 10. The computer apparatus includes a processor, a memory, an input/output interface, a communication interface, a display unit, and an input device. The processor, the memory and the input/output interface are connected through a system bus, and the communication interface, the display unit and the input device are connected to the system bus through the input/output interface. Wherein the processor of the computer device is configured to provide computing and control capabilities. The memory of the computer device comprises a nonvolatile storage medium and an internal memory. The non-volatile storage medium stores an operating system and a computer program. The internal memory provides an environment for the operation of an operating system and computer programs in the non-volatile storage medium. The input/output interface of the computer device is used for exchanging information between the processor and an external device. The communication interface of the computer device is used for carrying out wired or wireless communication with an external terminal, and the wireless communication can be realized through WIFI, a mobile cellular network, NFC (near field communication) or other technologies. The computer program is executed by a processor to implement a cloud game resource allocation method. The display unit of the computer equipment is used for forming a visual and visible picture, and can be a display screen, a projection device or a virtual reality imaging device, the display screen can be a liquid crystal display screen or an electronic ink display screen, the input device of the computer equipment can be a touch layer covered on the display screen, a key, a track ball or a touch pad arranged on the shell of the computer equipment, and can also be an external keyboard, a touch pad or a mouse and the like.
Those skilled in the art will appreciate that the configurations shown in fig. 9 and 10 are merely block diagrams of some configurations relevant to the present disclosure, and do not constitute a limitation on the computing devices to which the present disclosure may be applied, and that a particular computing device may include more or less components than those shown, or combine certain components, or have a different arrangement of components.
In one embodiment, a computer device is provided, comprising a memory and a processor, the memory having stored therein a computer program, the processor implementing the steps of the above-described method embodiments when executing the computer program.
In an embodiment, a computer-readable storage medium is provided, on which a computer program is stored, which computer program, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
In an embodiment, a computer program product is provided, comprising a computer program which, when being executed by a processor, carries out the steps of the above-mentioned method embodiments.
It should be noted that, the user information (including but not limited to user equipment information, user personal information, etc.) and data (including but not limited to data for analysis, stored data, displayed data, etc.) referred to in the present application are information and data authorized by the user or sufficiently authorized by each party, and the collection, use and processing of the related data need to comply with the relevant laws and regulations and standards of the relevant country and region.
It will be understood by those skilled in the art that all or part of the processes of the methods of the embodiments described above can be implemented by hardware instructions of a computer program, which can be stored in a non-volatile computer-readable storage medium, and when executed, can include the processes of the embodiments of the methods described above. Any reference to memory, database, or other medium used in the embodiments provided herein may include at least one of non-volatile and volatile memory. The nonvolatile Memory may include Read-Only Memory (ROM), magnetic tape, floppy disk, flash Memory, optical Memory, high-density embedded nonvolatile Memory, resistive Random Access Memory (ReRAM), Magnetic Random Access Memory (MRAM), Ferroelectric Random Access Memory (FRAM), Phase Change Memory (PCM), graphene Memory, and the like. Volatile Memory can include Random Access Memory (RAM), external cache Memory, and the like. By way of illustration and not limitation, RAM can take many forms, such as Static Random Access Memory (SRAM) or Dynamic Random Access Memory (DRAM), for example. The databases referred to in various embodiments provided herein may include at least one of relational and non-relational databases. The non-relational database may include, but is not limited to, a block chain based distributed database, and the like. The processors referred to in the embodiments provided herein may be general purpose processors, central processing units, graphics processors, digital signal processors, programmable logic devices, quantum computing based data processing logic devices, etc., without limitation.
The technical features of the above embodiments can be arbitrarily combined, and for the sake of brevity, all possible combinations of the technical features in the above embodiments are not described, but should be considered as the scope of the present specification as long as there is no contradiction between the combinations of the technical features.
The above-mentioned embodiments only express several embodiments of the present application, and the description thereof is more specific and detailed, but not construed as limiting the scope of the present application. It should be noted that, for a person skilled in the art, several variations and modifications can be made without departing from the concept of the present application, which falls within the scope of protection of the present application. Therefore, the protection scope of the present application shall be subject to the appended claims.
Claims (10)
1. A cloud game resource allocation method, the method comprising:
determining a plurality of preset candidate resource binding models corresponding to the cloud games; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container;
determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model;
selecting a target resource binding model matched with the cloud game from a plurality of candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model;
wherein a target container in the target resource binding model is used to run the cloud game; computing resources characterized by computing resource information bound to the target container for scheduled use while the cloud game is running.
2. The method of claim 1, wherein selecting a target resource binding model from the plurality of candidate resource binding models that matches the cloud game based on the completion delay time corresponding to each of the candidate resource binding models comprises:
performing cluster analysis on the candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model to obtain a cluster analysis result;
and according to the clustering analysis result, selecting a target resource binding model matched with the cloud game from the candidate resource binding models.
3. The method of claim 2, wherein performing cluster analysis on the plurality of candidate resource binding models according to the completion delay time corresponding to each candidate resource binding model to obtain a cluster analysis result comprises:
respectively classifying each candidate resource binding model into a current cluster, and taking the corresponding completion delay time as a clustering center value of the current cluster;
merging the two current clusters with the closest cluster center values to obtain a new cluster;
calculating a cluster center value of the new cluster based on the completion delay time corresponding to each candidate resource binding model in the new cluster;
and taking the new cluster as a current cluster, returning to execute the step of combining two current clusters with the closest cluster center values to obtain a new cluster until the clustering is finished, and obtaining a clustering analysis result.
4. The method of claim 2, wherein selecting a target resource binding model from the plurality of candidate resource binding models that matches the cloud game according to the cluster analysis result comprises:
determining a clustering center value according to the clustering analysis result;
determining an optimal model matching condition based on the cluster center value;
and determining the candidate resource binding model meeting the optimal model matching condition from the plurality of candidate resource binding models to obtain a target resource binding model.
5. The method of claim 1, further comprising:
if the target resource binding model matched with the cloud game does not exist in the candidate resource binding models, calculating a new candidate resource binding model according to the candidate resource binding models, determining the completion delay time of the graphic library interface function corresponding to the new candidate resource binding model, returning to execute the completion delay time corresponding to each candidate resource binding model, and selecting the target resource binding model matched with the cloud game from the candidate resource binding models.
6. The method of claim 1, wherein the graphics library interface function is plural; the determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model comprises:
for each candidate resource binding model, determining the completion delay time corresponding to each of a plurality of graphic library interface functions when the cloud game runs based on the candidate resource binding model, and obtaining a plurality of sub-completion delay times;
and determining the completion delay time corresponding to the candidate resource binding model according to the plurality of sub-completion delay times.
7. The method of any one of claims 1 to 6, further comprising:
running the cloud game according to the target resource binding model;
and in the running process of the cloud game, if the dynamic model adjustment condition is met, returning to the step of determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model and the subsequent steps so as to dynamically adjust the target resource binding model.
8. An apparatus for allocating cloud game resources, the apparatus comprising:
the cloud game system comprises a determining module, a resource binding module and a resource binding module, wherein the determining module is used for determining a plurality of preset candidate resource binding models corresponding to the cloud game; the candidate resource binding model comprises information of a container for running the cloud game and computing resource information bound with the container;
the extraction module is used for determining the completion delay time of the graphic library interface function corresponding to each candidate resource binding model;
the analysis module is used for selecting a target resource binding model matched with the cloud game from the candidate resource binding models based on the completion delay time corresponding to each candidate resource binding model;
wherein a target container in the target resource binding model is used to run the cloud game; computing resources characterized by computing resource information bound to the target container for scheduled use while the cloud game is running.
9. A computer device comprising a memory and a processor, the memory storing a computer program, characterized in that the processor, when executing the computer program, implements the steps of the method of any of claims 1 to 7.
10. A computer-readable storage medium, on which a computer program is stored, which, when being executed by a processor, carries out the steps of the method of any one of claims 1 to 7.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210597036.7A CN115006848A (en) | 2022-05-30 | 2022-05-30 | Cloud game resource allocation method and device, computer equipment and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210597036.7A CN115006848A (en) | 2022-05-30 | 2022-05-30 | Cloud game resource allocation method and device, computer equipment and storage medium |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115006848A true CN115006848A (en) | 2022-09-06 |
Family
ID=83070331
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210597036.7A Pending CN115006848A (en) | 2022-05-30 | 2022-05-30 | Cloud game resource allocation method and device, computer equipment and storage medium |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115006848A (en) |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110433496A (en) * | 2019-08-14 | 2019-11-12 | 咪咕互动娱乐有限公司 | Cloud game resource allocation method, electronic device and storage medium |
CN111450524A (en) * | 2020-04-01 | 2020-07-28 | 网易(杭州)网络有限公司 | Information processing method and device in cloud game, cloud game server and medium |
CN111729293A (en) * | 2020-08-28 | 2020-10-02 | 腾讯科技(深圳)有限公司 | Data processing method, device and storage medium |
CN111882626A (en) * | 2020-08-06 | 2020-11-03 | 腾讯科技(深圳)有限公司 | Image processing method, apparatus, server and medium |
CN112184872A (en) * | 2020-10-17 | 2021-01-05 | 蔡娟 | Game rendering optimization method based on big data and cloud computing center |
CN113521753A (en) * | 2021-07-21 | 2021-10-22 | 咪咕互动娱乐有限公司 | System resource adjusting method, device, server and storage medium |
CN113893525A (en) * | 2020-07-06 | 2022-01-07 | 北京字节跳动网络技术有限公司 | Cloud game running method and device, electronic equipment and computer readable medium |
-
2022
- 2022-05-30 CN CN202210597036.7A patent/CN115006848A/en active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110433496A (en) * | 2019-08-14 | 2019-11-12 | 咪咕互动娱乐有限公司 | Cloud game resource allocation method, electronic device and storage medium |
CN111450524A (en) * | 2020-04-01 | 2020-07-28 | 网易(杭州)网络有限公司 | Information processing method and device in cloud game, cloud game server and medium |
CN113893525A (en) * | 2020-07-06 | 2022-01-07 | 北京字节跳动网络技术有限公司 | Cloud game running method and device, electronic equipment and computer readable medium |
CN111882626A (en) * | 2020-08-06 | 2020-11-03 | 腾讯科技(深圳)有限公司 | Image processing method, apparatus, server and medium |
CN111729293A (en) * | 2020-08-28 | 2020-10-02 | 腾讯科技(深圳)有限公司 | Data processing method, device and storage medium |
CN112184872A (en) * | 2020-10-17 | 2021-01-05 | 蔡娟 | Game rendering optimization method based on big data and cloud computing center |
CN113521753A (en) * | 2021-07-21 | 2021-10-22 | 咪咕互动娱乐有限公司 | System resource adjusting method, device, server and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9715750B2 (en) | System and method for layering using tile-based renderers | |
US6538651B1 (en) | Parametric geometric element definition and generation system and method | |
US9355492B2 (en) | System, method, and computer program product for utilizing a wavefront path tracer | |
US10997774B2 (en) | Layered, object space, programmable and asynchronous surface property generation system | |
US7765500B2 (en) | Automated generation of theoretical performance analysis based upon workload and design configuration | |
US10176584B2 (en) | Reducing latency in presenting map interfaces at client devices | |
US20140292753A1 (en) | Method of object customization by high-speed and realistic 3d rendering through web pages | |
WO2021146930A1 (en) | Display processing method, display processing apparatus, electronic device and storage medium | |
CN108052395A (en) | Load balancing between general processor and graphics processor | |
US11216993B2 (en) | Graphics processing systems | |
CN105184847A (en) | 3D game rendering engine rendering method | |
CN105183566B (en) | The method for managing resource of 3D game rendering engine | |
CN111367780B (en) | GPU performance test method and device and computer storage medium | |
CN109643395B (en) | Adaptive window mechanism | |
WO2023197762A1 (en) | Image rendering method and apparatus, electronic device, computer-readable storage medium, and computer program product | |
CN114669047A (en) | Image processing method, electronic device and storage medium | |
US10459834B2 (en) | Run time and historical workload report scores for customer profiling visualization | |
CN115552470A (en) | Data compression method and device | |
CN115006848A (en) | Cloud game resource allocation method and device, computer equipment and storage medium | |
CN113223102A (en) | Image obtaining method and device | |
US12118653B2 (en) | Depth analyzer and shading rate controller | |
US20240193718A1 (en) | Graphics processor | |
KR102370590B1 (en) | An apparatus for providing real estate market platform services using realistic scene images based on virtual space interior design content and a method for operating it | |
CN116894897A (en) | Computer graphics processing method and system | |
CN117744187A (en) | CAD drawing method, device, computer equipment and storage medium |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |