CN111124665B - Method and device for distributing computing resources - Google Patents

Method and device for distributing computing resources Download PDF

Info

Publication number
CN111124665B
CN111124665B CN201911159221.2A CN201911159221A CN111124665B CN 111124665 B CN111124665 B CN 111124665B CN 201911159221 A CN201911159221 A CN 201911159221A CN 111124665 B CN111124665 B CN 111124665B
Authority
CN
China
Prior art keywords
determining
execution
target task
energy consumption
value
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201911159221.2A
Other languages
Chinese (zh)
Other versions
CN111124665A (en
Inventor
赛影辉
王磊
肖飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Chery Automobile Co Ltd
Original Assignee
Chery Automobile Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Chery Automobile Co Ltd filed Critical Chery Automobile Co Ltd
Priority to CN201911159221.2A priority Critical patent/CN111124665B/en
Publication of CN111124665A publication Critical patent/CN111124665A/en
Application granted granted Critical
Publication of CN111124665B publication Critical patent/CN111124665B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/5038Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

The disclosure relates to a method and a device for distributing computing resources, and belongs to the technical field of cloud computing. The method comprises the following steps: acquiring a target task corresponding to a target bidding account; determining optimal execution scheduling information of a target task, wherein the optimal execution scheduling information comprises a starting time and an ending time of executing the target task; determining a utility value of the execution target task based on the optimal execution scheduling information; and if the utility value is greater than the preset threshold value, distributing computing resources in the graphic processor to the target bidding account based on the optimal scheduling information. By adopting the method and the device, the energy consumption in the process of using the GPU can be effectively reduced.

Description

Method and device for distributing computing resources
Technical Field
The present disclosure relates to the field of cloud computing technology, and in particular, to a method and apparatus for allocating computing resources.
Background
Cloud computing may provide a pay-as-you-go computing service to users, and a large number of cloud computing resources such as CPU (central processing unit ), RAM (Random Access Memory, random access memory), memory, bandwidth, etc. may be used to provide services to users in a leased manner. Traditional cloud computing is based on CPU virtualization, and with the rapid development of GPUs (Graphic Processing Unit, graphics processors), cloud computing for GPUs has evolved.
In practical application, because the energy consumption of the GPU cloud data center is too large, how to save energy and reduce emission is also a focus of attention. The demand response mechanism can properly reduce the energy consumption, ensure the sustainability of the power grid and temporarily restrain the power consumption load in the peak period, and can realize the effective management of the energy consumption of the cloud data center through DVFS (Dynamic Voltage and Frequency Scaling, dynamic frequency modulation and voltage regulation).
In the cloud platform auction mechanism, users can be used as bidders, cloud resource providers can be used as auctioneers, and the problem of how to formulate a task allocation system so as to maximize social benefits and minimize power consumption of a cloud computing center is paid attention. Social benefits are defined as the sum of the benefits of cloud resource providers and the benefits of users.
In carrying out the present disclosure, the inventors found that there are at least the following problems:
the current research results do not have a demand response auction mechanism aiming at GPU dispatching, and the more serious energy consumption problem in the current GPU cloud computing is not solved.
Disclosure of Invention
In order to overcome the problems in the related art, the present disclosure provides the following technical solutions:
according to a first aspect of embodiments of the present disclosure, there is provided a method of allocating computing resources, the method comprising:
acquiring a target task corresponding to a target bidding account;
determining optimal execution scheduling information of the target task, wherein the optimal execution scheduling information comprises a starting time and an ending time of executing the target task;
determining a utility value for executing the target task based on the optimal execution scheduling information;
and if the utility value is greater than a preset threshold value, distributing computing resources in a Graphic Processor (GPU) for the target bidding account based on the optimal scheduling information.
Optionally, the determining the optimal execution scheduling information of the target task includes:
determining a plurality of available time slots for performing the target task;
determining resource consumption values corresponding to the available time slots respectively;
determining the minimum execution energy consumption and execution duration of the target task;
and determining optimal execution scheduling information of the target task based on the resource consumption value, the minimum execution energy consumption and the execution duration which correspond to each available time slot.
Optionally, the determining the resource consumption value corresponding to each available time slot includes:
determining the used energy consumption;
and determining the resource consumption value corresponding to each available time slot based on the used energy consumption.
Optionally, the determining the minimum execution energy consumption and the execution duration of the target task includes:
acquiring voltage values in a preset voltage set and frequency values in a preset frequency set one by one, and determining the execution energy consumption of the target task based on the currently acquired voltage values and frequency values every time one voltage value and one frequency value are acquired;
determining the lowest execution energy consumption in the execution energy consumption;
and determining the execution time length corresponding to the lowest execution energy consumption.
Optionally, the method further comprises:
and if the utility value is greater than a preset threshold value, prohibiting the distribution of computing resources in the GPU for the target bidding account.
According to a second aspect of embodiments of the present disclosure, there is provided an apparatus for allocating computing resources, the apparatus comprising:
the acquisition module is used for acquiring a target task corresponding to the target bidding account;
the determining module is used for determining optimal execution scheduling information of the target task, wherein the optimal execution scheduling information comprises a starting time and an ending time for executing the target task;
the determining module is used for determining a utility value for executing the target task based on the optimal execution scheduling information;
and the allocation module is used for allocating computing resources in the GPU for the target bidding account based on the optimal scheduling information if the utility value is larger than a preset threshold value.
Optionally, the determining module is configured to:
determining a plurality of available time slots for performing the target task;
determining resource consumption values corresponding to the available time slots respectively;
determining the minimum execution energy consumption and execution duration of the target task;
and determining optimal execution scheduling information of the target task based on the resource consumption value, the minimum execution energy consumption and the execution duration which correspond to each available time slot.
Optionally, the determining module is configured to:
determining the used energy consumption;
and determining the resource consumption value corresponding to each available time slot based on the used energy consumption.
Optionally, the determining module is configured to:
acquiring voltage values in a preset voltage set and frequency values in a preset frequency set one by one, and determining the execution energy consumption of the target task based on the currently acquired voltage values and frequency values every time one voltage value and one frequency value are acquired;
determining the lowest execution energy consumption in the execution energy consumption;
and determining the execution time length corresponding to the lowest execution energy consumption.
Optionally, the allocation module is further configured to:
and if the utility value is greater than a preset threshold value, prohibiting the distribution of computing resources in the GPU for the target bidding account.
The technical scheme provided by the embodiment of the disclosure can comprise the following beneficial effects:
by the method provided by the embodiment of the invention, the energy consumption in the process of using the GPU can be effectively reduced.
It is to be understood that both the foregoing general description and the following detailed description are exemplary and explanatory only and are not restrictive of the disclosure.
Drawings
The accompanying drawings, which are incorporated in and constitute a part of this specification, illustrate embodiments consistent with the disclosure and together with the description, serve to explain the principles of the disclosure. In the drawings:
FIG. 1 is a flow diagram illustrating a method of allocating computing resources according to an example embodiment;
FIG. 2 is a schematic diagram illustrating an effect according to an example embodiment;
FIG. 3 is a schematic diagram illustrating an effect according to an exemplary embodiment;
FIG. 4 is a schematic diagram of an effect shown according to an exemplary embodiment;
FIG. 5 is a schematic diagram illustrating an apparatus for allocating computing resources, according to an example embodiment;
fig. 6 is a schematic diagram illustrating a structure of a server according to an exemplary embodiment.
Specific embodiments of the present disclosure have been shown by way of the above drawings and will be described in more detail below. These drawings and the written description are not intended to limit the scope of the disclosed concepts in any way, but rather to illustrate the disclosed concepts to those skilled in the art by reference to specific embodiments.
Detailed Description
Reference will now be made in detail to exemplary embodiments, examples of which are illustrated in the accompanying drawings. When the following description refers to the accompanying drawings, the same numbers in different drawings refer to the same or similar elements, unless otherwise indicated. The implementations described in the following exemplary examples are not representative of all implementations consistent with the present disclosure. Rather, they are merely examples of apparatus and methods consistent with some aspects of the present disclosure as detailed in the accompanying claims.
An exemplary embodiment of the present disclosure provides a method for allocating computing resources, as shown in fig. 1, a process flow of the method may include the following steps:
step S101, obtaining a target task corresponding to a target bidding account.
In practice, a resource pool can be defined, the total energy amount of each time slot t of the resource pool is epsilon t . I bid accounts arrive randomly within a period spanning {1, …, T }, each bid account can submit one bid information (bid), (bid): { t i ,d i ,B ii }. Wherein t is i Is bidder arrival time, d i ,B i Respectively represent the last time point of completing the task and the bid value, omega i The workload (workload) of the task of the target bid account i is represented. The target bid account may input a target task, and the workload of the target task may be omega i And (3) representing.
Each bidding account has a true mental estimate v i I.e. to complete the true benefit of the task, it is assumed that the bid value B for each bid account i Equal to v i When the bidding account is most beneficial, the optimal decision of each bidding account is to bid according to the actual psychological valuation, and the auction mechanism is true.
Step S102, determining optimal execution scheduling information of the target task.
The optimal execution scheduling information comprises a starting time and an ending time of an execution target task.
In practice, incoming bidding accounts are processed to obtain optimal execution scheduling information s for each bidding account i Minimum required resource consumption value C i Utility value u i And the set of energy occupied by each time slot allocated
Optionally, step S102 may include: determining a plurality of available time slots for performing a target task; determining resource consumption values corresponding to the available time slots respectively; determining the minimum execution energy consumption and execution duration of a target task; and determining optimal execution scheduling information of the target task based on the resource consumption value, the lowest execution energy consumption and the execution duration corresponding to each available time slot.
In implementation, the starting time slot t available for the target bid account i may be exhausted s End time slot t e And calculates the resource consumption value p corresponding to each available time slot (t) ,t∈[t s ,t e ]. The available time slots may be ordered in order of decreasing resource consumption value.
Optionally, the step of determining the resource consumption value corresponding to each available time slot may include: determining the used energy consumption; and determining the resource consumption value corresponding to each available time slot based on the used energy consumption.
In practice, the resource consumption value may be calculated by equation 1:
wherein, kappa r (t) is the current resource consumption value, μ and iota represent the maximum and minimum unit energy consumption values, respectively, which are the estimated parameters. w (w) (t) Representing the used energy consumption at time slot t. When energy is not used, the resource consumption value is initiallyWhen all the energy is occupied, the resource consumption value of this slot is μ, and this slot is no longer allocated. The price formula is designed to store resources for future higher value, so that the general social benefit reaches the maximum value.
Optionally, the step of determining the minimum execution energy consumption and the execution duration of the target task may include: acquiring voltage values in a preset voltage set and frequency values in a preset frequency set one by one, and determining the execution energy consumption of a target task based on the currently acquired voltage values and frequency values every time one voltage value and one frequency value are acquired; determining the lowest execution energy consumption in the execution energy consumption; and determining the execution time length corresponding to the lowest execution energy consumption.
In implementation, all possible consumed energy of the task of target bid account i may be exhaustedDetermining the lowest execution energy consumption +.>And execution duration +.>
Performance model τ for target bid account i i I.e., the execution time of the target task,is a function representing the execution duration sensitive to the GPU frequency, i.e. the execution duration dependent on the GPU parameters, which changes when the operating parameters (voltage and frequency) of the GPU change, T static Is insensitive, i.e. is not affected by the change of the operating parameters of the GPU, is a fixed value:
wherein, kappa i 、λ i For fixed parameters, V i ,f im Is a function variable representing the voltage and frequency of the GPU that needs to be adjusted, and if the target bid account i is winning, the execution duration of executing the target task can be calculated by the above formula.
The power consumption model of the target bidding account i represents the power consumption P consumed per unit time if the target task given by the target bidding account i is executed i A, γ and β are all fixed parameters related to hardware:
P i =A+γf im +βV i 2 g(V i ) (equation 3)
The execution energy consumption required to be consumed for executing the target task given by the target bidding account i is the product tau of the execution duration and the energy consumption consumed in unit time i P i
The energy consumption of the target task can be calculated by the formula, and the lowest energy consumption can be selected from various possible energy consumptionAnd execution duration +.>
Step S103, determining a utility value of the execution target task based on the optimal execution scheduling information.
In practice, in determining the resource consumption value p (t) After the minimum execution energy consumption and the corresponding execution time length, the optimal execution scheduling information schedule can be determined i . Then, the energy occupation amount can be calculatedAnd updating. The resource energy consumption cost C of executing the target task can also be determined i ,C i There is a linear increase in power consumption with execution. Under the precondition that the auction mechanism is true, the social benefit corresponding to the target bidding account is B of the target bidding account i Subtracting C i The utility value is the social benefit corresponding to the target bidding account, and u can be used i =B i -C i The representation is performed.
Step S104, if the utility value is larger than the preset threshold value, computing resources in the GPU are allocated to the target bidding account based on the optimal scheduling information.
In practice, the preset threshold may be 0, and when the utility value is greater than 0, scheduling information s is scheduled according to the optimal execution i Allocating GPU resources for the target bid account and transferring resource consumption value C i . Simultaneously updating time slots t epsilon S i Unused energy w of (2) (t) And p (t)
Optionally, the method provided by the embodiment of the present disclosure may further include: and if the utility value is greater than the preset threshold value, prohibiting the distribution of computing resources in the GPU for the target bidding account.
In practice, if the utility value u of the target bid account i < 0, the target bid account is rejected.
In the above procedure, assume a cost i (abbreviated as C) i ) Representing the energy costs consumed to complete the target task for target bid account i, C i Will increase linearly with the total power consumed by the task, x i It may be indicated whether bid account i is winning, 1 is winning, 0 is not winning, when utility value is greater than 0, or not winning. C (C) i And x i The final value may be calculated by an algorithm. On the premise that the auction mechanism is true, social welfare is all winning bidThe sum of the real benefits of the tasks of the account, minus the total energy consumption to perform the tasks. The cloud container auction with maximized social benefits is written as an integer linear program as follows.
maximize∑ i (B i -cost i )x i (equation 4)
Limiting conditions:
V ≥V i ≥V - ,
wherein, sigma i (B i -cost i )x i The method is an objective function, the rest inequality is a linear constraint condition which is needed to be met by variables in the objective function, and the solution of the linear programming is used for obtaining variable values which meet all inequality and maximize the objective function. V (V) Representing default GPU voltage frequency parameter values, V - 、/>Is the lowest value of the adjustable range of the GPU voltage frequency, V i 、f ic 、f im Refers to executing the value of GPU voltage frequency in the task if the task of the target bidding account i is receivedAnd finally can be calculated by the provided algorithm.
Because of the greater complexity of the constraints, compact Infinite ILP can be used to simplify the linear programming described above by S i To represent a set of Schedule(s) per bid account meeting constraints, expressed in omega i The table performs all possible energy consumption sets for the task of bidding account i.
Limiting conditions:
x iS ∈{0,1},
because the linear programming has high complexity, the linear programming cannot be directly solved, the dual linear programming can be written by utilizing an original dual algorithm, and the solution of the original linear programming can be obtained according to the solution dual linear programming. The objective function value of the dual linear programming has no specific physical meaning and can be used for calculating the algorithm competition ratio. Obtaining two dual variables u i (utility value) and p (t) (resource energy consumption value of time slot t). u (u) i Specifically, the true return to completion of the task for the target bid account i may be interpreted as minus the value that would ultimately need to be paid to the resource provider to complete the task. The utility value is 0 if the target bid account is not bid.
Limiting conditions:
p (t) ,u i ≥0,
minimizing the increment of the dual variable and ensuring the feasibility of the dual condition by using the complementary relaxation condition, once the schedule s of the target bidding account i tightens the dual constraint, i.e. Update the original variable +.>But the utility value of each bidding account cannot be negative, i.e., u i >0, so there is
To maximize the utility value of the user, the cost of completing the task may be minimized, i.e Minimum, as follows:
constraint d i ≥t ii
V ≥V i ≥V - ,
To the original variable x i(whether or not to assign the task of bidding account i to time slot t), w (t) (energy already assigned in time slot t) and the dual variable u i Initialized to 0, p (w 0 ) The initial value is set to->Where η is a number greater than 1, the parameter σ is defined as the minimum occupancy of energy in the time range T, iota represents the minimum unit energy consumption value and μ represents the maximum unit energy consumption value.
Optionally, among the above parameters, the coefficient η satisfiesη>1。
The following specific examples illustrate:
in the present embodiment, the energy capacity is made epsilon=15. The slot span t=600 to 1600 slots, in order to better simulate the uncertainty of the bidder arrival, the poisson distribution is used to describe the number of bidding accounts that arrive, and the poisson coefficient is set to 3 or 8. Each bid account work load demand is a random number { 0-1 }.
Step 1: suppose that each bidder gives a true valuation v i This valuation is not affected by other bidders, where the auction mechanism is true.
Step 2: and under the precondition that the auction mechanism is true, the cloud container with maximized social benefit is auctioned and written into an integer linear programming.
Due to the complexity of the conditions, the linear programming is simplified by Compact Infinite ILP and s is used i To represent a set of schedules for which each bidding account meets constraints.
Step 3: writing out a dual linear programming by using an original dual algorithm to obtain two dual variables u i (bidder utility) and p (t) (energy price of time slot t).
Step 4: to the original variable x i(whether or not to assign the task of bidding account i to time slot t), w (t) (energy already assigned in time slot t) and the dual variable u i Initialized to 0, p (w 0 ) The initial value is set to->Where η is a number greater than 1, the parameter σ is defined as the minimum occupancy of energy in the time range T, iota represents the minimum unit energy consumption value, and μ represents the maximum unit energy consumption value.
Step 5: processing the coming bidder i to obtain the optimal schedule s of each person i Minimum required cost C i Utility u i And the set of energy occupied by each time slot allocated
Step 6: if the utility value u of the bidding account i >0 according to schedule s i Allocating resources to the bidding account and charging fee C i . At the same time, time slot t epsilon S i The remaining energy w of (2) (t) Price p (t) Updating, wherein the price updating formula is as follows:
wherein mu and iota represent the maximum and minimum unit energy prices, respectively, which are estimated parameters, w (t) Representing the amount of energy used at time slot t. When energy is not being used, the energy price is initiallyWhen all energy is occupied, the energy price of the time slot is μ, and this time slot is no longer allocated. The price formula is designed to store resources for future higher value, so that the general social benefit reaches the maximum value.
Step 7: if utility u of bidding account i < 0, the bidder is rejected.
In step 5, the process of handling each bidder is as follows (mainly using the idea of dynamic planning):
step 5.1: the starting time slot t available to exhaustive bidder i s End time slot t e And calculates the resource price p at each available time slot (t) ,t∈[t s ,t e ]The available time slots (i.e., meeting the resource demand) are incrementally ordered by price.
Step 5.2: according to step 7, all the possible consumed energies of the tasks of user i are exhaustedFind out the energy consumption with the lowest cost of the user +.>And processing slot number->
Step 5.3: obtaining the bidder schedule s i Updating the energy usage of the userC for payment i Utility u i =B i -C i
Accordingly, the present disclosure has the following advantages: the problem of maximizing social benefits in auctions is solved by designing a reasonable price mechanism and a DVFS auction system, and an approximate ratio close to 2.68 is obtained.
By the method provided by the embodiment of the disclosure, the effect diagram shown in fig. 2, the effect diagram shown in fig. 3 and the effect diagram shown in fig. 4 can be obtained.
The present disclosure provides a batch auction system based on cloud container service, wherein a bidder is auctioned at regular time intervals by designing an auction competition mechanism, so as to obtain a good approximate solution. The method considers the influence of possible bidding accounts in the future on social benefit, and controls the reasonable allocation of resources, thereby effectively solving the NP-hard problem.
By the method provided by the embodiment of the invention, the energy consumption in the process of using the GPU can be effectively reduced.
Yet another exemplary embodiment of the present disclosure provides an apparatus for allocating computing resources, as shown in fig. 5, the apparatus comprising:
the acquiring module 501 is configured to acquire a target task corresponding to a target bidding account;
a determining module 502, configured to determine optimal execution scheduling information of the target task, where the optimal execution scheduling information includes a start time and an end time of executing the target task;
the determining module 502 is configured to determine a utility value for executing the target task based on the optimal execution scheduling information;
and the allocation module 503 is configured to allocate, based on the optimal scheduling information, computing resources in the graphics processor GPU to the target bidding account if the utility value is greater than a preset threshold.
Optionally, the determining module 502 is configured to:
determining a plurality of available time slots for performing the target task;
determining resource consumption values corresponding to the available time slots respectively;
determining the minimum execution energy consumption and execution duration of the target task;
and determining optimal execution scheduling information of the target task based on the resource consumption value, the minimum execution energy consumption and the execution duration which correspond to each available time slot.
Optionally, the determining module 502 is configured to:
determining the used energy consumption;
and determining the resource consumption value corresponding to each available time slot based on the used energy consumption.
Optionally, the determining module 502 is configured to:
acquiring voltage values in a preset voltage set and frequency values in a preset frequency set one by one, and determining the execution energy consumption of the target task based on the currently acquired voltage values and frequency values every time one voltage value and one frequency value are acquired;
determining the lowest execution energy consumption in the execution energy consumption;
and determining the execution time length corresponding to the lowest execution energy consumption.
Optionally, the allocation module 503 is further configured to:
and if the utility value is greater than a preset threshold value, prohibiting the distribution of computing resources in the GPU for the target bidding account.
The specific manner in which the various modules perform the operations in the apparatus of the above embodiments have been described in detail in connection with the embodiments of the method, and will not be described in detail herein.
The present disclosure provides a batch auction system based on cloud container service, wherein a bidder is auctioned at regular time intervals by designing an auction competition mechanism, so as to obtain a good approximate solution. The method considers the influence of possible bidding accounts in the future on social benefit, and controls the reasonable allocation of resources, thereby effectively solving the NP-hard problem. By the device provided by the embodiment of the disclosure, the energy consumption in the process of using the GPU can be effectively reduced.
It should be noted that: the apparatus for allocating computing resources provided in the foregoing embodiments is only exemplified by the division of the foregoing functional modules when allocating computing resources, and in practical application, the foregoing functional allocation may be performed by different functional modules according to needs, i.e. the internal structure of the server is divided into different functional modules, so as to perform all or part of the functions described above. In addition, the apparatus for allocating computing resources provided in the foregoing embodiments and the method embodiment for allocating computing resources belong to the same concept, and specific implementation processes thereof are detailed in the method embodiment and are not described herein again.
Fig. 6 illustrates a schematic structure of a server 1900 provided in an exemplary embodiment of the present disclosure. The server 1900 may vary considerably in configuration or performance and may include one or more processors (central processing units, CPU) 1910 and one or more memories 1920. Wherein the memory 1920 has stored therein at least one instruction that is loaded and executed by the processor 1910 to implement the method for allocating computing resources described in the above embodiments.
Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure disclosed herein. This application is intended to cover any adaptations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a true scope and spirit of the disclosure being indicated by the following claims.
It is to be understood that the present disclosure is not limited to the precise arrangements and instrumentalities shown in the drawings, and that various modifications and changes may be effected without departing from the scope thereof. The scope of the present disclosure is limited only by the appended claims.

Claims (6)

1. A method of allocating computing resources, the method comprising:
acquiring a target task corresponding to a target bidding account;
determining a plurality of available time slots for performing the target task;
determining resource consumption values corresponding to the available time slots respectively;
acquiring voltage values in a preset voltage set and frequency values in a preset frequency set one by one, and determining the execution energy consumption of the target task based on the currently acquired voltage values and frequency values every time one voltage value and one frequency value are acquired;
determining the lowest execution energy consumption in the execution energy consumption;
determining an execution duration corresponding to the lowest execution energy consumption;
determining optimal execution scheduling information of the target task based on the resource consumption value, the minimum execution energy consumption and the execution duration corresponding to each available time slot, wherein the optimal execution scheduling information comprises a starting time and an ending time for executing the target task;
determining a utility value for executing the target task based on the optimal execution scheduling information;
and if the utility value is larger than a preset threshold value, distributing computing resources in the GPU for the target task based on the optimal execution scheduling information.
2. The method of claim 1, wherein determining the resource consumption value corresponding to each available time slot comprises:
determining the used energy consumption;
and determining the resource consumption value corresponding to each available time slot based on the used energy consumption.
3. The method according to claim 1, wherein the method further comprises:
and if the utility value is smaller than a preset threshold value, prohibiting the allocation of computing resources in the GPU for the target task.
4. An apparatus for allocating computing resources, the apparatus comprising:
the acquisition module is used for acquiring a target task corresponding to the target bidding account;
a determining module configured to determine a plurality of available time slots for performing the target task;
determining resource consumption values corresponding to the available time slots respectively;
acquiring voltage values in a preset voltage set and frequency values in a preset frequency set one by one, and determining the execution energy consumption of the target task based on the currently acquired voltage values and frequency values every time one voltage value and one frequency value are acquired;
determining the lowest execution energy consumption in the execution energy consumption;
determining an execution duration corresponding to the lowest execution energy consumption;
based on the resource consumption value, the minimum execution energy consumption and the execution duration corresponding to each available time slot, the optimal execution scheduling information of the target task is determined,
determining optimal execution scheduling information of the target task, wherein the optimal execution scheduling information comprises a starting time and an ending time of executing the target task;
the determining module is used for determining a utility value for executing the target task based on the optimal execution scheduling information;
and the allocation module is used for allocating computing resources in the GPU for the target task based on the optimal execution scheduling information if the utility value is larger than a preset threshold value.
5. The apparatus of claim 4, wherein the means for determining is configured to:
determining the used energy consumption;
and determining the resource consumption value corresponding to each available time slot based on the used energy consumption.
6. The apparatus of claim 4, wherein the distribution module is further configured to:
and if the utility value is smaller than a preset threshold value, prohibiting the allocation of computing resources in the GPU for the target task.
CN201911159221.2A 2019-11-22 2019-11-22 Method and device for distributing computing resources Active CN111124665B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911159221.2A CN111124665B (en) 2019-11-22 2019-11-22 Method and device for distributing computing resources

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201911159221.2A CN111124665B (en) 2019-11-22 2019-11-22 Method and device for distributing computing resources

Publications (2)

Publication Number Publication Date
CN111124665A CN111124665A (en) 2020-05-08
CN111124665B true CN111124665B (en) 2023-07-28

Family

ID=70496365

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201911159221.2A Active CN111124665B (en) 2019-11-22 2019-11-22 Method and device for distributing computing resources

Country Status (1)

Country Link
CN (1) CN111124665B (en)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101262679B1 (en) * 2013-02-13 2013-05-20 송형근 Device to allocate resource effectively for cloud computing
CN106651553A (en) * 2017-01-23 2017-05-10 武汉万般上品信息技术有限公司 Cloud container service-based batch processing auction mechanism
CN109815009A (en) * 2018-12-28 2019-05-28 周口师范学院 Scheduling of resource and optimization method under a kind of CSP
CN110162393A (en) * 2019-05-30 2019-08-23 奇瑞汽车股份有限公司 Method for scheduling task, device and storage medium

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101262679B1 (en) * 2013-02-13 2013-05-20 송형근 Device to allocate resource effectively for cloud computing
CN106651553A (en) * 2017-01-23 2017-05-10 武汉万般上品信息技术有限公司 Cloud container service-based batch processing auction mechanism
CN109815009A (en) * 2018-12-28 2019-05-28 周口师范学院 Scheduling of resource and optimization method under a kind of CSP
CN110162393A (en) * 2019-05-30 2019-08-23 奇瑞汽车股份有限公司 Method for scheduling task, device and storage medium

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王艳 ; 孙茂圣 ; 朱俊武 ; .一种基于动态规划的虚拟机分配方法.现代电子技术.2016,(第21期),全文. *

Also Published As

Publication number Publication date
CN111124665A (en) 2020-05-08

Similar Documents

Publication Publication Date Title
CN107659433B (en) Cloud resource scheduling method and equipment
Toosi et al. An auction mechanism for cloud spot markets
Zheng et al. On the viability of a cloud virtual service provider
Calheiros et al. Cost-effective provisioning and scheduling of deadline-constrained applications in hybrid clouds
Lampe et al. Maximizing cloud provider profit from equilibrium price auctions
CN105204924A (en) Managing private use of program execution capacity
Liu et al. Strategy-proof mechanism for provisioning and allocation virtual machines in heterogeneous clouds
US20170178041A1 (en) Completion contracts
CN106789118A (en) Cloud computing charging method based on service-level agreement
Mashayekhy et al. Truthful mechanisms for competitive reward-based scheduling
CN109815009B (en) Resource scheduling and optimizing method under CSP
Yi et al. Flexible instance: Meeting deadlines of delay tolerant jobs in the cloud with dynamic pricing
Mashayekhy et al. A two-sided market mechanism for trading big data computing commodities
Gao et al. A price-based iterative double auction for charger sharing markets
Zheng et al. Market-oriented online bi-objective service scheduling for pleasingly parallel jobs with variable resources in cloud environments
CN111124665B (en) Method and device for distributing computing resources
CN106845718A (en) A kind of efficient cloud market elasticity time limit computing resource auction mechanism
Nesmachnow et al. List scheduling heuristics for virtual machine mapping in cloud systems
KR101720292B1 (en) Method for allocating cloud service resources using expectation values for service provider&#39;s profit
CN112150181B (en) Resource allocation method, device, equipment and storage medium
CN114500303A (en) Temporary cloud resource usage charging method
CN112865199A (en) Online scheduling method and device for electric vehicle charging demand response
Zhou et al. An online emergency demand response mechanism for cloud computing
CN109410014A (en) Virtual resource under satellite network based on pricing mechanism shares distribution method and application
KR101721644B1 (en) Method for allocating cloud service resources considering quality of service regarding task processing time of service users and service provider&#39;s profit

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant