A cloud desktop resource pool dynamic prediction method, system, device, medium and product

By constructing multi-dimensional feature vectors and machine learning models in the cloud desktop system, the number of cloud desktop connection requests is dynamically predicted, enabling intelligent scheduling of the cloud desktop resource pool. This solves the problems of low resource utilization and high response latency, and improves user experience and resource utilization efficiency.

CN120929275BActive Publication Date: 2026-02-27BEIJING JINGXING RUICHUANG SOFTWARE CO LTD
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
CN202511452912.7
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2025-10-13
Publication Date
2026-02-27
Estimated Expiration
2045-10-13

AI Technical Summary

Technical Problem

Traditional cloud desktop systems suffer from low resource utilization, high response latency, and a lack of intelligent predictive capabilities, making it difficult to cope with sudden and periodic fluctuations in user access, resulting in idle or overloaded resources and negatively impacting user experience.

Method used

By preprocessing real-time data based on workstation graph nodes, constructing multi-dimensional feature vectors, and using machine learning models to predict the number of cloud desktop connection requests in future time periods, dynamically calculating resource pool parameters, realizing dynamic adjustment and scheduling strategies for the cloud desktop resource pool, and predicting the available resources required for session needs in advance.

Benefits of technology

It improves resource scheduling efficiency, shortens response latency, enhances resource utilization and service quality, reduces reliance on fixed rules or human experience, and strengthens intelligent prediction capabilities.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120929275B_ABST
    Figure CN120929275B_ABST
Patent Text Reader

Abstract

The application discloses a cloud desktop resource pool dynamic prediction method, system, device, medium and product, relates to the fields of cloud computing, remote cloud desktop management and resource scheduling, and comprises the following steps: based on a workstation graphics node, preprocessing original data collected in real time, and constructing a multi-dimensional feature vector; inputting the multi-dimensional feature vector into a machine learning model, predicting the number of cloud desktop connection requests in a future time period; dynamically calculating cloud desktop resource pool parameters according to the number of cloud desktop connection requests; inputting the cloud desktop resource pool parameters into a cloud desktop session management system, dynamically adjusting the number of started cloud desktops in the cloud desktop resource pool, and synchronously updating a scheduling strategy; and according to the scheduling strategy, predicting required available resources of session demand in advance, and calling the required available resources when the workstation graphics node receives session demand initiated by a user end to a client end. The application improves resource utilization and intelligent prediction capability, and reduces response delay.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the field of cloud computing, remote cloud desktop management and resource scheduling, and particularly relates to a cloud desktop resource pool dynamic prediction method, system, device, medium and product. BACKGROUND

[0002] With the advancement of enterprise digital transformation, cloud desktop technology is widely used in office, education, medical treatment and other fields due to its high flexibility, strong security and low operation and maintenance cost. However, when a user requests to start a cloud desktop in the traditional cloud desktop system, a new virtual session or container instance usually needs to be created for each user. This process not only consumes a large amount of computing resources (such as CPU, memory, etc.), but also causes a long start-up delay, affecting user experience. To solve this problem, a certain number of virtual sessions can be created in advance and placed in a "resource pool". When a user requests to start a cloud desktop, a resource management service can allocate a ready session from the resource pool to the user, instead of creating a new virtual session each time.

[0003] In practical applications, cloud desktop platforms face the following challenges.

[0004] Low resource utilization: The traditional static allocation mechanism is difficult to cope with the burstiness and periodic fluctuations of user access. The static pool has low resource utilization at low load and cannot quickly expand at high load, resulting in idle or overloaded resources.

[0005] Large response delay: The virtual machine is started or the session is created after the user request arrives, causing significant login delay, affecting user experience, and the traditional dynamic adjustment strategy based on threshold lags in response to burst traffic.

[0006] Lack of intelligent prediction capability: Existing systems mostly rely on fixed rules or manual experience for resource allocation, which cannot adapt to complex and variable business scenarios. SUMMARY

[0007] The purpose of the present application is to provide a cloud desktop resource pool dynamic prediction method, system, device, medium and product to solve the problems of low resource utilization, large response delay and lack of intelligent prediction capability.

[0008] To achieve the above purpose, the present application provides the following solutions.

[0009] In a first aspect, the present application provides a cloud desktop resource pool dynamic prediction method, comprising the following steps.

[0010] The workstation graphical node is used to pre-process raw data collected in real time to construct a multi-dimensional feature vector; the raw data includes system resource status and user behavior data; the multi-dimensional feature vector includes user behavior features, resource digestion features, and external environment features.

[0011] The multi-dimensional feature vector is input into a machine learning model to predict the number of cloud desktop connection requests in a future time period; the machine learning model is generated by training historical multi-dimensional feature vectors.

[0012] Cloud desktop resource pool parameters are dynamically calculated according to the number of cloud desktop connection requests; the cloud desktop resource pool parameters include the number of cloud desktops to be started and resource configurations.

[0013] The cloud desktop resource pool parameters are input into a cloud desktop session management system to dynamically adjust the number of started cloud desktops in the cloud desktop resource pool and synchronously update a scheduling strategy; the scheduling strategy includes an uppermost prediction-driven elasticity strategy, an intermediate resource allocation strategy, and a bottom layer runtime strategy; the uppermost prediction-driven elasticity strategy is used to determine scaling according to load changes; the intermediate resource allocation strategy is used to store and call virtual machine specification matching and placement algorithms; the bottom layer runtime strategy is used to store and call session retention and migration rules.

[0014] Required available resources for session demand are predicted in advance according to the scheduling strategy, and the required available resources are called when the workstation graphical node receives a session demand initiated by a user end to a client; the session demand is a remote cloud desktop or application connection request.

[0015] In a second aspect, the application provides a cloud desktop resource pool dynamic prediction system, including the following modules.

[0016] The feature processing module is used to pre-process raw data collected in real time based on a workstation graphical node to construct a multi-dimensional feature vector; the raw data includes system resource status and user behavior data; the multi-dimensional feature vector includes user behavior features, resource digestion features, and external environment features.

[0017] The model training and prediction module is used to input the multi-dimensional feature vector into a machine learning model to predict the number of cloud desktop connection requests in a future time period; the machine learning model is generated by training historical multi-dimensional feature vectors.

[0018] The scheduling control module is used to dynamically calculate cloud desktop resource pool parameters according to the number of cloud desktop connection requests; the cloud desktop resource pool parameters include the number of cloud desktops to be started and resource configurations.

[0019] The scheduling control module is further configured to input the cloud desktop resource pool parameters into a cloud desktop session management system, dynamically adjust the number of started cloud desktops in the cloud desktop resource pool, and synchronously update a scheduling strategy; the scheduling strategy comprises an uppermost prediction-driven elastic strategy, an intermediate layer resource allocation strategy, and a bottom layer runtime strategy; the uppermost prediction-driven elastic strategy is used to determine capacity expansion or contraction according to load changes; the intermediate layer resource allocation strategy is used to store and call a virtual machine specification matching and placement algorithm; and the bottom layer runtime strategy is used to store and call a session retention and migration rule.

[0020] The scheduling control module is further configured to predict required available resources for session demand in advance according to the scheduling strategy, and call the required available resources when the workstation graphics node receives a session demand initiated by a user end to a client; the session demand is a remote cloud desktop or application connection request.

[0021] In a third aspect, the present application provides a computer device, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, and the processor executes the computer program to implement the cloud desktop resource pool dynamic prediction method described above.

[0022] In a fourth aspect, the present application provides a computer readable storage medium having a computer program stored thereon, and the computer program is executed by a processor to implement the cloud desktop resource pool dynamic prediction method described above.

[0023] In a fifth aspect, the present application provides a computer program product comprising a computer program, and the computer program is executed by a processor to implement the cloud desktop resource pool dynamic prediction method described above.

[0024] According to the specific embodiments provided by the present application, the present application has the following technical effects: the present application pre-processes the raw data collected in real time based on the workstation graphics node, combines historical multi-dimensional feature vectors and a machine learning model, dynamically predicts session demand through the machine learning model, obtains the number of cloud desktop connection requests in a future time period, compared with the traditional dynamic adjustment strategy based on a threshold, dynamically predicts the trend of cloud desktop connection, shortens the response delay, determines the cloud desktop resource pool parameters according to the number of cloud desktop connection requests in the future time period obtained by prediction, dynamically adjusts the number of started cloud desktops in the cloud desktop resource pool based on the cloud desktop session management system, and synchronously updates the scheduling strategy, to predict the required available resources for session demand in advance, realizes dynamic scaling of the resource pool, improves the resource scheduling efficiency and service quality, and does not rely on fixed rules or manual experience for resource allocation, and improves the intelligent prediction capability. BRIEF DESCRIPTION OF DRAWINGS

[0025] To more clearly illustrate the technical solutions in the embodiments of this application or the prior art, the drawings used in the embodiments will be briefly introduced below. Obviously, the drawings described below are only some embodiments of this application. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.

[0026] Figure 1 A flowchart of a cloud desktop resource pool dynamic prediction method provided in an embodiment of this application.

[0027] Figure 2 This is a schematic diagram of the training process of a multidimensional feature vector and machine learning model provided in an embodiment of this application.

[0028] Figure 3 This is a schematic diagram of the dynamic scheduling control logic of a resource pool based on predicted values, provided in an embodiment of this application.

[0029] Figure 4 This is a schematic diagram of the interaction architecture between a user terminal and a cloud desktop resource pool dynamic prediction system provided in an embodiment of this application.

[0030] Figure 5 This is a schematic diagram of the prediction error detection and fault tolerance processing flow provided in an embodiment of this application. Detailed Implementation

[0031] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those skilled in the art without creative effort are within the scope of protection of this application.

[0032] To make the objectives, features and advantages of this application more apparent and understandable, the application will be further described in detail below with reference to the accompanying drawings and specific embodiments.

[0033] like Figure 1 As shown in the figure, this application embodiment provides a method for dynamic prediction of cloud desktop resource pools, including the following steps.

[0034] S1: Based on the workstation graphical node, preprocess the raw data collected in real time to construct a multi-dimensional feature vector; the raw data includes system resource status and user behavior data; the multi-dimensional feature vector includes user behavior features, resource consumption features and external environment features.

[0035] S2: input the multi-dimensional feature vector into a machine learning model to predict the number of cloud desktop connection requests in a future time period; the machine learning model is generated by training according to historical multi-dimensional feature vectors.

[0036] S3: dynamically calculate cloud desktop resource pool parameters according to the number of cloud desktop connection requests; the cloud desktop resource pool parameters include the number of cloud desktops to be started and resource configuration.

[0037] S4: input the cloud desktop resource pool parameters into a cloud desktop session management system, dynamically adjust the number of started cloud desktops in the cloud desktop resource pool, and synchronously update the scheduling strategy; the scheduling strategy includes an uppermost prediction-driven elasticity strategy, an intermediate resource allocation strategy, and a bottom layer runtime strategy; the uppermost prediction-driven elasticity strategy is used to determine the expansion and contraction according to the load change; the intermediate resource allocation strategy is used to store and call virtual machine specification matching and placement algorithms; the bottom layer runtime strategy is used to store and call session retention and migration rules.

[0038] S5: according to the scheduling strategy, predict the required available resources of the session demand in advance, and call the required available resources when the workstation graphics node receives the session demand initiated by the user end to the client; the session demand is a remote cloud desktop or application connection request.

[0039] In practical application, data collection and preprocessing: first, collect raw data and clean, denoise, and normalize the raw data; second, construct a multi-dimensional feature vector, including user behavior features, resource consumption features, and external environment features.

[0040] In practical application, as shown in Figure 2 , the input raw data includes user behavior data, historical load data, and external environment data, and then data cleaning is performed, abnormal values are removed by a sliding window algorithm, and missing data is filled. Use the Seasonal-Trend decomposition using Loess (STL) method to decompose the time series and extract trend, period, and residual features. Convert the raw data into high-quality features that can be used by the machine learning model, and feature engineering is the key to the model effect. The processing process needs to be efficient to meet the real-time requirements of prediction.

[0041] Use historical multi-dimensional feature vectors to train a prediction model, and predict the number of cloud desktop connection requests in a future time period based on real-time features (i.e., multi-dimensional feature vectors composed of raw data at the current time). Collect the latest data every Δ time (e.g., 5 minutes), input the model to generate a prediction value of session demand in the future T minutes.

[0042] In practical applications, the historical multi-dimensional feature vectors are divided into a training set and a test set for subsequent model training and evaluation.

[0043] The machine learning model construction specifically includes: training the historical multi-dimensional feature vectors using a supervised learning algorithm; constructing a prediction model to output the number of cloud desktop connection requests in the next N minutes / hours; and dynamically calculating the required number of cloud desktops to start, resource configuration level, and other parameters according to the prediction value. The prediction value is the number of cloud desktop connection requests in the next N minutes / hours. The supervised learning algorithm includes Xtreme Gradient Boosting (XGBoost), Long Short-Term Memory (LSTM), Light Gradient Boosting Machine (LightGBM), Prophet, and the like.

[0044] The specific steps of dynamic calculation are as follows.

[0045] Step 1: Basic difference Δ calculation.

[0046] Δ = P - C; where P is the number of cloud desktop connection requests predicted by the machine learning model in the next N minutes / hours; and C is the number of currently running cloud desktops.

[0047] Boundary check: if Δ > 0: need to expand; if Δ < 0: can shrink.

[0048] Scenario: predict the number of cloud desktop connection requests in the next 15 minutes P = 120, the number of currently running cloud desktops C = 100, and the maximum capacity M = 200, then Δ = 120 - 100 = 20.

[0049] Step 2: Buffer adjustment calculation.

[0050] Actual start number = max(0, min(Δ, M - C) × (1 + alpha)).

[0051] alpha = 0.3 × (1 - confidence) + 0.7 × alarm_level.

[0052] Where max: take the maximum value in the parentheses; min: take the minimum value in the parentheses; confidence: model prediction confidence (0-1); alarm_level: system alarm level (0-1).

[0053] Scenario: assume confidence = 0.8, alarm_level = 0.2.

[0054] alpha = 0.3 x (1 - 0.8) + 0.7 x 0.2 = 0.2.

[0055] Actual start number = min(20, 200 - 100) x (1 + 0.2) = 20 x 1.2 = 24.

[0056] Step 3: Resource configuration level calculation, as shown in Table 1.

[0057] 1) CPU level calculation.

[0058] 1, P x U_cpu < 0.5 x Total_Core.

[0059] Where, P: process / instance number; U_cpu: average CPU usage; Total_Core: total CPU core number.

[0060] 2, 0.5 x Total_Core <= P x U_cpu < 0.8 x Total_Core.

[0061] Where, P x U_cpu: total CPU usage.

[0062] 3, otherwise.

[0063] Where, otherwise: other cases.

[0064] U_cpu: historical CPU usage sliding window mean.

[0065] The levels are as follows.

[0066] Level 1 (Level 1): 2 cores (basic office, multitasking).

[0067] Level 2 (Level 2): 4 cores (development test).

[0068] Level 3 (Level 3): 8 cores (graphic design, compilation build).

[0069] 2) Memory level calculation.

[0070] Mem_Level = [P x U_mem 95 / 32].

[0071] Where, Mem_Level: memory level; U_mem 95 : 95th percentile memory usage; 32: standard memory unit size; []: rounding up

[0072] U_mem: Memory usage 95th percentile (GB); 95: represents the 95th percentile, a statistical concept, commonly used in performance monitoring and capacity planning, means that in the observation period, 95% of the time the memory usage is less than this value, only 5% of the time (usually traffic peak) will exceed this value.

[0073] Ranking: 1 level per 32 GB (example: 64 GB→Level 2).

[0074] Scenario: Assume historical data: U_cpu=35%, U_mem 95 =12GB.

[0075] CPU rank: P x U_cpu=120 x 0.35=42<0.5 x 128=64→Level 1.

[0076] Memory rank: Mem_Level=[(120 x 12) / 32]=45→Level 2.

[0077] Table 1 Resource configuration level table

[0078]

[0079] In an exemplary embodiment, S3 specifically includes the following steps.

[0080] S31: Determine the basic difference according to the number of cloud desktop connection requests and the number of currently running cloud desktops.

[0081] S32: Determine the expansion of the cloud desktop resource pool according to the basic difference.

[0082] S33: Based on the expansion, calculate the number of cloud desktops to be started and resource configuration; the resource configuration includes GPU level configuration and memory level configuration.

[0083] In an exemplary embodiment, S4 specifically includes the following steps.

[0084] S41: Input the cloud desktop resource pool parameters to the cloud desktop session management system, and judge whether the number of cloud desktop connection requests is rising based on the resource pool dynamic scheduling control logic, if yes, execute S42, if no, execute S43.

[0085] S42: Start the standby cloud desktop in the cloud desktop resource pool in advance, and load the commonly used software cache.

[0086] S43: Release the idle started cloud desktop resources.

[0087] S45: synchronously update the scheduling strategy while dynamically adjusting the number of started cloud desktops in the cloud desktop resource pool, record the scheduling effect and feed back to the machine learning model.

[0088] In practical applications, dynamic prediction and resource pool adjustment, input the cloud desktop resource pool parameters into the cloud desktop session management system; based on the resource pool dynamic scheduling control logic of the predicted value, dynamically adjust the number of started cloud desktops in the resource pool; if the predicted number of cloud desktop connection requests increases, start some cloud desktops in advance and load the commonly used software cache; if the predicted load decreases, release the idle cloud desktop resources and reduce energy consumption; synchronously update the scheduling strategy, record the scheduling effect and feed back to the model training module to continuously optimize the prediction accuracy.

[0089] Among them, starting some cloud desktops in advance includes two parts: a. Start cloud desktops to meet the predicted growth (i.e. if Δ>0, the base difference Δ=P-C); b. Start additional cloud desktops to establish a buffer (i.e. the buffer part, controlled by the buffer coefficient α). Therefore, the cloud desktops started in advance are the sum of the above two parts.

[0090] In an exemplary embodiment, the resource pool dynamic scheduling control logic specifically includes the following steps.

[0091] S411: receive the cloud desktop resource pool parameters and the number of cloud desktop connection requests, and obtain the current cloud desktop resource pool state.

[0092] S412: calculate the difference between the number of cloud desktop connection requests and the current resource pool capacity based on the current cloud desktop resource pool state.

[0093] S413: perform a scheduling action according to the difference; the scheduling action includes expansion operation and contraction operation.

[0094] S414: when the scheduling action is completed, send a scheduling completion signal, and handle abnormal situations for abnormal situations.

[0095] In an exemplary embodiment, S413 specifically includes: if the difference is greater than 0, trigger the expansion operation; if the difference is less than 0, trigger the contraction operation based on the number of cloud desktop connection requests and the dynamic threshold; the dynamic threshold is the maximum number of sessions dynamically adjusted according to different session types and resource conditions.

[0096] In practical applications, the dynamic threshold refers to the maximum number of sessions, which is calculated by the scheduling management system according to the current system resources. If the predicted number of cloud desktop connection requests is greater than the maximum number of sessions, it means that the prediction model is wrong, and the error correction is performed according to the flow shown in Figure 5 Based on the scheduling strategy, the number of jobs of the node will never exceed the maximum number of sessions.

[0097] In practical applications, as shown in Figure 3 After receiving the predicted value, if the predicted value exceeds the current resource pool capacity, a capacity expansion operation is triggered; if the predicted value is lower than a dynamic threshold, a capacity reduction operation is triggered, and an anomaly detection model is introduced to identify situations with large prediction deviations; when the prediction error exceeds a set threshold, a conservative scheduling strategy is switched to; a manual intervention interface is supported to facilitate administrator intervention.

[0098] In practical applications, the formulation of scheduling strategies (buffer coefficient, start-stop threshold, preloading rule) needs to balance resource cost and user experience; the operation needs to be robust and rollbackable to avoid resource leakage or avalanche; the degree of automation is high.

[0099] In an exemplary embodiment, an abnormal situation is handled, specifically including: introducing an anomaly detection model to identify abnormal situations; when an abnormal situation is identified, switching to a conservative scheduling strategy and setting a manual intervention interface; the conservative scheduling strategy is a static rule based on administrator static settings; the manual intervention interface is used for administrator access adjustment.

[0100] In practical applications, adaptive feedback and model iteration are performed, and after each prediction, the actual session demand (i.e. the number of session requests in the next N minutes / hours) and the error of the predicted value are fed back to the model based on the updated scheduling strategy, and the LSTM weight is updated through online gradient descent. For sudden abnormal events (such as false demand peaks caused by DDoS attacks), noise data is filtered through a confidence threshold. Model snapshots are saved regularly to support rollback to a stable version (e.g. a new model is generated every week and released in a gray manner).

[0101] The application also provides a cloud desktop resource pool dynamic prediction system, comprising the following modules.

[0102] A feature processing module is configured to preprocess raw data collected in real time based on workstation graph nodes and construct a multi-dimensional feature vector; the raw data includes system resource status and user behavior data; the multi-dimensional feature vector includes user behavior features, resource digestion features, and external environment features.

[0103] A model training and prediction module is configured to input the multi-dimensional feature vector into a machine learning model to predict the number of cloud desktop connection requests in a future time period; the machine learning model is generated by training historical multi-dimensional feature vectors.

[0104] A scheduling control module is configured to dynamically calculate cloud desktop resource pool parameters based on the number of cloud desktop connection requests; the cloud desktop resource pool parameters include the number of cloud desktops to be started and resource configuration.

[0105] The scheduling control module is further configured to input the cloud desktop resource pool parameters into a cloud desktop session management system, dynamically adjust the number of started cloud desktops in the cloud desktop resource pool, and synchronously update the scheduling strategy; the scheduling strategy comprises an uppermost prediction-driven elasticity strategy, an intermediate resource allocation strategy, and a bottom layer runtime strategy; the uppermost prediction-driven elasticity strategy is used to determine capacity expansion and contraction according to load changes; the intermediate resource allocation strategy is used to store and call virtual machine specification matching and placement algorithms; and the bottom layer runtime strategy is used to store and call session retention and migration rules.

[0106] The scheduling control module is further configured to predict required available resources of session demand in advance according to the scheduling strategy, and call the required available resources when the workstation graphics node receives a session demand initiated by a user terminal to a client; the session demand is a remote cloud desktop or application connection request.

[0107] In actual application, the application further comprises a data acquisition module and a feedback optimization module, wherein the data acquisition module is configured to acquire original data before the feature processing module processes; and the feedback optimization module is configured to feed back an optimization machine learning module after the scheduling control module performs scheduling control.

[0108] As shown in Figure 4 A user terminal n initiates a remote cloud desktop or application connection request through a client software (such as a Client App or a browser), and the request usually first reaches a resource scheduling system and connection; the resource scheduling system and connection agent queries a resource pool state by using a plurality of workstation graphics nodes m, and finds an idle virtual session that is ready, wherein n, m = 1, 2, 3, …. Since the scheduling control module has started and prepared resources in advance according to prediction, available resources can usually be quickly found. The user terminal is a service object of the system, and experience (connection speed and cloud desktop response speed) is the ultimate standard for measuring whether the cloud desktop resource pool dynamic prediction system is successful. The accuracy of scheduling prediction directly determines whether the end user can obtain an “instantly available” experience.

[0109] As shown in Figure 5As shown, the monitoring system actually runs the effect, collects feedback data, and is used for continuous evaluation and optimization of the prediction model and scheduling strategy; continuously record the number of cloud desktop connection requests predicted by the model in the next N minutes, record the scheduling actions (how many virtual machines / sessions are started / released) and the triggering reasons; periodically calculate the prediction error (MAE, RMSE, MAPE) of the model on the test set and the latest production data; analyze the pattern of prediction bias and compare the effects of different models or different parameter versions; deploy the new model with better verification effect to replace the old model in the production environment; adjust the buffer coefficient, start-stop threshold, preloading rule and other scheduling parameters according to resource utilization, cost saving and user experience feedback. Among them, the prediction error includes Mean Absolute Error (MAE), Root Mean Squared Error (RMSE) and Mean Absolute Percentage Error (MAPE).

[0110] In an example embodiment, a computer device is provided, including a memory and a processor, the memory storing a computer program, and the processor implementing the steps in the above method embodiments when executing the computer program. The computer device can be a server or a terminal. The computer device includes a processor, a memory, an input / output interface (I / O) 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. The processor of the computer device is used 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 operating system and the computer program in the non-volatile storage medium to run. The database of the computer device is used to store data to be processed. The input / output interface of the computer device is used to exchange information between the processor and external devices. The communication interface of the computer device is used to communicate with external terminals through network connection. The computer program is executed by the processor to implement the above method.

[0111] In an example embodiment, a computer device is provided, including a memory and a processor, the memory storing a computer program, and the processor implementing the steps in the above method embodiments when executing the computer program.

[0112] In an example embodiment, a computer readable storage medium is provided, storing a computer program, which is executed by a processor to implement the steps in the above method embodiments.

[0113] In an example embodiment, a computer program product is provided, including a computer program which, when executed by a processor, implements the steps of any of the above method embodiments.

[0114] 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.) involved in the present application are all information and data authorized by the user or authorized by all parties, and the collection, use and processing of related data need to comply with relevant regulations.

[0115] It can be understood by those skilled in the art that all or part of the processes in the above-mentioned embodiments can be completed by computer program instructions related hardware, and the computer program can be stored in a non-volatile computer readable storage medium. When the computer program is executed, it can include the processes of the above-mentioned embodiments. Any reference to memory, database or other medium used in the embodiments provided by the present application can include at least one of non-volatile and volatile memory. Non-volatile memory can include read-only memory (Read-Only Memory, ROM), magnetic tape, floppy disk, flash memory, optical storage, high-density embedded non-volatile memory, resistive memory (ReRAM), magnetoresistive random access memory (Magnetoresistive Random Access Memory, MRAM), ferroelectric memory (Ferroelectric Random Access Memory, FRAM), phase change memory (Phase Change Memory, PCM), graphene memory, etc. Volatile memory can include random access memory (Random Access Memory, RAM) or external cache memory, etc. As an illustration but not limitation, RAM can be in various forms, such as static random access memory (Static Random Access Memory, SRAM) or dynamic random access memory (Dynamic Random Access Memory, DRAM), etc.

[0116] The database involved in the embodiments provided by the present application can include at least one of a relational database and a non-relational database. The non-relational database can include a distributed database based on blockchain, etc., without being limited thereto. The processor involved in the embodiments provided by the present application can be a general-purpose processor, a central processing unit, a graphics processing unit, a digital signal processor, a programmable logic device, a data processing logic device based on quantum computing, etc., without being limited thereto.

[0117] Any technical features in the above embodiments can be combined, and for the sake of brevity, not all possible combinations are described above, however, it should be understood that the application encompasses all possible combinations of the technical features unless such a combination is not technically possible.

[0118] The principles and implementation manners of the present application are described herein by using specific examples, and the above embodiments are only used to help understand the method of the present application and its core idea; meanwhile, according to the idea of the present application, the specific implementation manners and application scopes will be changed by those skilled in the art. In conclusion, the content of the present specification should not be understood as a limitation of the present application.

Claims

1. A cloud desktop resource pool dynamic prediction method, characterized in that, The method comprises the following steps: Based on the workstation graphical node, the raw data collected in real time is preprocessed to construct a multi-dimensional feature vector; the raw data includes system resource state and user behavior data; the multi-dimensional feature vector includes user behavior characteristics, resource digestion characteristics and external environment characteristics; The time series is decomposed using the seasonal-trend decomposition method to extract trend, cycle and residual characteristics; The multi-dimensional feature vector is input into a machine learning model to predict the number of cloud desktop connection requests in the future time period; the machine learning model is generated by training historical multi-dimensional feature vectors; the historical multi-dimensional feature vectors are trained using a supervised learning algorithm to construct a machine learning model, wherein the supervised learning algorithm includes extreme gradient boosting, long short-term memory network, lightweight gradient or prophet; The cloud desktop resource pool parameters are dynamically calculated according to the number of cloud desktop connection requests, specifically including: The basic difference is determined according to the number of cloud desktop connection requests and the number of currently running cloud desktops; Δ=P-C; wherein Δ is the basic difference; P is the number of cloud desktop connection requests predicted by the machine learning model in the future N minutes / hours; C is the number of currently running cloud desktops; The expansion of the cloud desktop resource pool is determined according to the basic difference; if Δ>0: expansion is needed; if Δ<0: contraction is possible; the actual start number is max(0, min(Δ, M-C)×(1+alpha)); alpha=0.3×(1-confidence)+0.7×alarm_level; wherein max: the maximum value in the parentheses; min: the minimum value in the parentheses; confidence: model prediction confidence (0-1); alarm_level: system alarm level; Based on the expansion condition, the number of cloud desktops to be started and resource configuration are calculated; the resource configuration includes GPU level configuration and memory level configuration; the cloud desktop resource pool parameters include the number of cloud desktops to be started and resource configuration; Mem_Level=[P×U_mem 95 / 32]; wherein, Mem_Level: memory level; U_mem 95 : 95th percentile memory usage; 32: standard memory unit size; []: rounding up; The cloud desktop resource pool parameters are input into the cloud desktop session management system to dynamically adjust the number of started cloud desktops in the cloud desktop resource pool and synchronously update the scheduling strategy; the scheduling strategy includes an uppermost prediction-driven elasticity strategy, an intermediate resource allocation strategy, and a bottom layer runtime strategy; the uppermost prediction-driven elasticity strategy is used to determine expansion and contraction according to load changes; the intermediate resource allocation strategy is used to store and call virtual machine specification matching and placement algorithms; the bottom layer runtime strategy is used to store and call session retention and migration rules; According to the scheduling strategy, the required available resources for session demand are predicted in advance, and the required available resources are called when the workstation graphical node receives a session demand initiated by the user end to the client; the session demand is a remote cloud desktop or application connection request.

2. The cloud desktop resource pool dynamic prediction method of claim 1, wherein, The cloud desktop resource pool parameters are input into the cloud desktop session management system to dynamically adjust the number of started cloud desktops in the cloud desktop resource pool and synchronously update the scheduling strategy, specifically including: The cloud desktop resource pool parameters are input into the cloud desktop session management system to determine whether the number of cloud desktop connection requests is increasing based on the resource pool dynamic scheduling control logic; If yes, the standby cloud desktop in the cloud desktop resource pool is started in advance, and the commonly used software cache is loaded; If not, the idle started cloud desktop resources are released. The scheduling strategy is updated synchronously while the number of started cloud desktops in the dynamic cloud desktop resource pool is adjusted, and the scheduling effect is recorded and fed back to the machine learning model.

3. The cloud desktop resource pool dynamic prediction method of claim 2, wherein, The resource pool dynamic scheduling control logic specifically comprises: The cloud desktop resource pool parameters and the number of cloud desktop connection requests are received to obtain the current cloud desktop resource pool state; The difference between the number of cloud desktop connection requests and the current resource pool capacity is calculated based on the current cloud desktop resource pool state; The scheduling action is performed according to the difference; the scheduling action includes expansion operation and contraction operation; When the scheduling action is completed, a scheduling completion signal is sent, and abnormal situation processing is performed for abnormal situations.

4. The cloud desktop resource pool dynamic prediction method of claim 3, wherein, The scheduling action is performed according to the difference, specifically including: If the difference is greater than 0, the expansion operation is triggered; If the difference is less than 0, the contraction operation is triggered based on the number of cloud desktop connection requests and a dynamic threshold; the dynamic threshold is the maximum number of sessions dynamically adjusted according to different session types and resource conditions.

5. The method of claim 3, wherein, The abnormal situation processing for abnormal situations specifically includes: An abnormality detection model is introduced to identify abnormal situations; When an abnormal situation is identified, a conservative scheduling strategy based on administrator static settings is switched to, and a manual intervention interface is set; the manual intervention interface is used for administrator access adjustment.

6. A cloud desktop resource pool dynamic prediction system, characterized in that, The cloud desktop resource pool dynamic prediction system performs the cloud desktop resource pool dynamic prediction method of any one of claims 1-5, and the cloud desktop resource pool dynamic prediction system comprises: A feature processing module is configured to preprocess real-time collected raw data based on workstation graph nodes to construct a multi-dimensional feature vector; the raw data includes system resource state and user behavior data; the multi-dimensional feature vector includes user behavior features, resource digestion features, and external environment features; A model training and prediction module is configured to input the multi-dimensional feature vector into a machine learning model to predict the number of cloud desktop connection requests in a future time period; the machine learning model is generated by training historical multi-dimensional feature vectors; A scheduling control module is configured to dynamically calculate cloud desktop resource pool parameters based on the number of cloud desktop connection requests; the cloud desktop resource pool parameters include the number of required started cloud desktops and resource configuration; The scheduling control module is further configured to input the cloud desktop resource pool parameters into a cloud desktop session management system, dynamically adjust the number of started cloud desktops in the cloud desktop resource pool, and update the scheduling strategy synchronously; the scheduling strategy includes an uppermost prediction-driven elastic strategy, an intermediate layer resource allocation strategy, and a bottom layer runtime strategy; the uppermost prediction-driven elastic strategy is used to determine expansion and contraction according to load changes; the intermediate layer resource allocation strategy is used to store and call virtual machine specification matching and placement algorithms; the bottom layer runtime strategy is used to store and call session retention and migration rules; The scheduling control module is further configured to predict required available resources of a session demand in advance according to the scheduling strategy, and to call the required available resources when the workstation graphical node receives a session demand initiated by a user terminal to a client; the session demand is a remote cloud desktop or an application connection request.

7. A computer device comprising: A memory, a processor, and a computer program stored on the memory and executable on the processor, wherein the processor executes the computer program to implement the cloud desktop resource pool dynamic prediction method of any one of claims 1-5.

8. A computer-readable storage medium having stored thereon a computer program, characterized in that, The computer program is executed by the processor to implement the cloud desktop resource pool dynamic prediction method of any one of claims 1-5.

9. A computer program product comprising a computer program, characterized in that, The computer program is executed by the processor to implement the cloud desktop resource pool dynamic prediction method of any one of claims 1-5. The computer program is executed by the processor to implement the cloud desktop resource pool dynamic prediction method of any one of claims 1-5.

Citation Information

Patent Citations

  • Cloud platform capacity prediction method and system based on resource pool characteristics

    CN120342974A