A cloud phone operation control method, device, electronic device and medium
By real-time monitoring and control of the GPU usage of cloud phones, identifying high-load applications and scheduling resources, the problem of low manual query efficiency in cloud phones is solved, ensuring stable GPU operation and user experience.
Patent Information
- Application Number
- CN202411302731.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2024-09-18
- Publication Date
- 2025-09-23
- Estimated Expiration
- 2044-09-18
AI Technical Summary
In a cloud phone environment, manually querying GPU usage is inefficient and difficult to achieve real-time monitoring, resulting in missed opportunities for resource allocation and performance optimization, affecting user experience.
Obtain the target GPU usage in real time, identify and control high-load applications, and ensure stable GPU operation through resource scheduling and optimization measures.
It implements real-time abnormal monitoring of cloud phone GPU usage, avoids resource waste, and improves system stability and user experience.
Smart Images

Figure CN119201618B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of computer technology, in particular to cloud computing technology, and specifically to a cloud phone operation control method, a cloud phone operation control device, an electronic device, and a non-transitory computer-readable storage medium. Background Art
[0002] With the popularization of mobile networks and the advancement of cloud computing technology, cloud phones, as a new type of mobile device, have the core advantages of powerful computing power and unlimited storage space. These advantages make cloud phones feasible and practical in multiple application scenarios.
[0003] In a cloud phone environment, you can use commands to view GPU (Graphics Processing Unit) usage, allowing users to proactively call these commands to query GPU usage across cloud phone instances. For users with a large number of cloud phone instances, manually querying GPU usage is not only inefficient but also difficult to monitor in real time, potentially missing opportunities to adjust resource allocation and optimize performance. Summary of the Invention
[0004] The present disclosure provides a cloud phone operation control method, a cloud phone operation control device, an electronic device, and a non-transitory computer-readable storage medium.
[0005] According to one aspect of the present disclosure, a method for controlling the operation of a cloud phone is provided, comprising:
[0006] Obtain the usage rate of the target GPU corresponding to the monitored cloud phone in real time;
[0007] When it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtaining each associated cloud phone that shares the target GPU with the monitoring cloud phone;
[0008] Identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and control the operation of each GPU high-load application based on the operation description information of the cloud phone where each GPU high-load application is located.
[0009] According to another aspect of the present disclosure, there is also provided an operation control device for a cloud phone, comprising:
[0010] The GPU usage monitoring module is used to obtain the usage of the target GPU corresponding to the monitored cloud phone in real time;
[0011] An associated cloud phone acquisition module, configured to acquire associated cloud phones that share the target GPU with the monitoring cloud phone when determining that the usage rate of the target GPU exceeds a usage rate threshold;
[0012] The GPU high-load application control module is used to identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and to control the operation of each GPU high-load application according to the operation description information of the cloud phone where each GPU high-load application is located.
[0013] According to another aspect of the present disclosure, there is also provided an electronic device, including:
[0014] at least one processor; and
[0015] a memory communicatively connected to the at least one processor; wherein,
[0016] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor so that the at least one processor can execute the cloud phone operation control method as described in any one of the embodiments of the present disclosure.
[0017] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is further provided, wherein the computer instructions are used to enable a computer to execute the cloud phone operation control method according to any one of the embodiments of the present disclosure.
[0018] According to another aspect of the present disclosure, a computer program product is further provided, including a computer program, which, when executed by a processor, implements the cloud phone operation control method of any embodiment of the present invention.
[0019] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS
[0020] The accompanying drawings are used to better understand the present invention and do not constitute a limitation of the present invention.
[0021] Figure 1 is a schematic diagram of a cloud phone operation control method provided according to an embodiment of the present disclosure;
[0022] Figure 2 is a schematic diagram of another cloud phone operation control method provided according to an embodiment of the present disclosure;
[0023] Figure 3 is a schematic diagram of another cloud phone operation control method provided according to an embodiment of the present disclosure;
[0024] Figure 4 This is a schematic diagram of an overall process of a solution applicable to a specific application scenario of the embodiment of the present disclosure;
[0025] Figure 5 This is a structural diagram of an operation control device of a cloud phone provided according to an embodiment of the present disclosure;
[0026] Figure 6 It is a block diagram of an electronic device used to implement a method for controlling the operation of a cloud phone according to an embodiment of the present disclosure. DETAILED DESCRIPTION
[0027] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding. These details should be considered as merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.
[0028] Figure 1 It is a schematic diagram of a cloud phone operation control method provided according to an embodiment of the present disclosure. The embodiment of the present disclosure is applicable to the situation where the GPU usage rate of the cloud phone is monitored in real time and the application program running on the cloud phone is controlled based on the numerical value of the GPU usage rate. The method can be executed by the operation control device of the cloud phone, which can be implemented in hardware and / or software, and can generally be integrated into a cloud phone server or a server cluster composed of multiple cloud phone servers. Among them, the cloud phone server (or, it can also be called a cloud phone platform) is used to perform unified scheduling and operation control of multiple cloud phones.
[0029] Correspondingly, such as Figure 1 As shown, the method may specifically include:
[0030] S101. Obtain and monitor the usage rate of the target GPU corresponding to the cloud phone in real time.
[0031] A monitoring cloud phone refers to a cloud phone instance that has a GPU monitoring program deployed. By running the GPU monitoring program on the monitoring cloud phone, the utilization rate of the specific GPU (i.e., the target GPU) providing graphics processing resources to the monitoring cloud phone can be monitored in real time. The GPU monitoring program can directly use a GPU command line tool or monitoring tool, or it can be a custom-written GPU monitoring script, which is not limited in this embodiment.
[0032] A GPU can be understood as hardware specifically dedicated to graphics processing in a cloud phone environment. In a cloud phone, the GPU is not only responsible for graphics rendering but can also participate in compute-intensive tasks. Because multiple cloud phone instances share a single GPU, excessive GPU load can impact other cloud phone users who also share the GPU. Therefore, monitoring GPU usage is crucial to ensuring cloud phone performance and resource optimization.
[0033] The usage rate of the target GPU can be monitored and acquired in real time at a set monitoring frequency, for example, 30 seconds, 1 minute, or 5 minutes.
[0034] S102: When it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtain each associated cloud phone that shares the target GPU with the monitoring cloud phone.
[0035] The GPU usage threshold can be understood as a performance indicator limit set when monitoring GPU performance, which is used to determine whether the GPU usage is in a normal or expected state.
[0036] Generally speaking, when the GPU usage exceeds this usage threshold, the GPU resources are overloaded, and the cloud phone may experience screen freezes when transmitting back, affecting the user experience of the cloud phone. Therefore, it is necessary to monitor the overload status in real time and take certain measures to reduce screen freezes. The usage threshold can be preset according to actual conditions, for example, 90% or 95%, etc., and this embodiment does not limit this.
[0037] Specifically, in the process of obtaining the utilization rate of the target GPU corresponding to the monitoring cloud phone in real time, if it is found that the utilization rate of the target GPU that provides GPU resources to the monitoring cloud phone exceeds the utilization rate threshold, it means that other cloud phones (that is, associated cloud phones) sharing the target GPU with the monitoring cloud phone are also in a state of GPU resource overload. These associated cloud phones may also experience freezes in the screen transmitted back by the cloud phone. At this time, it is also necessary to locate these associated cloud phones, and these associated cloud phones and the monitoring cloud phone are regarded as the affected cloud phone set, and the operation of the application is controlled for the affected cloud phone set as a whole.
[0038] S103: Identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and control the operation of each GPU high-load application according to the operation description information of the cloud phone where the GPU high-load application is located.
[0039] GPU high-load applications can be specifically understood as applications that require the GPU to perform a large number of calculations and processing tasks, such as cloud games, high-definition video conferencing, online learning platforms, high-resolution movie players, animation production applications, movie special effects production applications, and high-definition surveillance cameras and video analysis systems, etc., which require GPU rendering.
[0040] Specifically, after obtaining and monitoring the associated cloud phones that share the target GPU, the GPU high-load applications in each cloud phone are identified based on the IP of the cloud phone and the resource usage information in the target GPU. Based on the operation description information of the cloud phone where each GPU high-load application is located (for example, application name and version, GPU usage, application status and error log), some targeted processing measures are taken, such as limiting the number of multi-tasking processes and avoiding running multiple high-GPU-load applications at the same time, so as to reduce the overall load of the target GPU, realize the operation control of each GPU high-load application, and optimize the use of GPU resources.
[0041] The technical solution of the disclosed embodiment is to obtain the usage rate of the target GPU corresponding to the monitoring cloud phone in real time; when it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtain the associated cloud phones that share the target GPU with the monitoring cloud phone; identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and perform operation control on each GPU high-load application based on the operation description information of the cloud phone where each GPU high-load application is located. This technical solution can achieve real-time abnormal monitoring of the GPU usage rate of the cloud phone. When the GPU usage rate is abnormal, it identifies each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and performs operation control on it. By monitoring the GPU usage rate of the cloud phone in real time, it not only saves the user the tedious steps of manual inspection, but also can quickly discover and deal with potential problems. This automatic operation control mechanism ensures the stable operation of the target GPU and improves the reliability of the overall operation of the cloud phone.
[0042] Based on the above embodiments, in addition to automatically controlling the operation of each GPU high-load application based on the operation description information of the cloud phone where the GPU high-load application is located (the user is unaware of the entire process), the embodiments of the present invention can also actively issue abnormal warnings or notifications so that system administrators or cloud phone users can promptly understand the usage of GPU resources and take corresponding measures.
[0043] In a specific example, when the usage rate of the monitored target GPU exceeds a preset usage threshold, it means that the GPU resources are overloaded. At this time, the cloud phone platform can issue a GPU warning to the cloud phone user. After receiving the GPU warning, the cloud phone user can take some targeted measures to deal with this problem, such as manually closing or optimizing the cloud phone application. Alternatively, the cloud phone platform can also issue a GPU warning to the administrator of the merchant to which the cloud phone belongs. After receiving the GPU warning, the administrator can also take some targeted measures to deal with this problem, such as directly killing a specific GPU high-load application in the background.
[0044] In addition, the various embodiments of the present disclosure mainly implement an operation control scheme when the usage rate of the target GPU exceeds the usage threshold. In fact, when the usage rate of the target GPU is less than the preset low usage threshold, the cloud phone application can also be effectively controlled. In a specific example, when the usage rate of the target GPU corresponding to the monitored cloud phone is less than the low usage threshold (for example, 20% or 30%), at this time, the application currently running in the foreground of the monitored cloud phone can be obtained, and it can be detected whether the application is in the application setting with the best display effect. If not, the application settings of the application can be increased (for example, increasing the resolution or turning on high-consumption graphic effects, etc.) to ensure the effective use of GPU resources when the target GPU is sufficient, thereby improving the application usage experience of cloud phone users.
[0045] Figure 2 : This is a schematic diagram of another cloud phone operation control method provided according to an embodiment of the present disclosure. This embodiment is refined based on the above embodiments. In this embodiment, the operation of "identifying each GPU high-load application in the monitoring cloud phone and each of the associated cloud phones" is concretized as follows: "Identifying the application running in the foreground in the monitoring cloud phone and each of the associated cloud phones, and obtaining the resource occupancy rate of each of the applications on the target GPU; determining the application whose resource occupancy rate exceeds the occupancy rate threshold as the GPU high-load application."
[0046] Furthermore, the operation of "controlling the operation of each GPU-loaded application based on the operation description information of the cloud phone where each GPU-loaded application is located" is further specified as: "re-allocating resources in the target GPU to each GPU-loaded application based on the network transmission speed between the cloud phone where each GPU-loaded application is located and each physical device currently communicating with the application."
[0047] Correspondingly, such as Figure 2 As shown, the method may specifically include:
[0048] S201. Obtain and monitor the usage rate of the target GPU corresponding to the cloud phone in real time.
[0049] S202: When it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtain each associated cloud phone that shares the target GPU with the monitoring cloud phone.
[0050] S203 , identifying applications running in the foreground in the monitoring cloud phone and each associated cloud phone, and obtaining resource occupancy of each application on the target GPU.
[0051] S204: Determine an application whose resource occupancy rate exceeds a threshold as a GPU high-load application.
[0052] Generally speaking, applications that require GPU for graphics rendering, including cloud games, HD video conferencing, and high-resolution movie players, will consume a large amount of GPU resources (referring to various hardware resources used to perform computing tasks, such as processing cores, video memory, and memory bandwidth) when running in the foreground.
[0053] Therefore, when it is determined that the usage rate of the target GPU exceeds the usage threshold, the applications running in the foreground of each cloud phone currently sharing the target GPU are identified, and the resource occupancy rate of each application on the target GPU is obtained, and GPU high-load applications whose resource occupancy rate exceeds the occupancy threshold are screened out.
[0054] S205 , reallocating resources in the target GPU to each GPU high-load application based on the network transmission speed between the cloud phone where each GPU high-load application is located and each physical device currently establishing a communication connection.
[0055] Specifically, network transmission speed can be understood as the rate at which data is transmitted across a network, measured in data volume per second. In the cloud phone sector, network transmission speed is crucial to user experience, especially in applications requiring high-resolution image display, such as cloud gaming and HD video playback. Insufficient network transmission speed can cause image delays, lag, or decreased image quality. After identifying the GPU-heavy applications for each cloud phone, a resource scheduling algorithm reallocates resources from the target GPU to each GPU-heavy application based on the application's GPU load and network transmission speed. If a cloud phone's network transmission speed is detected to be high, the system may allocate more GPU resources to process higher-resolution images and video streams. If a cloud phone's network transmission speed is detected to be slow, data compression and encoding optimization technologies may be used to reduce the amount of data transmitted to ensure smooth operation and user experience for the cloud phone application. Alternatively, previously transmitted data or computation results may be cached to reduce repeated transmissions and network bandwidth usage, thereby reducing overall GPU load. This allows for operational control of each GPU-heavy application and optimizes GPU resource usage.
[0056] The technical solution of the disclosed embodiment can achieve real-time abnormal monitoring of the GPU usage of the cloud phone. When the GPU usage is abnormal, the foreground applications of the GPU in the monitoring cloud phone and the associated cloud phones are effectively identified based on the resource occupancy rate and the occupancy rate threshold, and the resources in the target GPU are allocated based on the network transmission speed between the cloud phone where the GPU high-load applications are located and the physical devices currently establishing communication connections. In this way, the foreground applications of the GPU high-load applications can obtain reasonable GPU resources under limited network conditions, thereby ensuring the performance of the foreground applications and avoiding resource waste. At the same time, the user experience of the monitoring cloud phone and the associated cloud phones is guaranteed, thereby ensuring the stable operation of the target GPU and improving the reliability of the overall operation of the cloud phone.
[0057] In another optional implementation of this embodiment, resources in the target GPU are reallocated to each of the GPU high-load applications based on a network transmission speed between the cloud phone where each GPU high-load application is located and each entity device currently establishing a communication connection, including:
[0058] Real-time acquisition of the current network transmission speed between the cloud phone where the current GPU high-load application is located and the physical device currently establishing a communication connection, and acquisition of the current frame rate of the current GPU high-load application;
[0059] If the current frame rate is greater than the current network transmission speed, the current frame rate is adjusted to match the current network transmission speed.
[0060] The current frame rate of the current high-GPU-loaded application can be understood as the number of images rendered per second by the current high-GPU-loaded application using the resources provided by the target GPU. Generally speaking, at a certain resolution, a higher frame rate means a higher GPU resource usage.
[0061] It is understandable that when the current frame rate is higher than the current network transmission speed, due to the limitation of the current network transmission speed, the high-frame-rate image cannot be immediately provided to the cloud phone user for high-definition display. At this time, even if the target GPU is highly occupied, the desired display effect is not achieved. Based on this, the current frame rate can be adjusted to match the current network transmission speed. At this time, while ensuring the original display effect of the cloud phone user, the resource occupation of the target GPU by the current GPU high-load application can be effectively reduced.
[0062] Through the above settings, the frame rate is adapted to the network transmission speed. When network conditions are limited, the pressure of cloud phone image rendering is appropriately reduced, avoiding meaningless waste of GPU and maximizing the performance of GPU.
[0063] Figure 3 It is a schematic diagram of another method for controlling the operation of a cloud phone provided according to an embodiment of the present disclosure. This embodiment is refined based on the above embodiments. In this embodiment, the operation of "controlling the operation of each of the GPU high-load applications according to the operation description information of the cloud phone where each of the GPU high-load applications is located" is concretized as follows: "Obtaining the priority weight information of the cloud phone where each of the GPU high-load applications is located; screening out at least one target cloud phone in order from low to high according to the priority weight information; and adopting a preset strategy to reduce the resources in the target GPU allocated to each of the GPU high-load applications in each of the target cloud phones."
[0064] Correspondingly, such as Figure 3 As shown, the method may specifically include:
[0065] S301. Obtain and monitor the usage rate of the target GPU corresponding to the cloud phone in real time.
[0066] S302: When it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtain each associated cloud phone that shares the target GPU with the monitoring cloud phone.
[0067] S303: Identify high-load applications on each GPU in the monitoring cloud phone and each associated cloud phone.
[0068] S304: Obtain priority weight information of the cloud phone where each GPU high-load application is located.
[0069] Priority weight information can be specifically understood as the priorities and weights assigned to different applications or services in resource scheduling and task management. This information helps the system decide how to allocate limited resources, such as GPUs, memory, storage space, or network bandwidth. Priority determines which applications or services should receive priority when resources are limited. Applications with higher priorities (such as those involved in critical business processes or with frequent user interaction) are given priority in resource allocation. Weight is an evaluation metric used when different applications have the same priority, and it determines their relative share of resource allocation. For example, applications with higher weights (such as those involved in critical business processes or with frequent user interaction) may receive more resources to ensure stable operation. In cloud phones, this priority and weight setting allows the system to dynamically adjust resource allocation based on the importance of applications and current performance requirements. For example, if a cloud phone is running a game with high-quality graphics and visual effects, the system may automatically increase the game's priority and weight to ensure it receives sufficient GPU resources to maintain a smooth gaming experience. Conversely, if the network transmission speed is insufficient to support the smooth transmission of high-resolution images, the system may lower the priority and weight of applications with higher image quality requirements to ensure basic service quality and user experience.
[0070] S305 : Filter out at least one target cloud phone according to the priority weight information in descending order.
[0071] S306: Using a preset strategy, reduce the resources in the target GPU allocated to the high-load applications on each GPU in each target cloud phone.
[0072] Specifically, after identifying each GPU high-load application in the monitoring cloud phone and each associated cloud phone, the priority weight information of the cloud phone where each GPU high-load application is located is obtained and sorted, and at least one cloud phone with a low priority weight is screened out as the target cloud phone, and the resources allocated to the target GPU of the screened cloud phones are differentially reduced according to the priority weight. If there are more than one target cloud phones screened out, the allocated GPU resources are differentially reduced according to the priority weight of the target cloud phone (for example, reducing the amount of video memory allocated to a specific application or limiting the number of GPU computing cores used by the application). For high-priority applications, that is, critical applications, it can be guaranteed that more GPU resources are still held after the allocated GPU resources are reduced, and for low-priority applications, that is, non-critical applications, the amount of resource allocation reduction can be adaptively increased to ensure that the performance of critical applications is not affected. When the priority of applications is the same, the allocated GPU resources can be reduced differentially according to their weights. For high-weight applications, that is, critical applications, it can be ensured that more GPU resources are still retained after the allocated GPU resources are reduced. For low-weight applications, that is, non-critical applications, the amount of resource allocation reduction can be adaptively increased to ensure that the performance of critical applications is not affected, ensuring the stable operation of the target GPU and improving the reliability of the overall operation of the cloud phone.
[0073] The technical solution of the disclosed embodiment can achieve real-time abnormal monitoring of the GPU usage of the cloud phone by obtaining the usage rate of the target GPU corresponding to the monitored cloud phone in real time; when it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtaining each associated cloud phone that shares the target GPU with the monitored cloud phone; identifying each GPU high-load application in the monitored cloud phone and each associated cloud phone; obtaining priority weight information of the cloud phone where each GPU high-load application is located; and screening at least one target cloud phone in descending order of priority weight information; and using a preset strategy to reduce the resources in the target GPU allocated to each GPU high-load application in each target cloud phone. When the GPU usage rate is abnormal, the technical solution can identify each GPU high-load foreground application in the monitored cloud phone and each associated cloud phone, and differentially reduce the resources allocated to the target GPU of the target cloud phone application based on the priority weight of each application. In the case of GPU resource shortage, it is ensured that high-priority weight applications can obtain sufficient resources to maintain a smooth user experience and application performance, avoid resource waste, prevent system overload, reduce system crashes or performance bottlenecks caused by resource competition, ensure the stable operation of the target GPU, and improve the reliability of the overall operation of the cloud phone.
[0074] In another optional implementation of this embodiment, the adopting of a preset strategy to reduce the resources in the target GPU allocated to each GPU high-load application in each target cloud phone includes at least one of the following:
[0075] Adjust the running mode of the GPU high-load application in the target cloud phone to the minimalist mode;
[0076] Turn off the high-consumption graphics effects in the GPU high-load application in the target cloud phone;
[0077] Reduce the resolution or frame rate of the GPU high-load application in the target cloud phone.
[0078] Specifically, when GPU resources are scarce, reducing the target GPU resources allocated to each GPU-heavy application in each target cloud phone can achieve GPU resource redistribution by reducing the GPU resource requirements of the application, providing additional available GPU resources for other applications. Reducing GPU resource requirements can include: adjusting the operating mode of the GPU-heavy application in the target cloud phone to a minimalist mode, that is, adjusting the graphics settings of the application to the minimum, reducing the complexity of graphics rendering, thereby reducing the GPU load, for example, in games, this may involve turning off shadows, reducing texture quality, or reducing reflection effects; turning off high-consumption graphics effects in the GPU-heavy application in the target cloud phone, that is, turning off special effects that consume a lot of GPU resources, such as ray tracing, anti-aliasing, and complex particle effects, to reduce the workload of the GPU; reducing the resolution or frame rate of the GPU-heavy application in the target cloud phone, that is, reducing the number of pixels rendered by the GPU by reducing the output resolution of the game or application, thereby reducing the GPU utilization rate, or limiting the frame rate to reduce the number of frames required to be rendered per second by the GPU, thereby reducing the GPU utilization rate, balancing the GPU load, ensuring the stable operation of the target GPU, and improving the reliability of the overall operation of the cloud phone.
[0079] In another optional implementation of this embodiment, obtaining the priority weight information of the cloud phone where each GPU high-load application is located includes:
[0080] Obtain the cloud phone user to which the cloud phone containing each of the GPU high-load applications belongs;
[0081] Obtaining historical cloud phone usage frequency information and user level information of each cloud phone user;
[0082] Calculate the priority weight information of the cloud phone where each GPU high-load application is located based on the historical cloud phone usage frequency information and the user level information;
[0083] The historical cloud phone usage frequency information includes at least one of the historical usage duration, the historical cloud phone usage frequency, and the historical cloud phone high-frequency usage time period.
[0084] The historical frequency of cloud phone usage information can be specifically understood as: recording the historical usage information of users using cloud phones, which can be used to understand the user's behavior pattern and allocate resources and optimize services accordingly. The historical frequency of cloud phone usage information includes at least one of the following: historical usage duration, historical frequency of cloud phone usage, and historical high-frequency time periods of cloud phone usage. Among them, the historical usage duration reflects the total time the user uses the cloud phone, and the historical usage duration will affect the user's priority weight, because users who use it for a long time may need more stable resource allocation; the historical frequency of cloud phone usage reflects the frequency of users accessing the cloud phone service, and users with high frequency of use can be given higher priority weights; the historical high-frequency time periods of cloud phone usage reflect the user's usage peak in a specific time period. Users can be given higher priority weights in a specific time period, which helps to predict and allocate resources to meet peak demand.
[0085] Specifically, the priority weight information of the cloud phone where each GPU high-load application is located can be calculated based on the historical cloud phone usage frequency information and user level information (referring to the user's subscription level or membership level. Users with high subscription levels or high membership levels can be given higher priority weights). After obtaining the cloud phone users to which the cloud phones where each GPU high-load application is located, the historical cloud phone usage frequency information and user level information of each cloud phone user are obtained, and the above indicators are quantified. For example, the usage time and frequency are converted into numerical values, and different weights are assigned to different indicators. For example, if the user level is higher, a higher weight can be given. Then, a weighted calculation is performed, and the priority weight is dynamically adjusted according to real-time data during the subsequent operation to adapt to the ever-changing usage patterns. By identifying the user's usage habits and preferences, they can be provided with more personalized services to ensure that the resource needs of high-value users or high-frequency usage periods are met first, thereby improving resource utilization efficiency, ensuring the stable operation of the target GPU, and improving the reliability of the overall operation of the cloud phone.
[0086] Based on the above embodiments, after obtaining and monitoring the usage rate of the target GPU corresponding to the cloud phone in real time, the method may further include:
[0087] When it is determined that the usage rate of the target GPU does not exceed the usage rate threshold, determining whether the usage rate of the target GPU shows an upward trend based on historical usage rates of the target GPU obtained from at least two recent monitorings;
[0088] If so, obtaining user historical behavior data of the cloud phone users to which the monitored cloud phone and each of the associated cloud phones belong;
[0089] Predicting, based on the historical behavior data of each user, an expected time at which GPU usage limit exceeding occurs on the target GPU;
[0090] If the difference between the expected occurrence time and the current system time is less than a preset difference threshold, the expected occurrence time is provided to each of the cloud phone users for autonomous decision-making control.
[0091] Specifically, during the process of obtaining the usage rate of the target GPU corresponding to the monitored cloud phone in real time, when the usage rate of the target GPU does not exceed the usage rate threshold, that is, when it is in a normal working state, the target GPU usage rate change trend is determined based on the historical usage rate of the target GPU obtained from at least two recent monitorings. If the usage rate of the target GPU is on a downward trend, it indicates that the target GPU is not at risk of overload; if the usage rate of the target GPU is on an upward trend, it indicates that the load on the target GPU is increasing. It is also necessary to obtain user historical behavior data of the cloud phone users of the monitored cloud phone and each of the associated cloud phones to further determine whether the target GPU is at risk of overload. Based on the obtained user historical behavior data, the user historical behavior data is analyzed using a machine learning algorithm to establish a prediction model, thereby identifying situations that may lead to GPU overload in advance and predicting the expected time when the target GPU will exceed the GPU usage limit. When the difference between the expected occurrence time and the current system time is less than a preset difference threshold, the expected occurrence time is provided to each cloud phone user in the form of an abnormality warning for independent decision-making and control. By analyzing the user's historical usage data in the cloud phone to predict the GPU overload time and issuing a warning to the user before a possible overload is predicted, the user experience can be effectively improved and the smooth performance of the device can be ensured. This approach helps optimize resource allocation, reduce operating costs and system failure risks caused by overload, while improving system stability, effectively managing GPU load, and improving the reliability of cloud phone operation control.
[0092] Typically, if the target GPU usage is on an upward trend, historical behavior data can be obtained from cloud phone users. This includes the types of applications they run, particularly those that require high GPU resources, such as games or video editing software, as well as the frequency and duration of use of these applications. Furthermore, the user's GPU resource usage while using the cloud phone, including duration, frequency, and time of use, can be analyzed. Combined with system performance feedback data, such as frame rate, latency, and lag, cluster analysis can be used to categorize users into different behavioral groups, identifying high-risk groups of overloaded users. A decision tree model is then constructed to identify the key factors leading to GPU overload. Ensemble learning is then performed using random forests combined with time series analysis. By analyzing the time series of user behavior data, future behavior patterns and potential GPU load peaks can be predicted, resulting in the estimated time of GPU overload. For the above-mentioned high-risk overload user groups, the difference between their respective expected occurrence time and the preset difference threshold is determined. When the expected occurrence time is less than the preset difference threshold, the high-risk overload users and their associated cloud phone users will be prompted with an overload message, and the expected occurrence time will be displayed to remind users to make independent decision-making controls, such as reminding users to reduce the use of resource-intensive applications to ensure the stable operation of cloud phones.
[0093] Based on the above embodiments, after obtaining and monitoring the usage rate of the target GPU corresponding to the cloud phone in real time, the method may further include:
[0094] When it is determined that the usage rate of the target GPU does not exceed the usage rate threshold, obtaining user historical behavior data of the cloud phone users of the monitoring cloud phone and each of the associated cloud phones, predicting the resources required by the cloud phone users of the monitoring cloud phone and each of the associated cloud phones, and using the remaining resources to perform intelligent preloading of multiple tasks simultaneously using multi-threading and asynchronous processing; or
[0095] When it is determined that the usage rate of the target GPU does not exceed the usage rate threshold, the operation mode of the GPU is dynamically adjusted according to the current usage rate of the target GPU and the preset threshold.
[0096] Specifically, in the process of obtaining the utilization rate of the target GPU corresponding to the monitored cloud phone in real time, when the utilization rate of the target GPU does not exceed the utilization rate threshold, that is, when it is in a normal working state, the user historical behavior data of the cloud phone users of the monitored cloud phone and each of the associated cloud phones is obtained, and the user historical behavior data is analyzed through a machine learning algorithm to screen out users with high load demands of the cloud phones of the monitored cloud phone and each of the associated cloud phones, predict the resources required by these users, and use the remaining GPU resources to use multi-threading and asynchronous processing to achieve intelligent preloading of the above resources. In the process of obtaining the utilization rate of the target GPU corresponding to the monitored cloud phone in real time, when the utilization rate of the target GPU does not exceed the utilization rate threshold, that is, when it is in a normal working state, the GPU operating mode can also be dynamically adjusted based on the relationship between the current target GPU utilization rate and a preset threshold. For example, based on the load situation, when the GPU utilization rate is less than or equal to the low threshold, between the low threshold and the high threshold, and greater than or equal to the high threshold, the GPU operating mode can be set to low performance, medium performance, or high performance mode, respectively. By predicting required resources based on historical user behavior data and preloading them accordingly, as well as dynamically adjusting GPU operating modes, this improves system responsiveness and resource utilization, optimizing the user experience and ensuring smooth performance in resource-intensive tasks while reducing energy consumption and improving system stability. Furthermore, it facilitates load balancing, supports high-concurrency processing, and makes cloud phone management more intelligent, reducing the need for manual intervention, lowering operating costs, and improving the reliability of the cloud phone system.
[0097] Typically, when the target GPU is in normal operating condition, historical user behavior data of cloud phone users can be obtained, such as the user's application usage history, particularly high-load applications such as games or video editing software that were frequently used during the same historical time period. The frequency and duration of these applications' usage, as well as the performance modes adopted by users using these applications, including but not limited to operating mode, graphics effects, resolution, and frame rate, can be obtained. Cluster analysis can be used to categorize users into different behavioral groups to identify users who may require more resources. Time series analysis can be used to analyze user behavior and predict future resource requirements. Decision trees and random forest models can be built to identify critical resources with high resource requirements. GPU asynchronous APIs can be called and events can be used to record and synchronize GPU tasks, allowing for querying the completion status of GPU tasks and performing subsequent operations. This allows for preloading of predicted critical resources for high-load users when the GPU is in normal or low-load operating condition. This allows the system to respond to user operations more quickly, fully utilize GPU resources, reduce user wait time, improve user experience, and reduce the risk of GPU overload, thereby enhancing the reliability of the cloud phone system.
[0098] Typically, when the target GPU is in a normal working state, the current usage of the GPU is obtained and compared with the set threshold to adjust the working mode. For example, it can be set to low performance mode when the GPU load is less than 20%, medium performance mode when the load is between 20% and 80%, and high performance mode when the load exceeds 80%. In order to ensure the stable operation of the system under sudden high load conditions, a certain proportion of GPU resources can be reserved and not allocated to user tasks to ensure that there are sufficient resources for rapid response under sudden high load conditions, maintain the stability of the cloud phone system in a short period of time, avoid system crashes or performance degradation caused by overload, and send warnings to users to remind them that current resources are tight and recommend that users reduce resource-intensive operations or optimize application configurations.
[0099] To facilitate understanding, specific application scenarios to which each embodiment of the present disclosure is applicable are now described. Figure 4 This is a schematic diagram of the overall process flow of a solution applicable to a specific application scenario of the disclosed embodiment. In this application scenario, it specifically describes the specific steps for real-time monitoring of the GPU usage of a cloud phone, and when it is detected that the GPU usage of the cloud phone exceeds the set alarm threshold, reporting the cloud phone information and GPU usage to the cloud phone platform. The cloud phone platform then notifies the cloud phone customer to which the cloud phone instance belongs of the relevant cloud phone information, allowing the cloud phone customer to promptly perceive and handle this issue.
[0100] Specifically, such as Figure 4 As shown in the figure, the operation control method of the cloud phone is specifically divided into 7 steps: deploying the GPU monitoring program and configuring the alarm standard, monitoring the GPU usage of the current cloud phone in real time, calling back the relevant information to the cloud phone platform, querying the relevant information based on the unique identifier of the cloud phone, returning the query results, notifying the merchants of all affected cloud phones to call back, and taking corresponding measures for these cloud phones with abnormal GPU usage.
[0101] S401: Deploy a GPU monitoring program and configure alarm standards.
[0102] Optionally, you can deploy a GPU monitoring program on the cloud phone and set GPU alarm criteria and a notification interface address for exceptions. For example, you can set the alarm criteria to be when the GPU usage exceeds 90% within 3 seconds. The notification interface address is used to call back relevant information to the cloud phone platform through an interface call when the alarm criteria are met.
[0103] S402. Monitor the GPU usage of the current cloud phone in real time.
[0104] After the GPU monitoring program is deployed, the GPU monitoring program can monitor the GPU usage of the current cloud phone in real time according to a preset monitoring frequency.
[0105] S403. Call back relevant information to the cloud phone platform.
[0106] Specifically, when the GPU monitoring program detects that the GPU usage of the current cloud phone meets the set alarm standard, it will call back some relevant information to the cloud phone platform through the notification interface address. The relevant information includes the unique identifier of the current cloud phone (instance IP), GPU usage, and the name of the application package with higher load on the cloud phone.
[0107] S404. Query relevant information based on the unique identifier of the cloud phone.
[0108] Among them, when the cloud phone platform receives the callback notification of the GPU monitoring program, it can query the database based on the instance IP of the current cloud phone to obtain information such as the merchant (also called the cloud phone customer) to which the current cloud phone belongs, the user ID who is using the current cloud phone, other cloud phones sharing the GPU with the current cloud phone and their merchants.
[0109] S405. Return the query result.
[0110] The database can return the relevant information found to the cloud phone platform based on the query request of the cloud phone platform.
[0111] S406. Notify the merchants of all affected cloud phone callbacks.
[0112] Specifically, the current cloud phone and other cloud phones that share the same GPU are affected. The cloud phone platform will notify the merchants of these affected cloud phones with abnormal GPU usage.
[0113] S407. Take corresponding measures for the cloud phones with abnormal GPU usage.
[0114] After receiving the GPU abnormality notification, the merchant of the cloud phone can take some targeted measures to deal with this problem, such as killing the application process with high GPU usage and notifying its downstream users.
[0115] This technical solution can achieve real-time abnormal monitoring and notification capabilities for the GPU usage of cloud phones. When the GPU usage rate on a cloud phone soars, the merchant to which the cloud phone belongs can be notified in a timely manner, so that cloud phone customers on the cloud phone platform can perceive this problem in time and take corresponding measures, avoiding the impact of lag on the actual user experience of cloud phone users and improving the stability of the cloud phone system.
[0116] As an implementation of the above-mentioned operation control methods of each cloud phone, the present disclosure also provides an optional embodiment of an execution device for implementing the above-mentioned operation control methods of each cloud phone.
[0117] Figure 5 This is a structural diagram of a cloud phone operation control device provided according to an embodiment of the present disclosure. Figure 5 The device includes: a GPU usage monitoring module 501, an associated cloud phone acquisition module 502 and a GPU high-load application control module 503, wherein:
[0118] The GPU usage monitoring module is used to obtain the usage of the target GPU corresponding to the monitored cloud phone in real time;
[0119] An associated cloud phone acquisition module, configured to acquire associated cloud phones that share the target GPU with the monitoring cloud phone when determining that the usage rate of the target GPU exceeds a usage rate threshold;
[0120] The GPU high-load application control module is used to identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and to control the operation of each GPU high-load application according to the operation description information of the cloud phone where each GPU high-load application is located.
[0121] The technical solution of the disclosed embodiment is to obtain the usage rate of the target GPU corresponding to the monitoring cloud phone in real time; when it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtain the associated cloud phones that share the target GPU with the monitoring cloud phone; identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and perform operation control on each GPU high-load application based on the operation description information of the cloud phone where each GPU high-load application is located. This technical solution can achieve real-time abnormal monitoring of the GPU usage rate of the cloud phone. When the GPU usage rate is abnormal, it identifies each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and performs operation control on it. By monitoring the GPU usage rate of the cloud phone in real time, it not only saves the user the tedious steps of manual inspection, but also can quickly discover and deal with potential problems. This proactive and automatic operation control mechanism ensures the stable operation of the target GPU and improves the reliability of the overall operation of the cloud phone.
[0122] Based on the above embodiments, the GPU high-load application control module is specifically configured to:
[0123] Identifying applications running in the foreground in the monitoring cloud phone and each of the associated cloud phones, and obtaining resource occupancy of each of the applications on the target GPU;
[0124] An application program whose resource occupancy rate exceeds a occupancy rate threshold is determined as the GPU high-load application.
[0125] Based on the above embodiments, the GPU high-load application control module is further configured to:
[0126] According to the network transmission speed between the cloud phone where each GPU high-load application is located and each physical device currently establishing a communication connection, resources in the target GPU are reallocated to each GPU high-load application.
[0127] Based on the above embodiments, the GPU high-load application control module is further configured to:
[0128] Real-time acquisition of the current network transmission speed between the cloud phone where the current GPU high-load application is located and the physical device currently establishing a communication connection, and acquisition of the current frame rate of the current GPU high-load application;
[0129] If the current frame rate is greater than the current network transmission speed, the current frame rate is adjusted to match the current network transmission speed.
[0130] Based on the above embodiments, the GPU high-load application control module further includes:
[0131] A priority weight information acquisition unit, configured to acquire priority weight information of the cloud phone where each GPU high-load application is located;
[0132] a target cloud phone screening unit, configured to screen out at least one target cloud phone according to the priority weight information in descending order;
[0133] The resource reduction unit is used to adopt a preset strategy to reduce the resources in the target GPU allocated to each GPU high-load application in each target cloud phone.
[0134] Based on the above embodiments, the resource reduction unit is specifically configured to implement at least one of the following functions:
[0135] Adjust the running mode of the GPU high-load application in the target cloud phone to the minimalist mode;
[0136] Turn off the high-consumption graphics effects in the GPU high-load application in the target cloud phone;
[0137] Reduce the resolution or frame rate of the GPU high-load application in the target cloud phone.
[0138] On the basis of the above embodiments, the priority weight information acquisition unit is specifically configured to:
[0139] Obtain the cloud phone user to which the cloud phone containing each of the GPU high-load applications belongs;
[0140] Obtaining historical cloud phone usage frequency information and user level information of each cloud phone user;
[0141] Calculate the priority weight information of the cloud phone where each GPU high-load application is located based on the historical cloud phone usage frequency information and the user level information;
[0142] The historical cloud phone usage frequency information includes at least one of the historical usage duration, the historical cloud phone usage frequency, and the historical cloud phone high-frequency usage time period.
[0143] Based on the above embodiments, the device further includes:
[0144] A usage trend determination module is configured to determine, when determining that the usage of the target GPU does not exceed the usage threshold, whether the usage of the target GPU shows an upward trend based on the historical usage of the target GPU obtained from at least two recent monitorings;
[0145] A historical behavior data acquisition module is used to obtain user historical behavior data of the cloud phone users of the monitored cloud phone and each of the associated cloud phones if the usage rate of the target GPU shows an upward trend;
[0146] An over-limit time prediction module, configured to predict the expected time of occurrence of GPU usage over-limit on the target GPU based on the historical behavior data of each user;
[0147] The estimated occurrence time providing module is used to provide the estimated occurrence time to each cloud phone user for autonomous decision-making control if the difference between the estimated occurrence time and the current system time is less than a preset difference threshold.
[0148] Based on the above embodiments, the device further includes:
[0149] an intelligent preloading module for obtaining historical user behavior data of the cloud phone users of the monitored cloud phone and each of the associated cloud phones when determining that the usage rate of the target GPU does not exceed the usage rate threshold, predicting resources required by the cloud phone users of the monitored cloud phone and each of the associated cloud phones, and utilizing the remaining resources to perform intelligent preloading of multiple tasks simultaneously using multithreading and asynchronous processing; or
[0150] The operation mode adjustment module is used to dynamically adjust the operation mode of the GPU according to the current utilization rate of the target GPU and a preset threshold when it is determined that the utilization rate of the target GPU does not exceed the utilization rate threshold.
[0151] The above-mentioned product can execute the method provided by any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects of the execution method.
[0152] In the technical solutions disclosed herein, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.
[0153] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.
[0154] Figure 6 A schematic block diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are provided as examples only and are not intended to limit the implementation of the present disclosure described and / or claimed herein.
[0155] like Figure 6 As shown, the device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the device 600 can also be stored in the RAM 603. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.
[0156] Various components in device 600 are connected to I / O interface 605, including an input unit 606, such as a keyboard, mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a magnetic disk, optical disk, etc.; and a communication unit 609, such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows device 600 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.
[0157] The computing unit 601 can be a variety of general and / or special processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, digital signal processors (DSPs), and any appropriate processors, controllers, microcontrollers, etc. The computing unit 601 performs the various methods and processes described above, such as the operation control method of the cloud phone. For example, in some embodiments, the operation control method of the cloud phone can be implemented as a computer software program, which is tangibly contained in a machine-readable medium, such as a storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on the device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the operation control method of the cloud phone described above can be performed. Alternatively, in other embodiments, the computing unit 601 can be configured to execute the operation control method of the cloud phone by any other appropriate means (for example, by means of firmware).
[0158] That is, obtain the usage rate of the target GPU corresponding to the monitored cloud phone in real time;
[0159] When it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtaining each associated cloud phone that shares the target GPU with the monitoring cloud phone;
[0160] Identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and control the operation of each GPU high-load application based on the operation description information of the cloud phone where each GPU high-load application is located.
[0161] Various embodiments of the systems and techniques described above can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.
[0162] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or block diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.
[0163] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.
[0164] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).
[0165] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.
[0166] A computer system may include a client and a server. The client and server are typically remote from each other and typically interact via a communication network. This client-server relationship arises through computer programs running on the respective computers, creating a client-server relationship. The server may be a cloud server, also known as a cloud computing server or cloud host, a hosting product within the cloud computing service ecosystem that addresses the management difficulties and limited scalability of traditional physical hosting and VPS services. The server may also be a server in a distributed system or a server integrated with blockchain.
[0167] Artificial intelligence (AI) is the study of how computers can simulate certain human thought processes and intelligent behaviors (such as learning, reasoning, thinking, and planning). It encompasses both hardware and software technologies. AI hardware technologies generally include sensors, specialized AI chips, cloud computing, distributed storage, and big data processing. AI software technologies primarily encompass computer vision, speech recognition, natural language processing, machine learning / deep learning, big data processing, and knowledge graphs.
[0168] Cloud computing refers to a technology system that provides network access to elastically scalable shared pools of physical or virtual resources. These resources can include servers, operating systems, networks, software, applications, and storage devices, and can be deployed and managed on-demand in a self-service manner. Cloud computing technology provides efficient and powerful data processing capabilities for the application of technologies such as artificial intelligence and blockchain, as well as for model training.
[0169] It should be understood that the various forms of processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions provided by this disclosure can be achieved. This is not limited herein.
[0170] The above specific embodiments do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.
Claims
1. A method for controlling the operation of a cloud phone, comprising: Obtain the usage rate of the target graphics processor GPU corresponding to the monitored cloud phone in real time; When it is determined that the usage rate of the target GPU exceeds the usage rate threshold, obtaining each associated cloud phone that shares the target GPU with the monitoring cloud phone; Identifying each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and controlling the operation of each GPU high-load application according to the operation description information of the cloud phone where each GPU high-load application is located; After obtaining the usage rate of the target GPU corresponding to the monitored cloud phone in real time, the following steps are also included: When it is determined that the usage rate of the target GPU is lower than a preset low usage rate threshold, obtaining each associated cloud phone that shares the target GPU with the monitoring cloud phone; An application running in the foreground is identified in the monitoring cloud phone and each of the associated cloud phones, and it is detected whether the application is in an application setting with the best display effect. If not, the application setting of the application is increased.
2. The method according to claim 1, wherein The identifying of each GPU high-load application in the monitoring cloud phone and each associated cloud phone includes: Identifying applications running in the foreground in the monitoring cloud phone and each of the associated cloud phones, and obtaining resource occupancy of each of the applications on the target GPU; An application program whose resource occupancy rate exceeds a occupancy rate threshold is determined as the GPU high-load application.
3. The method according to claim 1, wherein The step of controlling the operation of each GPU high-load application according to the operation description information of the cloud phone where each GPU high-load application is located includes: According to the network transmission speed between the cloud phone where each GPU high-load application is located and each physical device currently establishing a communication connection, resources in the target GPU are reallocated to each GPU high-load application.
4. The method according to claim 3, wherein: The reallocating resources in the target GPU to each of the GPU high-load applications according to the network transmission speed between the cloud phone where each of the GPU high-load applications is located and each of the physical devices currently establishing communication connections includes: Real-time acquisition of the current network transmission speed between the cloud phone where the current GPU high-load application is located and the physical device currently establishing a communication connection, and acquisition of the current frame rate of the current GPU high-load application; If the current frame rate is greater than the current network transmission speed, the current frame rate is adjusted to match the current network transmission speed.
5. The method according to claim 1, wherein The step of controlling the operation of each GPU high-load application according to the operation description information of the cloud phone where each GPU high-load application is located includes: Obtaining priority weight information of the cloud phone where each GPU high-load application is located; Filtering at least one target cloud phone according to the priority weight information in descending order; A preset strategy is adopted to reduce the resources in the target GPU allocated to the high-load application of each GPU in each target cloud phone.
6. The method according to claim 5, wherein: The adopting of a preset strategy to reduce the resources in the target GPU allocated to the high-load application on each GPU in each target cloud phone includes at least one of the following: Adjust the running mode of the GPU high-load application in the target cloud phone to the minimalist mode; Turn off the high-consumption graphics effects in the GPU high-load application in the target cloud phone; Reduce the resolution or frame rate of the GPU high-load application in the target cloud phone.
7. The method according to claim 5, wherein: The obtaining of priority weight information of the cloud phone where each GPU high-load application is located includes: Obtain the cloud phone user to which the cloud phone containing each of the GPU high-load applications belongs; Obtaining historical cloud phone usage frequency information and user level information of each cloud phone user; Calculate the priority weight information of the cloud phone where each GPU high-load application is located based on the historical cloud phone usage frequency information and the user level information; The historical cloud phone usage frequency information includes at least one of the historical usage duration, the historical cloud phone usage frequency, and the historical cloud phone high-frequency usage time period.
8. The method according to any one of claims 1 to 7, further comprising, after obtaining and monitoring the usage rate of the target GPU corresponding to the cloud phone in real time: When it is determined that the usage rate of the target GPU does not exceed the usage rate threshold, determining whether the usage rate of the target GPU shows an upward trend based on historical usage rates of the target GPU obtained from at least two recent monitorings; If so, obtaining user historical behavior data of the cloud phone users to which the monitored cloud phone and each of the associated cloud phones belong; Predicting, based on the historical behavior data of each user, an expected time at which GPU usage limit exceeding occurs on the target GPU; If the difference between the expected occurrence time and the current system time is less than a preset difference threshold, the expected occurrence time is provided to each of the cloud phone users for independent decision-making control.
9. The method according to any one of claims 1 to 7, further comprising, after acquiring and monitoring the usage rate of the target GPU corresponding to the cloud phone in real time: When it is determined that the usage rate of the target GPU does not exceed the usage rate threshold, obtaining user historical behavior data of the cloud phone users of the monitoring cloud phone and each of the associated cloud phones, predicting the resources required by the cloud phone users of the monitoring cloud phone and each of the associated cloud phones, and using the remaining resources to perform intelligent preloading of multiple tasks simultaneously using multi-threading and asynchronous processing; or When it is determined that the usage rate of the target GPU does not exceed the usage rate threshold, the operation mode of the GPU is dynamically adjusted according to the current usage rate of the target GPU and the preset threshold.
10. A cloud phone operation control device, comprising: The GPU usage monitoring module is used to obtain the usage of the target graphics processor GPU corresponding to the monitored cloud phone in real time; An associated cloud phone acquisition module, configured to acquire associated cloud phones that share the target GPU with the monitoring cloud phone when determining that the usage rate of the target GPU exceeds a usage rate threshold; A GPU high-load application control module is used to identify each GPU high-load application in the monitoring cloud phone and each associated cloud phone, and control the operation of each GPU high-load application according to the operation description information of the cloud phone where each GPU high-load application is located; The operation control device of the cloud phone further includes: A low usage module is configured to obtain, after obtaining in real time the usage rate of a target graphics processor (GPU) corresponding to the monitored cloud phone, and upon determining that the usage rate of the target GPU is lower than a preset low usage threshold, obtain each associated cloud phone that shares the target GPU with the monitored cloud phone; The setting adjustment module is used to identify the application running in the foreground in the monitoring cloud phone and each of the associated cloud phones, and detect whether the application is in the application setting with the best display effect. If not, the application setting of the application is adjusted higher.
11. The device according to claim 10, wherein The GPU high-load application control module is specifically used to: Identifying applications running in the foreground in the monitoring cloud phone and each of the associated cloud phones, and obtaining resource occupancy of each of the applications on the target GPU; An application program whose resource occupancy rate exceeds a occupancy rate threshold is determined as the GPU high-load application.
12. The device according to claim 10, wherein The GPU high-load application control module is further configured to: According to the network transmission speed between the cloud phone where each GPU high-load application is located and each physical device currently establishing a communication connection, resources in the target GPU are reallocated to each GPU high-load application.
13. The device according to claim 12, wherein The GPU high-load application control module is further configured to: Real-time acquisition of the current network transmission speed between the cloud phone where the current GPU high-load application is located and the physical device currently establishing a communication connection, and acquisition of the current frame rate of the current GPU high-load application; If the current frame rate is greater than the current network transmission speed, the current frame rate is adjusted to match the current network transmission speed.
14. The device according to claim 10, wherein The GPU high-load application control module further includes: A priority weight information acquisition unit, configured to acquire priority weight information of the cloud phone where each GPU high-load application is located; a target cloud phone screening unit, configured to screen out at least one target cloud phone according to the priority weight information in descending order; The resource reduction unit is used to adopt a preset strategy to reduce the resources in the target GPU allocated to each GPU high-load application in each target cloud phone.
15. The device according to claim 14, wherein The resource reduction unit is specifically configured to implement at least one of the following functions: Adjust the running mode of the GPU high-load application in the target cloud phone to the minimalist mode; Turn off the high-consumption graphics effects in the GPU high-load application in the target cloud phone; Reduce the resolution or frame rate of the GPU high-load application in the target cloud phone.
16. The device according to claim 14, wherein The priority weight information acquisition unit is specifically used to: Obtain the cloud phone user to which the cloud phone containing each of the GPU high-load applications belongs; Obtaining historical cloud phone usage frequency information and user level information of each cloud phone user; Calculate the priority weight information of the cloud phone where each GPU high-load application is located based on the historical cloud phone usage frequency information and the user level information; The historical cloud phone usage frequency information includes at least one of the historical usage duration, the historical cloud phone usage frequency, and the historical cloud phone high-frequency usage time period.
17. The apparatus according to any one of claims 10 to 16, further comprising: A usage trend determination module is configured to determine, when determining that the usage of the target GPU does not exceed the usage threshold, whether the usage of the target GPU shows an upward trend based on the historical usage of the target GPU obtained from at least two recent monitorings; A historical behavior data acquisition module is used to obtain user historical behavior data of the cloud phone users of the monitored cloud phone and each of the associated cloud phones if the usage rate of the target GPU shows an upward trend; An over-limit time prediction module, configured to predict the expected time of occurrence of GPU usage over-limit on the target GPU based on the historical behavior data of each user; The estimated occurrence time providing module is used to provide the estimated occurrence time to each cloud phone user for autonomous decision-making control if the difference between the estimated occurrence time and the current system time is less than a preset difference threshold.
18. The apparatus according to any one of claims 10 to 16, further comprising: An intelligent preloading module is configured to obtain historical user behavior data of the cloud phone users of the monitored cloud phone and each of the associated cloud phones when determining that the usage rate of the target GPU does not exceed the usage rate threshold, predict resources required by the cloud phone users of the monitored cloud phone and each of the associated cloud phones, and utilize the remaining resources to perform intelligent preloading of multiple tasks simultaneously using multithreading and asynchronous processing; or The operation mode adjustment module is used to dynamically adjust the operation mode of the GPU according to the current utilization rate of the target GPU and a preset threshold when it is determined that the utilization rate of the target GPU does not exceed the utilization rate threshold.
19. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the method according to any one of claims 1 to 9.
20. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to enable a computer to execute the method according to any one of claims 1 to 9.
21. A computer program product comprising computer instructions, wherein when the computer instructions are executed by a processor, the steps of the method according to any one of claims 1 to 9 are implemented.
Citation Information
Patent Citations
Program optimization method, device, terminal and storage medium
CN108491275A
Dynamic adjustment method and device for service personalized configuration and medium
CN113806010A