Computing power scheduling method and device, equipment, storage medium and product
By acquiring historical computing power data of the tenant queue and using the random forest regression algorithm for computing power prediction and dynamic adjustment, the problem of uneven computing power scheduling in existing technologies is solved, and efficient computing power utilization is achieved.
Patent Information
- Application Number
- CN202511413144.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2025-09-29
- Publication Date
- 2026-01-30
AI Technical Summary
The lack of scientific theoretical guidance in the scheduling of computing power on existing big data platforms leads to uneven use of computing power and an inability to flexibly schedule it according to tenant needs, resulting in idleness and inefficiency.
By acquiring historical computing power usage data of tenant queues, computing power prediction is performed using the random forest regression algorithm. Combining computing power utilization and task completion rate, computing power allocation is dynamically adjusted to improve scheduling accuracy.
It enables flexible computing power scheduling based on tenant needs, improving computing power utilization and scheduling accuracy, and reducing idleness and waste.
Smart Images

Figure CN121433859A_ABST
Abstract
Description
TECHNICAL FIELD
[0001] The present application belongs to the field of data processing, and particularly relates to a computing power scheduling method and device, equipment, a storage medium and a product. BACKGROUND
[0002] With the rapid development of computing power network technology, cluster computing power scheduling is widely used in different computing power network scenarios, and higher requirements for the accuracy of cluster computing power scheduling are also put forward. The existing big data platform computing power adjustment lacks scientific theory guidance, and is mostly allocated by experience and unevenly uses computing power. The data application characteristics of each tenant and the computing power demand of each period are different. After unified expansion, the cluster computing power increases, but the low utilization time of the computing power also increases synchronously. The computing power cannot be flexibly scheduled according to the tenant demand, resulting in idle computing power, low use efficiency and waste.
[0003] Therefore, a computing power scheduling method capable of improving the accuracy of computing power scheduling is needed. SUMMARY
[0004] The embodiments of the present application provide a computing power scheduling method, which can improve the accuracy of computing power scheduling.
[0005] In a first aspect, the embodiments of the present application provide a computing power scheduling method, which comprises: obtaining historical computing power usage data of a plurality of tenant queues, and predicting the computing power required by each of the tenant queues in a first time period based on the historical computing power usage data to obtain a plurality of predicted computing power demands, the tenant queue being a queue of a tenant to be scheduled for computing power; determining a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power demands, and obtaining a first used computing power of each of the tenant queues in a second time period, the second time period being located within the first time period, the first allocated computing power being used to represent the basic computing power allocated to the tenant queue in the first time period, and the first used computing power being the computing power used by the tenant queue in the second time period; determining a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power, the third time period being located within the first time period and being a next time period of the second time period, the variable adjustment computing power being used to represent the computing power that needs to be adjusted in the tenant queue in the third time period; determining a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power, so as to schedule the computing power of each of the tenant queues based on the to-be-allocated computing power. In a second aspect, an embodiment of the present application provides a computing power scheduling device, the device comprising: a first obtaining module configured to obtain historical computing power usage data of a plurality of tenant queues, and predict computing power required by each of the tenant queues in a first time period based on the historical computing power usage data to obtain a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be scheduled for computing power; a first determining module configured to determine a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, and obtain a first used computing power of each of the tenant queues in a second time period, the second time period being within the first time period, the first allocated computing power being used to represent a basic computing power allocated to the tenant queue in the first time period, and the first used computing power being a computing power used by the tenant queue in the second time period; a second determining module configured to determine a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power, the third time period being within the first time period and being a next time period of the second time period, the variable adjustment computing power being used to represent a computing power that needs to be adjusted in the tenant queue in the third time period; and a first scheduling module configured to determine a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power, so as to schedule computing power for each of the tenant queues based on the to-be-allocated computing power.
[0006] In a third aspect, an embodiment of the present application provides an electronic device, the electronic device comprising a processor, a memory, and a program or instructions stored in the memory and executable on the processor, the program or instructions being executed by the processor to implement the steps of the method according to the first aspect.
[0007] In a fourth aspect, an embodiment of the present application provides a readable storage medium, the readable storage medium storing a program or instructions, the program or instructions being executed by a processor to implement the steps of the method according to the first aspect.
[0008] In a fifth aspect, an embodiment of the present application provides a computer program product, the computer program product being executed by a processor to implement the steps of the method according to the first aspect.
[0009] In a sixth aspect, an embodiment of the present application provides a chip, the chip comprising a processor and a communication interface, the communication interface being coupled to the processor, and the processor being configured to run a program or instructions to implement the method according to the first aspect.
[0010] In the embodiment of the present application, the historical computing power usage data of a plurality of tenant queues is obtained, and the computing power required by each of the tenant queues in a first time period is predicted based on the historical computing power usage data to obtain a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be scheduled for computing power; a first allocated computing power of each of the tenant queues in the first time period is determined based on each of the predicted computing power requirements, and a first used computing power of each of the tenant queues in a second time period is obtained, the second time period being located within the first time period, the first allocated computing power representing the basic computing power allocated to the tenant queue in the first time period, and the first used computing power being the computing power used by the tenant queue in the second time period; a variable adjustment computing power of each of the tenant queues in a third time period is determined based on the first allocated computing power and the first used computing power, the third time period being located within the first time period and being a next time period of the second time period, the variable adjustment computing power representing the computing power that needs to be adjusted in the tenant queue in the third time period; a to-be-allocated computing power of each of the tenant queues in the third time period is determined based on the first allocated computing power and the variable adjustment computing power, so as to schedule the computing power of each of the tenant queues based on the to-be-allocated computing power, which can improve the accuracy of computing power scheduling. BRIEF DESCRIPTION OF DRAWINGS
[0011] Figure 1 is a flowchart of a computing power scheduling method provided by an embodiment of the present application; Figure 2 is a flowchart of a second computing power scheduling method provided by an embodiment of the present application; Figure 3 is a flowchart of a third computing power scheduling method provided by an embodiment of the present application; Figure 4 is a structural diagram of a computing power scheduling device provided by an embodiment of the present application; Figure 5 is a structural diagram of a computing power scheduling device provided by an embodiment of the present application. DETAILED DESCRIPTION
[0012] The technical solutions in the embodiments of the present application will be described clearly and completely below with reference to the drawings in the embodiments of the present application. Obviously, the described embodiments are only some of the embodiments of the present application, rather than all the embodiments of the present application. Based on the embodiments in the present application, all other embodiments obtained by those of ordinary skill in the art without creative work fall within the scope of protection of the present application.
[0013] The terms "first", "second", etc. in the specification and claims of the present application are used to distinguish similar objects, and are not used to describe a specific order or sequence. It should be understood that the data used in this way can be interchanged under appropriate circumstances, so that the embodiments of the present application can be implemented in an order other than those illustrated or described herein, and the objects distinguished by "first", "second", etc. are generally of a kind and do not limit the number of objects, for example, the first object can be one or more. In addition, "and / or" in the specification and claims indicates at least one of the connected objects, and the character " / ", generally indicates that the objects before and after are in a "or" relationship.
[0014] The power scheduling method provided by the embodiments of the present application will be described in detail below in combination with the drawings, through specific embodiments and application scenarios.
[0015] Figure 1 An embodiment of the present application provides a power scheduling method, which can be executed by an electronic device, which can include a server and / or a terminal device, such as a vehicle-mounted terminal or a mobile phone terminal. In other words, the method can be executed by software or hardware installed on a power scheduling device, and the method includes the following steps: Step 102: Obtain historical power usage data of a plurality of tenant queues, and predict the required power of each tenant queue in a first time period based on the historical power usage data, to obtain a plurality of predicted power requirements.
[0016] Wherein, the tenant queue is the queue of the tenant to be scheduled for power.
[0017] The execution subject of the power scheduling method described in the present application can be a power scheduling system, a power scheduling software, or other execution subjects, and the embodiments of the present application will be described taking the power scheduling system as an example.
[0018] The power scheduling system obtains historical power usage data of a plurality of tenant queues, wherein the tenant queue is a queue allocated to a tenant, each tenant queue is used to execute the power task required by each tenant, and the historical power usage data is the power data used by each tenant queue in a plurality of time periods in the past. The relationship between the tenant queue and the tenant can be a one-to-one relationship, for example, one tenant corresponds to one tenant queue, or a one-to-many relationship, for example, one tenant corresponds to multiple tenant queues, but each tenant queue can only correspond to one tenant. The historical power usage data can be the amount of power used, which can be the power data used by the tenant queue at each time point or time period in the past one day, or the power data used at each time point or time period in the past three days.
[0019] After obtaining the historical computing power usage data of the plurality of tenant queues, the computing power scheduling system predicts the computing power required by each tenant queue in the first time period based on the historical computing power usage data of the plurality of tenant queues, thereby obtaining the predicted computing power requirement of each tenant queue in the first time period. When predicting the computing power based on the historical computing power data of the plurality of tenant queues, the computing power scheduling system can predict the computing power required in the first time period based on the historical computing power data of each tenant queue, and can also train a model based on the historical computing power data of the plurality of tenant queues, thereby predicting the computing power required by each tenant queue in the first time period based on the pre-trained computing power prediction model.
[0020] Specifically, when predicting the computing power required by each tenant queue in the first time period based on the historical computing power data of each tenant queue, the computing power scheduling system can determine the historical computing power data of each tenant queue in a plurality of time periods within a day, and determine the predicted computing power requirement based on the historical computing power data at the same time as the first time period, for example, when the first time period is from 12:00 to 13:00 and the historical consumed computing power of the tenant queue is A from 12:00 to 13:00 on September 1, it can be predicted that the predicted computing power requirement of the tenant queue in the first time period (from 12:00 to 13:00) is also A; or when the first time period is from 12:00 to 13:00 and the historical consumed computing power of the tenant queue is A, B, and C from 12:00 to 13:00 on September 1, 2, and 3, respectively, it can be predicted that the predicted computing power requirement of the tenant queue in the first time period (from 12:00 to 13:00) is (A+B+C) / 3. When predicting the computing power required by each tenant queue in the first time period based on the pre-trained computing power prediction model, the computing power scheduling system can train the model based on the historical computing power data of each tenant queue, so that the pre-trained computing power prediction model can predict the computing power required by each tenant queue in each time period.
[0021] Step 104: determining a first allocated computing power of each tenant queue in the first time period based on each predicted computing power requirement, and obtaining a first used computing power of each tenant queue in a second time period.
[0022] The second time period is located within the first time period, the first allocated computing power represents the basic computing power allocated to the tenant queue in the first time period, and the first used computing power is the computing power used by the tenant queue in the second time period.
[0023] After determining the required computing power of each tenant queue in the first time period (i.e., the predicted computing power requirement), the computing power scheduling system determines the computing power allocated to each tenant queue (i.e., the first allocated computing power) based on the predicted computing power requirement of each tenant queue in the first time period. The value of the first allocated computing power can be greater than or equal to the value of the predicted computing power requirement. After determining the first allocated computing power, the computing power scheduling system allocates the corresponding computing power to the tenant queue based on the determined first allocated computing power.
[0024] Specifically, the predicted computing power requirement is the predicted computing power required by the tenant queue, and various situations may occur in actual applications, and temporary computing power requirement may increase. Therefore, the computing power scheduling system increases a part of the computing power for fault tolerance based on the predicted computing power when allocating the computing power to the tenant queue, so that the temporarily increased tasks can still be processed when the tasks to be executed in the tenant queue temporarily increase.
[0025] After determining the first allocated computing power of each tenant queue in the first time period, the computing power scheduling system obtains the first used computing power of each tenant queue in the second time period, which is within the first time period. For example, when the first time period is from 12:00 to 13:00, the second time period can be from 12:00 to 12:05, or from 12:30 to 12:35. That is, after allocating the computing power to each tenant queue in the first time period, the computing power scheduling system further divides the first time period into multiple second time periods and obtains the computing power used by the tenant queue in each second time period, i.e., the first used computing power.
[0026] Step 106: determining the variable adjustment computing power of each tenant queue in a third time period based on the first allocated computing power and the first used computing power.
[0027] The third time period is within the first time period and is the next time period of the second time period, and the variable adjustment computing power represents the computing power that needs to be adjusted in the tenant queue in the third time period.
[0028] After determining the first allocated computing power and the first used computing power, the computing power scheduling system determines the variable adjustment computing power of each tenant queue in the third time period based on the first allocated computing power of each tenant queue in the first time period and the first used computing power in the second time period. The third time period is within the first time period and is the next time period of the second time period. For example, when the first time period is from 12:00 to 13:00 and the second time period is from 12:00 to 12:05, the third time period is from 12:05 to 12:10; when the first time period is from 12:00 to 13:00 and the second time period is from 12:30 to 12:35, the third time period is from 12:35 to 12:40.
[0029] The first time period includes the second time period and the third time period because the first allocated computing power allocated in the first time period is also the first allocated computing power allocated in the second time period and the third time period. That is, the first allocated computing power obtained by the computing power scheduling system actually represents the first allocated computing power corresponding to the second time period, and then the computing power scheduling system determines the variable adjustment computing power of the third time period based on the first allocated computing power corresponding to the second time period and the first used computing power of the second time period, which is the computing power that needs to be adjusted in the first allocated computing power in the next time period of the second time period. That is, the computing power scheduling system sets the computing power for basic allocation (i.e., the first allocated computing power) for each time period in advance, then detects the computing power usage data (for example, the first used computing power of the second time period) of each time period in real time, and determines the computing power that needs to be adjusted in the basic allocated computing power of the next time period according to the computing power usage data and the computing power allocation data of each time period.
[0030] The variable adjustment computing power is the computing power that needs to be adjusted in the basic allocated computing power of the next time period, wherein the adjustment operation on the basic allocated computing power can be an increase operation or a decrease operation, that is, the variable adjustment computing power is the to-be-increased computing power or the to-be-decreased computing power. That is, the variable adjustment computing power (i.e., the computing power that needs to be adjusted) can be positive or negative, which respectively represents the increase and decrease of the computing power.
[0031] Specifically, the computing power scheduling system can determine the positive and negative and size of the value of the variable adjustment computing power based on the usage of the computing power allocated in the second time period, for example, when the value of the first used computing power is greater than a preset threshold, the variable adjustment computing power is determined to be the to-be-increased computing power, and when the value of the first used computing power is less than the preset threshold, the variable adjustment computing power is determined to be the to-be-decreased computing power. The value of the computing power to be increased or decreased can be determined according to the value greater than or less than the threshold, that is, the greater the difference between the first used computing power and the first allocated computing power, the greater the value of the computing power to be increased or decreased.
[0032] Further, when the third time period is the next time period of the second time period but the third time period is not located in the first time period (i.e., the basic allocated computing power corresponding to the second time period and the third time period is different), the computing power scheduling system determines the computing power that needs to be adjusted based on the basic allocated computing power corresponding to the second time period and the used computing power, then predicts and obtains the basic allocated computing power corresponding to the third time period, and finally determines the final allocated computing power corresponding to the tenant queue in the third time period based on the basic allocated computing power corresponding to the third time period and the computing power that needs to be adjusted, wherein the second time period here is the starting time period when the computing power is scheduled.
[0033] Step 108: determining, based on the first allocated computing power and the variable adjustment computing power, a to-be-allocated computing power of each of the tenant queues in the third time period, so as to schedule the computing power for each of the tenant queues based on the to-be-allocated computing power.
[0034] After determining the variable adjustment computing power, the computing power scheduling system determines a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power of each of the tenant queues, where the to-be-allocated computing power is the final allocated computing power of each of the tenant queues in the third time period. When the variable adjustment computing power is the to-be-increased computing power, the computing power scheduling system increases the to-be-increased computing power based on the first allocated computing power, and determines the added computing power as the computing power allocated to the tenant queue in the third time period; when the variable adjustment computing power is the to-be-decreased computing power, the computing power scheduling system decreases the to-be-decreased computing power based on the first allocated computing power, and determines the subtracted computing power as the computing power allocated to the tenant queue in the third time period.
[0035] Specifically, the to-be-allocated computing power is determined based on the basic computing power allocated in the third time period and the computing power to be increased or decreased in the third time period, but the second time period and the third time period both belong to the first time period, and thus the basic computing power to be allocated in the third time period is the same as the first allocated computing power in the second time period. That is, the computing power scheduling system determines the basic computing power (i.e., the first allocated computing power) to be allocated in the second time period and the third time period in advance, then obtains the computing power usage data (i.e., the first usage computing power) in the second time period, and determines the computing power to be increased or decreased in the third time period based on the allocated computing power and the usage computing power in the second time period, and further determines the final allocated computing power in the third time period based on the basic computing power to be allocated in the third time period and the computing power to be increased or decreased in the third time period.
[0036] Because the total amount of the cluster computing power is a fixed value, after determining the to-be-allocated computing power of each of the tenant queues corresponding to the third time period, the computing power scheduling system further adds the to-be-allocated computing power of each of the tenant queues to determine whether the total amount of the cluster computing power is consistent. After determining that the total amount of the cluster computing power is consistent, the computing power scheduling system allocates the computing power to each of the tenant queues in the third time period based on the determined to-be-allocated computing power of each of the tenant queues in the third time period, so as to complete the computing power scheduling.
[0037] Further, after determining the to-be-allocated computing power in the third time period and allocating the computing power based on the to-be-allocated computing power, the computing power scheduling system can further acquire the actual computing power data used in the third time period, such as the computing power usage, and determine the computing power that needs to be adjusted in the fourth time period based on the computing power usage data and the computing power allocation data (i.e., the to-be-allocated computing power) in the third time period, and then acquire the predicted basic computing power to be allocated in the fourth time period, and further determine the actual computing power to be allocated in the fourth time period according to the computing power that needs to be adjusted in the fourth time period and the basic allocated computing power. That is, the computing power scheduling system can acquire the used computing power in real time at each time period, and determine the computing power that needs to be adjusted in the next time period according to the allocated computing power and the used computing power in the current time period, and further determine the actual computing power to be allocated in the next time period according to the predicted computing power in the next time period and the computing power that needs to be adjusted.
[0038] The computing power scheduling method provided by the embodiment of the application can improve the accuracy of computing power scheduling by acquiring historical computing power usage data of a plurality of tenant queues, predicting the computing power required by each of the tenant queues in a first time period based on the historical computing power usage data, obtaining a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be scheduled for computing power, determining a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, acquiring a first used computing power of each of the tenant queues in a second time period, the second time period being located within the first time period, the first allocated computing power representing the basic computing power allocated to the tenant queue in the first time period, and the first used computing power being the computing power used by the tenant queue in the second time period, determining a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power, the third time period being located within the first time period and being a next time period of the second time period, the variable adjustment computing power representing the computing power that needs to be variably adjusted in the tenant queue in the third time period, and determining a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power, so as to schedule the computing power for each of the tenant queues based on the to-be-allocated computing power.
[0039] In an implementation manner, the predicting the computing power required by each of the tenant queues in a first time period based on the historical computing power usage data to obtain a plurality of predicted computing power requirements (step 102) can perform steps A1-A2: Step A1: The historical computing power allocation, the historical computing power usage, and the historical task completion rate included in the historical computing power usage data are acquired.
[0040] The historical computing power allocation amount is a historical computing power allocated to each tenant queue, the historical computing power usage amount is a historical computing power used by each tenant queue, and the historical task completion rate is a completion rate of historical tasks in each tenant queue.
[0041] When the model is trained based on the historical computing power data and the computing power is predicted based on the pre-trained model, the accuracy of the pre-trained model affects the accuracy of the prediction result. In order to improve the accuracy of the model, when the model is trained, not only the computing power usage amount can be used as a model training parameter, but also the historical computing power allocation amount, the historical computing power usage amount and the historical task completion rate can be used as model training parameters, so as to improve the accuracy of the pre-trained model.
[0042] When the model is trained, the historical computing power data obtained by the computing power scheduling system can include the following key fields: a statistical period, a collection time range of resource usage data, such as a statistical period of 20250101, which represents that the collection range of this part of data is from 0 to 24 points on January 1, 2025; a tenant queue name, which identifies different tenant queues; a computing power allocation amount, the number of computing power allocated by the system for each tenant queue; a computing power usage amount, the number of computing power actually used by the tenant queue; and a collection time feature, a minute-level collection timestamp of the computing power usage data.
[0043] After obtaining the historical computing power data, the computing power scheduling system can perform data preprocessing on the obtained historical computing power data, which specifically includes processing missing values and abnormal values, removing duplicate records, data normalization processing, scaling the data to a unified numerical range, and effectively representing the resource usage of each tenant queue per minute. After data preprocessing, the data is stored in a structured format in DataFrame, which facilitates subsequent model training and in-depth analysis.
[0044] Step A2: performing model training based on the historical computing power allocation amount, the historical computing power usage amount and the historical task completion rate to obtain a computing power prediction model, and performing computing power prediction based on the computing power prediction model.
[0045] After obtaining the historical computing power data, the computing power scheduling system performs model training based on the historical computing power allocation amount, the historical computing power usage amount and the historical task completion rate included in the historical computing power data, and then obtains a computing power prediction model, and performs computing power prediction based on the computing power prediction model. By performing model training with multiple parameters, the model obtained by training has higher accuracy, and by using the task completion rate as a model training parameter, the predicted computing power can meet the preset task completion rate requirement.
[0046] When training the model, the computing power scheduling system can use the Random Forest Regressor algorithm to build a computing power prediction model. With the help of lag features and time features in historical data, the model can accurately capture the changing rules of computing power utilization and predict future computing power demand.
[0047] Specifically, the training process of the computing power prediction model is as follows: 1. Data division: divide the data set into training set and test set according to the ratio of 8:2 to ensure the effectiveness of model training and evaluation; 2. Feature engineering: use the computing power utilization rate of each queue of the tenant in the past month as lag features, and introduce time features including minute, hour and day of week to capture the periodic changes in time dimension; 3. Model training: use the training set data to train the random forest regression model, and set 100 decision trees (n_estimators=100) to ensure the stability and accuracy of the model; 4. Performance evaluation: evaluate the model performance on the test set, and use mean squared error and R² score to determine the model performance, where mean squared error (MSE) measures the average squared error between predicted and actual values, and the smaller the value, the higher the prediction accuracy; R² score reflects the model's ability to explain the target variable, and the closer the value to 1, the better the model fitting effect.
[0048] After the computing power scheduling for each tenant queue based on the to-be-allocated computing power (step 108), steps A3-A4 can also be performed: Step A3: Obtain the second usage computing power and the first task completion rate in the third time period.
[0049] Wherein, the second usage computing power is the computing power used by the tenant queue in the third time period, and the first task completion rate is the completion rate of the task in the tenant queue in the third time period.
[0050] After predicting the computing power based on the computing power prediction model, the computing power scheduling system can also obtain the actual usage computing power and update the parameters of the computing power prediction model according to the actual usage computing power and the predicted computing power.
[0051] When updating the computing power prediction model, the computing power scheduling system first obtains the actual usage computing power, i.e. the second usage computing power and the first task completion rate in the third time period, wherein the second usage computing power is the computing power used by the tenant queue in the third time period, and the first task completion rate is the completion rate of the task in the tenant queue in the third time period.
[0052] Step A4: performing parameter update on the computing power prediction model based on the to-be-allocated computing power, the second used computing power, and the first task completion rate.
[0053] After obtaining the actual computing power usage data of the third time period, the computing power scheduling system performs parameter update based on the obtained computing power usage data (i.e., the second used computing power and the first task completion rate) and the computing power prediction data (the to-be-allocated computing power). When performing parameter update, the computing power scheduling model can evaluate the model prediction result according to the computing power usage data and the computing power prediction data, and adjust the model hyperparameters (such as the number of trees, the maximum depth, etc.) or optimize the feature engineering based on the evaluation result, so as to further improve the model performance.
[0054] The embodiments of the present application introduce the task completion rate as the model parameter or the updated parameter when performing model training or model parameter update, so that the predicted computing power obtained by prediction can not only meet the computing power demand of the tenant, but also meet the requirement of the task completion rate in the tenant queue.
[0055] In an implementation manner, the determination of the variable adjustment computing power of each tenant queue in the third time period based on the first allocated computing power and the first used computing power (step 106) can perform steps B1-B4: Step B1: determining the computing power utilization rate of the tenant queue based on the first used computing power and the first allocated computing power.
[0056] When determining the variable adjustment computing power, the computing power scheduling system can not only determine whether to increase or decrease the computing power according to whether the computing power usage data is greater than the threshold, but also determine whether to increase or decrease the base allocated computing power in the third time period according to the computing power utilization rate in the second time period.
[0057] Therefore, the computing power scheduling system first obtains the first used computing power and the first allocated computing power in the second time period, and then determines the computing power utilization rate in the second time period based on the first used computing power and the first allocated computing power, so as to determine whether to increase or decrease the computing power of the tenant queue in the third time period according to the computing power utilization rate.
[0058] Step B2: when the computing power utilization rate is greater than a first threshold, determining the additional computing power corresponding to the tenant queue based on a preset computing power addition strategy.
[0059] The additional computing power is the computing power that needs to be added to the tenant queue in the third time period.
[0060] After determining the computing power utilization rate of the tenant queue in the second time period, the computing power scheduling system first determines whether the computing power utilization rate is greater than a first threshold, wherein the first threshold is a pre-set value, which can be 85%, can also be 75%, or can be other values.
[0061] When the utilization rate of the computing power is greater than the first threshold, the computing power scheduling system determines to increase the computing power of the tenant queue based on the basic computing power of the tenant queue at the third time period, and the value of the increased computing power can be determined according to a preset computing power increase formula. That is, when the utilization rate of the computing power exceeds the first threshold, the computing power scheduling system will automatically allocate additional computing power to the tenant queue according to the computing power gap thereof. The number of additional computing power required by the tenant queue is denoted as NR (needed_resources) (i.e., additional computing power), the number of allocated computing power of the tenant queue is denoted as AM (allocated_memory) (i.e., first allocated computing power), the utilization rate of the computing power of the tenant queue is denoted as UR (usage_ratio) (i.e., utilization rate of computing power), the first threshold of the computing power of the tenant queue is denoted as HT (high_threshold), and the computing power increase formula can be NR = AM * (UR-HT).
[0062] Step B3: When the utilization rate of the computing power is less than the first threshold, determining a recovered computing power corresponding to the tenant queue based on a preset computing power recovery strategy.
[0063] The recovered computing power is the computing power that needs to be recovered from the tenant queue at the third time period.
[0064] When the utilization rate of the computing power is less than the first threshold, the computing power scheduling system determines to decrease the computing power of the tenant queue based on the basic computing power of the tenant queue at the third time period, and the value of the decreased computing power can be determined according to a preset computing power decrease formula. That is, when the utilization rate of the computing power is lower than the first threshold, the computing power scheduling system will recover the computing power allocated to the tenant queue. The number of decreased computing power required by the tenant queue is denoted as ER (excess_resources), the number of allocated computing power of the tenant queue is denoted as AM (allocated_memory), the utilization rate of the computing power of the tenant queue is denoted as UR (usage_ratio), and the computing power decrease formula can be ER = AM * (HT-UR).
[0065] Further, the threshold for determining the computing power increase or the computing power decrease can be the same, for example, both are the first threshold, or can be different, for example, the computing power increase is determined when the utilization rate of the computing power is greater than the first threshold, and the computing power decrease is determined when the utilization rate of the computing power is less than the second threshold, wherein the first threshold is a high threshold, and the second threshold is a low threshold.
[0066] Step B4: Determining the variable adjustment computing power based on the additional computing power or the recovered computing power.
[0067] After determining to increase the computing power (i.e., additional computing power) or to reduce the computing power (i.e., recovered computing power), the computing power scheduling system determines the variable adjustment computing power based on the additional computing power or the recovered computing power, and then increases or reduces the computing power based on the first allocated computing power to determine the to-be-allocated computing power in the third time period.
[0068] In an implementation manner, after the first usage computing power of each tenant queue in the second time period is obtained (step 104), steps C1-C2 can also be performed. Step C1: Obtain cluster load data.
[0069] The cluster load data is used to represent the computing power usage data of the plurality of tenant queues.
[0070] When the computing power scheduling system schedules the computing power, the total amount of computing power that can be scheduled in the cluster computing power is fixed. Therefore, when determining the variable adjustment computing power of each tenant queue, the overall situation of the cluster computing power needs to be considered.
[0071] The computing power scheduling system obtains the computing power usage data of each tenant queue in the cluster computing power, and determines the load situation of the current cluster computing power based on the computing power usage data of each tenant queue, such as the total available amount of the cluster computing power, the usage amount of the cluster computing power, and the overall load rate of the cluster computing power.
[0072] Step C2: Determine the first threshold value by a preset threshold value determination rule based on the cluster load data.
[0073] After determining the cluster load data, the computing power scheduling system determines and updates the first threshold value based on the cluster load data and a preset threshold value determination rule. The threshold value determination rule can be a preset threshold value determination formula or a fixed threshold value determination strategy. For example, when the overall load rate of the cluster computing power is high, a preset second threshold value is used as the first threshold value; and when the overall load rate of the cluster computing power is low, a preset third threshold value is used as the first threshold value.
[0074] Specifically, when the load of the cluster computing power is high, the computing power scheduling system can increase the value of the first threshold value (or the high threshold value) to avoid frequent computing power resource addition operations. For example, when the overall load of the cluster reaches 80%, the system adjusts the high threshold value from the default 85% to 90% to reduce the frequency of resource scheduling and ensure the stability of the cluster. When the load of the cluster computing power is low, the computing power scheduling system can appropriately reduce the value of the first threshold value (or the low threshold value) to speed up the recovery speed of the computing power resource. For example, when the overall load of the cluster is less than 50%, the system adjusts the low threshold value from the default 75% to 70% to recover the idle computing power more quickly and reallocate it to the queue with demand.
[0075] Figure 2 is a flowchart of a second computing power scheduling method provided by an embodiment of the present specification, as shown in the flowchart includes: Figure 2 Step 202: Obtain historical computing power usage data of a plurality of tenant queues, and predict the computing power required by each of the tenant queues in a first time period based on the historical computing power usage data, to obtain a plurality of predicted computing power requirements.
[0076] Wherein, the tenant queue is the queue of a tenant to be scheduled for computing power.
[0077] Step 204: Determine a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, and obtain a first used computing power of each of the tenant queues in a second time period.
[0078] Wherein, the second time period is located within the first time period, the first allocated computing power is used to represent the basic computing power allocated to the tenant queue in the first time period, and the first used computing power is the computing power used by the tenant queue in the second time period.
[0079] Step 206: Determine the computing power utilization rate of the tenant queue based on the first used computing power and the first allocated computing power.
[0080] Step 208: When the computing power utilization rate is greater than a first threshold, determine the additional computing power corresponding to the tenant queue based on a preset computing power addition strategy.
[0081] Wherein, the additional computing power is the computing power that needs to be added to the tenant queue in the third time period.
[0082] Step 210: When the computing power utilization rate is less than the first threshold, determine the recovered computing power corresponding to the tenant queue based on a preset computing power recovery strategy.
[0083] Wherein, the recovered computing power is the computing power that needs to be recovered from the tenant queue in the third time period.
[0084] Step 212: Determine the variable adjustment computing power of the tenant queue in a third time period based on the additional computing power or the recovered computing power.
[0085] Wherein, the third time period is located within the first time period and is the next time period of the second time period, and the variable adjustment computing power is used to represent the computing power that needs to be adjusted in the tenant queue in the third time period.
[0086] Step 214: determining, based on the first allocated computing power and the variable adjustment computing power, a to-be-allocated computing power of each of the tenant queues in the third time period, to perform computing power scheduling on each of the tenant queues based on the to-be-allocated computing power.
[0087] Step 216: obtaining cluster load data.
[0088] The cluster load data is used to represent computing power utilization data of the plurality of tenant queues.
[0089] Step 218: updating the first threshold value based on the cluster load data and by a preset threshold value determination rule.
[0090] In the embodiments of the description, by determining the computing power utilization rate of the tenant queue in real time, and determining the variable adjustment computing power based on the computing power utilization rate, and then determining the computing power that needs to be adjusted in the next time period according to the real-time computing power utilization of the user, the computing power utilization rate can be improved on the basis of meeting the computing power demand of the user; by updating the first threshold value based on the cluster load data, the computing power of each tenant queue can be adjusted in combination with the overall load of the cluster computing power, so that the computing power demand of each tenant queue is met when the computing power of the plurality of tenant queues is adjusted.
[0091] In one implementation manner, the determination of the to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power (step 108) can perform steps D1-D2: Step D1: obtaining an computing power adjustment weight coefficient of each of the tenant queues.
[0092] The computing power adjustment weight coefficient is used to represent the importance of the tenant queue when the computing power is adjusted.
[0093] When the to-be-allocated computing power is determined based on the first allocated computing power and the variable adjustment computing power, the computing power scheduling system can not only directly increase or decrease the computing power that needs to be adjusted on the basis of the basic allocated computing power, to determine the to-be-allocated computing power, but also can obtain the computing power adjustment weight coefficient corresponding to the variable adjustment computing power, to determine the actual computing power that needs to be adjusted according to the computing power adjustment weight coefficient.
[0094] The computing power adjustment weight coefficient can be a pre-set coefficient, or can be determined according to the task priority of each tenant queue, for example, the weight coefficient corresponding to the tenant queue with a higher task priority is higher, and the weight coefficient corresponding to the tenant queue with a lower task priority is lower, wherein the task priority of the tenant queue is determined based on the priority of the task to be processed in the tenant queue.
[0095] Specifically, the total amount of computing power that can be scheduled in the computing power cluster is fixed, so when determining the first adjusted computing power of each tenant queue, the task priority corresponding to each tenant queue also needs to be determined, and resources are preferentially allocated to tasks with high priority to ensure that tasks can be completed on time. For example, during peak business hours, the computing power scheduling system preferentially allocates computing power resources to high-priority tenant queues to ensure that their tasks can be completed on time. For low-priority tasks, the computing power scheduling system can dynamically adjust the allocation of computing power under the premise of ensuring the completion of high-priority tasks, for example, when the computing power cluster load is low, the computing power scheduling system allocates more computing power resources to low-priority queues to improve their task execution efficiency.
[0096] Step D2: determining the to-be-allocated computing power of each tenant queue based on the computing power adjustment weight coefficient, the first allocated computing power, and the variable adjusted computing power.
[0097] After determining the computing power adjustment weight coefficient, the computing power scheduling system determines the actual need to adjust the computing power based on the computing power adjustment weight coefficient and the variable adjusted computing power, and then determines the to-be-allocated computing power of the tenant queue in the third time period according to the actual need to adjust the computing power and the first allocated computing power.
[0098] In an implementation manner, the computing power adjustment weight coefficient of each tenant queue is obtained (step D1), which can be executed by steps E1-E2: Step E1: obtaining a first difference, a first time, and a second task completion rate of each tenant queue.
[0099] The first difference is used to represent the difference between the first allocated computing power and the first used computing power, the first time is used to represent the duration when the first used computing power is less than a second threshold or greater than a third threshold, and the second task completion rate is the completion rate of the tasks of the tenant queue in the second time period.
[0100] The computing power adjustment weight coefficient can also be determined according to a preset weight coefficient determination formula, and when the weight coefficient formula is used for determination, one or more of the first difference, the first time, and the second task completion rate need to be obtained first, wherein the first difference is the difference between the actual used computing power and the allocated computing power of the tenant queue, the first time is the duration when the used computing power value of the tenant queue is less than a second threshold or greater than a third threshold, and the second task completion rate is the task completion rate of the tenant queue in the second time period.
[0101] Step E2: determining the computing power adjustment weight coefficient based on the first difference, the first time, and the second task completion rate.
[0102] After determining one or more of the first difference, the first time, and the second task completion rate, the computing power scheduling system can determine a computing power adjustment weight coefficient based on the determined one or more data, for example, when the obtained data is the first difference and the first time, the computing power scheduling system determines the computing power adjustment weight coefficient based on the first difference and the first time. Preferably, the computing power scheduling system determines the computing power adjustment weight coefficient based on the first difference, the first time, and the second task completion rate to determine the to-be-allocated computing power of the tenant queue.
[0103] That is, the computing power scheduling system can determine the computing power adjustment weight coefficient based on one or more of the difference between the computing power usage value and the computing power allocation value in the tenant queue, the task completion rate of the tenant queue, the low computing power usage duration or the high computing power usage duration in the tenant queue, for example, a higher computing power adjustment weight coefficient is determined when the task completion rate of the tenant queue decreases and computing power increase is needed, a higher computing power adjustment weight coefficient is determined when the difference between the computing power usage value and the computing power allocation value is large and computing power increase or decrease is needed, and a higher computing power adjustment coefficient is determined when the low computing power usage duration or the high computing power usage duration in the tenant queue is long and computing power decrease or increase operation is needed.
[0104] Figure 3 is a flowchart of a second computing power scheduling method provided by an embodiment of the present specification, as shown in Figure 3 the schematic diagram includes: Step 302: Obtain historical computing power usage data of a plurality of tenant queues, and predict the required computing power of each of the tenant queues in a first time period based on the historical computing power usage data to obtain a plurality of predicted computing power requirements.
[0105] Among them, the tenant queue is the queue of tenants to be scheduled for computing power.
[0106] Step 304: Determine a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, and obtain a first used computing power of each of the tenant queues in a second time period.
[0107] Among them, the second time period is located within the first time period, the first allocated computing power is used to represent the basic computing power allocated to the tenant queue in the first time period, and the first used computing power is the computing power used by the tenant queue in the second time period.
[0108] Step 306: Determine a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power.
[0109] The third time period is located in the first time period and is a next time period of the second time period, and the variable adjustment computing power is used to represent the computing power that needs to be adjusted in the tenant queue in the third time period.
[0110] Step 308: acquiring a first difference value, a first time and a second task completion rate of each tenant queue.
[0111] The first difference value is used to represent the difference between the first allocated computing power and the first used computing power, the first time is used to represent the duration when the first used computing power is less than a second threshold or greater than a third threshold, and the second task completion rate is the completion rate of the task of the tenant queue in the second time period.
[0112] Step 310: determining a computing power adjustment weight coefficient based on the first difference value, the first time and the second task completion rate.
[0113] The computing power adjustment weight coefficient is used to represent the importance of the tenant queue when the computing power is adjusted.
[0114] Step 312: determining the to-be-allocated computing power of each tenant queue in a third time period based on the computing power adjustment weight coefficient, the first allocated computing power and the variable adjustment computing power, so as to perform computing power scheduling on each tenant queue based on the to-be-allocated computing power.
[0115] In the description embodiment, by acquiring the computing power adjustment weight coefficient and determining the to-be-allocated computing power based on the computing power adjustment weight coefficient, the computing power that needs to be adjusted for each tenant queue is determined according to the priority, which not only can ensure that the tenant queue with high allocation priority meets the computing power demand, but also can preferentially recover the computing power of the tenant queue with high recovery priority.
[0116] It should be noted that the computing power scheduling method provided in the embodiment of the application can be executed by a computing power scheduling device or a control module in the computing power scheduling device for executing the computing power scheduling method. In the embodiment of the application, the computing power scheduling device executes the computing power scheduling method as an example to illustrate the computing power scheduling device provided in the embodiment of the application.
[0117] Figure 4 is a structural schematic diagram of the computing power scheduling device according to the embodiment of the application. As shown in Figure 4 The computing power scheduling device includes a first acquisition module 402, a first determination module 404, a second determination module 406 and a first scheduling module 408.
[0118] The first obtaining module 402 is configured to obtain historical computing power usage data of a plurality of tenant queues, and predict computing power required by each of the tenant queues in a first time period based on the historical computing power usage data, to obtain a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be subjected to computing power scheduling. The first determining module 404 is configured to determine a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, and obtain a first used computing power of each of the tenant queues in a second time period, the second time period being located in the first time period, the first allocated computing power being used to represent a basic computing power allocated to the tenant queue in the first time period, and the first used computing power being a computing power used by the tenant queue in the second time period. The second determining module 406 is configured to determine a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power, the third time period being located in the first time period and being a next time period of the second time period, the variable adjustment computing power being used to represent a computing power that needs to be subjected to variable adjustment in the tenant queue in the third time period. The first scheduling module 408 is configured to determine a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power, to schedule the computing power of each of the tenant queues based on the to-be-allocated computing power.
[0119] The computing power scheduling apparatus in the embodiments of the present application can be an apparatus, or a component, an integrated circuit, or a chip in a terminal. The apparatus can be a mobile electronic device, or a non-mobile electronic device. Exemplarily, the mobile electronic device can be a mobile phone, a tablet computer, a notebook computer, a palm computer, a vehicle-mounted electronic device, a wearable device, an ultra-mobile personal computer (UMPC), a netbook, or a personal digital assistant (PDA), etc., and the non-mobile electronic device can be a server, a network attached storage (NAS), a personal computer (PC), a television (TV), a teller machine, or a self-service machine, etc., and the embodiments of the present application are not limited in this regard.
[0120] The computing power scheduling apparatus in the embodiments of the present application can be an apparatus with an operating system. The operating system can be an Android operating system, an ios operating system, or other possible operating systems, and the embodiments of the present application are not limited in this regard.
[0121] The computing power scheduling device provided by the embodiments of the present application can realize Figures 1 to 3 The various processes realized in the method embodiments are not repeated here to avoid repetition.
[0122] Based on the same technical concept, the embodiments of the present application also provide an electronic device for executing the computing power scheduling method described above, Figure 5 To realize the structure of an electronic device of various embodiments of the present application. The electronic device can have a big difference due to different configurations or performances, and can include a processor 502, a communications interface 504, a memory 506 and a communications bus 508, wherein the processor 502, the communications interface 504 and the memory 506 complete mutual communication through the communications bus 508. The processor 502 can call the computer program stored on the memory 506 and executable on the processor 502 to execute the following steps: Obtain historical computing power usage data of a plurality of tenant queues, and predict the computing power required by each of the tenant queues in a first time period based on the historical computing power usage data to obtain a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be scheduled for computing power; Determine a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, and obtain a first used computing power of each of the tenant queues in a second time period, the second time period being located within the first time period, the first allocated computing power representing the basic computing power allocated to the tenant queue in the first time period, and the first used computing power being the computing power used by the tenant queue in the second time period; Determine a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power, the third time period being located within the first time period and being the next time period of the second time period, the variable adjustment computing power representing the computing power that needs to be adjusted in the tenant queue in the third time period; Determine a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power, to schedule the computing power of each of the tenant queues based on the to-be-allocated computing power.
[0123] In an implementation manner, the predicting the computing power required by each of the tenant queues in a first time period based on the historical computing power usage data to obtain a plurality of predicted computing power requirements comprises: The historical computing power usage data includes historical computing power allocation, historical computing power usage, and historical task completion rate. The historical computing power allocation is historical computing power allocated to each tenant queue. The historical computing power usage is historical computing power used by each tenant queue. The historical task completion rate is a completion rate of historical tasks in each tenant queue. Model training is performed based on the historical computing power allocation, the historical computing power usage, and the historical task completion rate to obtain a computing power prediction model. Computing power prediction is performed based on the computing power prediction model. After the computing power is scheduled to each tenant queue based on the to-be-allocated computing power, the method further includes: A second usage computing power and a first task completion rate in the third time period are obtained. The second usage computing power is computing power used by the tenant queue in the third time period. The first task completion rate is a completion rate of tasks of the tenant queue in the third time period. The computing power prediction model is updated based on the to-be-allocated computing power, the second usage computing power, and the first task completion rate.
[0124] In an implementation manner, the determination of the change adjustment computing power of each tenant queue in the third time period based on the first allocation computing power and the first usage computing power includes: The computing power utilization rate of the tenant queue is determined based on the first usage computing power and the first allocation computing power. When the computing power utilization rate is greater than a first threshold value, an additional computing power corresponding to the tenant queue is determined based on a preset computing power addition strategy. The additional computing power is computing power that needs to be added to the tenant queue in the third time period. When the computing power utilization rate is less than the first threshold value, a recovered computing power corresponding to the tenant queue is determined based on a preset computing power recovery strategy. The recovered computing power is computing power that needs to be recovered from the tenant queue in the third time period. The change adjustment computing power is determined based on the additional computing power or the recovered computing power.
[0125] In an implementation manner, after the first usage computing power of each tenant queue in a second time period is obtained, the method further includes: Cluster load data is obtained. The cluster load data is used to represent computing power usage data of a plurality of tenant queues. The first threshold value is determined by a preset threshold value determination rule based on the cluster load data.
[0126] In an implementation manner, the determination of the to-be-allocated computing power of each tenant queue in the third time period based on the first allocation computing power and the change adjustment computing power includes: obtain an algorithm adjustment weight coefficient of each of the tenant queues, the algorithm adjustment weight coefficient being used to represent an importance degree of the tenant queue when the algorithm adjustment is performed; determine the to-be-allocated algorithm of each of the tenant queues based on the algorithm adjustment weight coefficient, the first allocated algorithm and the variable adjustment algorithm.
[0127] In an implementation manner, the obtaining of the algorithm adjustment weight coefficient of each of the tenant queues comprises: obtain a first difference value, a first time and a second task completion rate of each of the tenant queues, the first difference value being used to represent a difference value between the first allocated algorithm and the first used algorithm, the first time being used to represent a duration when the first used algorithm is less than a second threshold value or greater than a third threshold value, and the second task completion rate being a task completion rate of the tenant queue at the second time period; determine the algorithm adjustment weight coefficient based on the first difference value, the first time and the second task completion rate.
[0128] The specific execution steps can refer to each step of the algorithm scheduling method embodiments, and the same technical effects can be achieved. To avoid repetition, they will not be described here.
[0129] It should be noted that the electronic device in the embodiments of the present application includes a server, a terminal or other devices other than a terminal.
[0130] The above electronic device structure does not constitute a limitation on the electronic device, and the electronic device can include more or fewer components than the illustration, or combine certain components, or different component arrangements. For example, the input unit can include a graphics processing unit (GPU) and a microphone, and the display unit can be configured with a display panel in the form of a liquid crystal display, an organic light-emitting diode, etc. The user input unit includes at least one of a touch panel and other input devices. The touch panel is also called a touch screen. Other input devices can include but are not limited to a physical keyboard, function keys (such as volume control buttons, on-off buttons, etc.), trackballs, mice, joysticks, and the like, which will not be described here.
[0131] The memory can be used to store software programs and various data. The memory can mainly include a first storage area storing programs or instructions and a second storage area storing data, wherein the first storage area can store an operating system, application programs or instructions required by at least one function (such as a sound playing function, an image playing function, etc.), and the like. In addition, the memory can include a volatile memory or a non-volatile memory, or the memory can include both volatile and non-volatile memories. Among them, the non-volatile memory can be a Read-Only Memory (ROM), a Programmable ROM (PROM), an Erasable PROM (EPROM), an Electrically EPROM (EEPROM), or a flash memory. The volatile memory can be a Random Access Memory (RAM), a Static RAM (SRAM), a Dynamic RAM (DRAM), a Synchronous DRAM (SDRAM), a Double Data Rate SDRAM (DDR SDRAM), an Enhanced SDRAM (ESDRAM), a Synchlink DRAM (SLDRAM), and a Direct Rambus RAM (DRRAM).
[0132] The processor can include one or more processing units; optionally, the processor integrates an application processor and a modem processor, wherein the application processor mainly processes operations related to an operating system, a user interface, and an application program, and the modem processor mainly processes wireless communication signals, such as a baseband processor. It can be understood that the above-mentioned modem processor can also not be integrated into the processor.
[0133] The embodiment of the present application further provides a readable storage medium, and the readable storage medium stores programs or instructions, the programs or instructions are executed by a processor to realize various processes of the above-mentioned computing power scheduling method embodiment, and the same technical effects can be achieved. To avoid repetition, details are not described here.
[0134] The processor is the processor in the electronic device described in the above embodiments. The readable storage medium includes a computer readable storage medium, such as a computer read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk, etc.
[0135] The embodiment of the present application further provides a computer program product, which is executed by a processor to realize each process of the above-mentioned computing power scheduling method embodiment and achieve the same technical effects. To avoid repetition, details are not described herein.
[0136] The embodiment of the present application further provides a chip, which includes a processor and a communication interface. The communication interface is coupled with the processor. The processor is used to run programs or instructions to realize each process of the above-mentioned computing power scheduling method embodiment and achieve the same technical effects. To avoid repetition, details are not described herein.
[0137] It should be understood that the chip mentioned in the embodiment of the present application can also be referred to as a system-level chip, a system chip, a chip system or a system-on-chip chip, etc.
[0138] It should be noted that, in this document, the term "comprising" or "including" or any other variant thereof is intended to cover non-exclusive inclusion, so that a process, method, article or device including a series of elements not only includes those elements, but also includes other elements not explicitly listed or inherent to such a process, method, article or device. Without more limitations, the element defined by the statement "comprising a" does not exclude the presence of additional identical elements in the process, method, article or device including the element. In addition, it should be pointed out that the scope of the method and device in the present application is not limited to the order of performing the functions shown or discussed, but can also include performing the functions in a substantially simultaneous manner or in the opposite order, for example, the described method can be performed in an order different from that described, and various steps can also be added, omitted or combined. In addition, the features described with reference to some examples can be combined in other examples.
[0139] Those skilled in the art can clearly understand the above-mentioned embodiment method can be realized by means of software and the necessary general hardware platform, of course, also can be through hardware, but many cases the former is the better embodiment. Based on such understanding, the technical solutions of the present application essentially or say the part of the prior art contribution can be embodied in the form of software products, the computer software product is stored in a storage medium (such as ROM / RAM, disk, optical disc), including a number of instructions to make a terminal (may be a mobile phone, computer, server, air conditioner, or network equipment, etc.) executes the method described in various embodiments of the present application.
[0140] The embodiments of the present application are described above in conjunction with the drawings, but the present application is not limited to the above-mentioned specific embodiments, the above-mentioned specific embodiments are only illustrative, but not limited, those skilled in the art can make many forms without departing from the purpose of the present application and the scope of the claims under the inspiration of the present application, all belong to the protection of the present application.
Claims
1. A computing power scheduling method, characterized in that, The method comprises the following steps: obtaining historical computing power usage data of a plurality of tenant queues, and predicting computing power required by each of the tenant queues in a first time period based on the historical computing power usage data, to obtain a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be scheduled for computing power; determining a first allocated computing power of each of the tenant queues in the first time period based on each of the predicted computing power requirements, and obtaining a first used computing power of each of the tenant queues in a second time period, the second time period being within the first time period, the first allocated computing power representing a basic computing power allocated to the tenant queue in the first time period, and the first used computing power being a computing power used by the tenant queue in the second time period; determining a variable adjustment computing power of each of the tenant queues in a third time period based on the first allocated computing power and the first used computing power, the third time period being within the first time period and being a next time period of the second time period, the variable adjustment computing power representing a computing power that needs to be adjusted in the tenant queue in the third time period; determining a to-be-allocated computing power of each of the tenant queues in the third time period based on the first allocated computing power and the variable adjustment computing power, to schedule each of the tenant queues for computing power based on the to-be-allocated computing power.
2. The method of claim 1, wherein, The method comprises the following steps: obtaining historical computing power usage data of a plurality of tenant queues, and predicting computing power required by each of the tenant queues in a first time period based on the historical computing power usage data, to obtain a plurality of predicted computing power requirements, the tenant queue being a queue of a tenant to be scheduled for computing power; obtaining a historical computing power allocation, a historical computing power usage, and a historical task completion rate included in the historical computing power usage data, the historical computing power allocation being a historical computing power allocated to each of the tenant queues, the historical computing power usage being a historical computing power used by each of the tenant queues, and the historical task completion rate being a completion rate of a historical task in each of the tenant queues; performing model training based on the historical computing power allocation, the historical computing power usage, and the historical task completion rate, to obtain a computing power prediction model, and performing computing power prediction based on the computing power prediction model; After the scheduling of each of the tenant queues for computing power based on the to-be-allocated computing power, the method further comprises the following steps: obtaining a second used computing power and a first task completion rate in the third time period, the second used computing power being a computing power used by the tenant queue in the third time period, and the first task completion rate being a completion rate of a task in the tenant queue in the third time period; 3. The method of claim 1, wherein, updating parameters of the computing power prediction model based on the to-be-allocated computing power, the second used computing power, and the first task completion rate. The method comprises the following steps: determining a computing power utilization rate of the tenant queue based on the first used computing power and the first allocated computing power; when the computing power utilization rate is greater than a first threshold, determining an additional computing power corresponding to the tenant queue based on a preset computing power addition strategy, the additional computing power being a computing power that needs to be added to the tenant queue in the third time period; When the computing resource utilization rate is less than the first threshold, a recovery computing resource corresponding to the tenant queue is determined based on a preset computing resource recovery strategy, the recovery computing resource being a computing resource that needs to be recovered for the tenant queue at the third time period; The variable adjustment computing resource is determined based on the additional computing resource or the recovery computing resource.
4. The method of claim 3, wherein, After the first usage computing resource of each tenant queue at a second time period is obtained, the method further includes: Obtaining cluster load data, the cluster load data being used to represent computing resource usage data of a plurality of tenant queues; The first threshold is determined by a preset threshold determination rule based on the cluster load data.
5. The method of claim 1, wherein, The to-be-allocated computing resource of each tenant queue at the third time period is determined based on the first allocated computing resource and the variable adjustment computing resource, including: Obtaining a computing resource adjustment weight coefficient of each tenant queue, the computing resource adjustment weight coefficient being used to represent an importance degree of the tenant queue when the computing resource adjustment is performed; The to-be-allocated computing resource of each tenant queue is determined based on the computing resource adjustment weight coefficient, the first allocated computing resource and the variable adjustment computing resource.
6. The method of claim 5, wherein, The computing resource adjustment weight coefficient of each tenant queue is obtained, including: Obtaining a first difference, a first time and a second task completion rate of each tenant queue, the first difference being used to represent a difference between the first allocated computing resource and the first usage computing resource, the first time being used to represent a duration when the first usage computing resource is less than a second threshold or greater than a third threshold, and the second task completion rate being a completion rate of a task of the tenant queue at the second time period; The computing resource adjustment weight coefficient is determined based on the first difference, the first time and the second task completion rate.
7. A computing power scheduling apparatus, characterized by comprising: including: The first obtaining module is configured to obtain historical computing resource usage data of a plurality of tenant queues, and predict a required computing resource of each tenant queue at a first time period based on the historical computing resource usage data, to obtain a plurality of predicted computing resource requirements, the tenant queue being a queue of a tenant to be subjected to computing resource scheduling; The first determining module is configured to determine a first allocated computing resource of each tenant queue at the first time period based on each predicted computing resource requirement, and obtain a first usage computing resource of each tenant queue at a second time period, the second time period being within the first time period, the first allocated computing resource being used to represent a basic computing resource allocated to the tenant queue at the first time period, and the first usage computing resource being a computing resource used by the tenant queue at the second time period; The second determining module is configured to determine a variable adjustment computing resource of each tenant queue at a third time period based on the first allocated computing resource and the first usage computing resource, the third time period being within the first time period and being a next time period of the second time period, the variable adjustment computing resource being used to represent a computing resource that needs to be subjected to variable adjustment in the tenant queue at the third time period; The first scheduling module is configured to determine a to-be-allocated computing resource of each tenant queue at the third time period based on the first allocated computing resource and the variable adjustment computing resource, to perform computing resource scheduling on each tenant queue based on the to-be-allocated computing resource.
8. An electronic device, comprising: The device comprises: a processor; and a memory arranged to store computer-executable instructions configured to be executed by the processor, the computer-executable instructions comprising steps for performing the method of claim 1 to 6.
9. A storage medium, characterized by The storage medium is configured to store computer-executable instructions, the computer-executable instructions causing a computer to perform the method of claim 1 to 6.
10. A computer program product, characterised in that, A computer program comprising instructions which, when executed by a processor, implement the method of claim 1 to 6.