WO2023015788A1 - Serverless computing resource allocation system for energy consumption optimization - Google Patents

Serverless computing resource allocation system for energy consumption optimization Download PDF

Info

Publication number
WO2023015788A1
WO2023015788A1 PCT/CN2021/135610 CN2021135610W WO2023015788A1 WO 2023015788 A1 WO2023015788 A1 WO 2023015788A1 CN 2021135610 W CN2021135610 W CN 2021135610W WO 2023015788 A1 WO2023015788 A1 WO 2023015788A1
Authority
WO
WIPO (PCT)
Prior art keywords
function
resource
energy consumption
serverless computing
resource allocation
Prior art date
Application number
PCT/CN2021/135610
Other languages
French (fr)
Chinese (zh)
Inventor
赵来平
李克秋
贾雪超
Original Assignee
天津大学
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 天津大学 filed Critical 天津大学
Publication of WO2023015788A1 publication Critical patent/WO2023015788A1/en

Links

Images

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/505Allocation 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 load
    • 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/5011Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N20/00Machine learning
    • 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

Definitions

  • the invention relates to the technical field of cloud computing, in particular to a technology for reducing system energy consumption and ensuring function performance under the serverless computing architecture of a cloud data center.
  • Serverless computing is a rapidly evolving cloud application architecture. Serverless computing does not require users to configure and manage resources, and can automatically expand according to user needs, greatly improving development efficiency.
  • current serverless frameworks generally only scale functions horizontally based on queries per second (QPS) or resource utilization in a specific dimension, and do not dynamically modify the resource amount of a function.
  • QPS queries per second
  • existing serverless platforms do not consider energy consumption when allocating resources.
  • the present study shows that for the same function, different combinations of multidimensional resource allocations can result in the same processing delay but with very different energy consumption. Therefore, the concept of energy exchange is introduced, that is, different energy consumption results in the same processing delay. Energy swappability provides the possibility to reduce energy consumption while guaranteeing function performance.
  • the present invention proposes a serverless computing resource allocation system oriented towards energy consumption optimization, which realizes independent A function-level resource allocation system and method that runs on serverless and is based on energy consumption exchange.
  • a serverless computing resource allocation system oriented to energy consumption optimization includes a resource explorer, a resource configurator, a serverless computing system, a system monitor, and a resource coordinator; wherein:
  • the resource explorer is used to use the machine learning prediction model trained offline to perform resource exploration for the newly started function in the serverless computing system, find the configuration that meets the function's energy requirements in the user resources to be allocated, and find the minimum energy consumption at the same time.
  • Optimized optimal configuration scheme that is, find the resource configuration that minimizes energy consumption in the critical section, that is, the resource configuration scheme that minimizes power consumption P*request execution time T when the function is running;
  • the resource configurator is used to find all resource configurations that meet the function performance requirements in the resource configuration scheme
  • the system monitor is used to monitor three indicators: (1) whether there is a newly deployed function in the serverless computing platform; (2) whether the current power of the server exceeds the heat dissipation design power consumption threshold, if exceeded, the monitor will Send a power consumption overload alarm to the coordinator; (3) Whether the delay of each function exceeds its respective delay threshold, once the function delay is found to exceed the set threshold, the system monitor will send a delay violation alarm to the system coordinator;
  • the resource coordinator is configured to make corresponding adjustments after receiving the alarm information sent by the system monitor, that is, after receiving the power consumption overload alarm, execute the function with the largest power consumption in the serverless computing system Cooling process, each step lowers the frequency of the CPU core owned by the function until the overall power is lower than the set threshold.
  • a serverless computing resource allocation system oriented to energy consumption optimization of the present invention can achieve the following beneficial technical effects:
  • Figure 1 is a schematic diagram of exchangeable energy consumption under different resource combinations
  • Fig. 2 is a schematic diagram 1 of a serverless computing resource allocation system oriented to energy consumption optimization in the present invention
  • FIG. 3 is a second schematic diagram of the architecture of a serverless computing resource allocation system oriented to energy consumption optimization in the present invention
  • FIG. 4 is a schematic diagram of comparison results of energy consumption and delay under different workloads between the present invention and the control of energy consumption by the operating system.
  • FIG. 1 it is a schematic diagram of exchangeable energy consumption under different resource combinations, which includes the function runtime power under the combination of the number of CPU cores and the main frequency, and the number of CPU cores and the number of instances.
  • the specific meaning of energy exchange is that different combinations of multi-dimensional resource allocation can result in the same processing delay, but have different energy consumption.
  • the resource configuration in area 1 on the right side of the dotted line can meet the performance requirements of the function, and in this area, the dotted line box 2 is the optimal resource allocation scheme with the least power consumption during runtime.
  • the present invention utilizes a machine learning model constructed offline to find a resource allocation scheme that minimizes energy consumption under the current load intensity; meanwhile, it maintains good operation under the influence of uncontrollable factors in the serverless computing architecture.
  • FIGS. 2 and 3 they are schematic diagrams 1 and 2 of the architecture of a serverless computing resource allocation system oriented towards energy consumption optimization in the present invention.
  • the system includes a resource explorer 100 , a resource configurator 200 , a serverless computing system 300 , a system monitor 400 and a resource coordinator 500 .
  • the specific description is as follows:
  • the resource explorer 100 is used to use the machine learning prediction model trained offline to perform resource exploration for the newly started function in the serverless computing system 300, find out the configuration that meets the function's performance requirements in the user resources to be allocated, and at the same time find the configuration that meets the performance requirements of the function in the numerous resources.
  • the function's power consumption predictor and the processing time of the function request are used to find the global optimal solution that minimizes energy consumption.
  • the best resource combination is then sent to the resource configurator 200 .
  • the machine learning prediction model used in the present invention is described as follows:
  • the resource explorer In order to quickly find the optimal configuration solution for the function, first reduce the resources and eliminate those resource configurations that far exceed the resource requirements of the function itself. For example, for a commercial server in the data center, the number of CPU cores is from a maximum of 80 Reduced to 16. Then use the binary search algorithm to find the critical section that meets the performance requirements of the function in the filtered resource allocation scheme. Finally, the traversal is carried out in the critical section to find the resource allocation scheme that meets the performance requirements of the function and consumes the least energy.
  • the specific working process of the resource explorer is as follows: First, use the function performance model built offline to find all resource configurations that meet the function performance requirements in the filtered resource configuration scheme.
  • the function performance model uses the number of requests per second, the calculation amount of each request, the memory size, the size of the last level cache, the number of CPU cores, the main frequency of the CPU cores, and the number of copies of the function instance as the input of the model.
  • the binary search algorithm is used for each dimension of resources, which speeds up the positioning of the critical section.
  • an exhaustive traversal method is used to prevent suboptimal solutions from being found. Locate the optimal resource configuration in the critical section, using the power consumption model of the function and the execution time model of each request.
  • the power consumption model of the function uses the number of requests per second, the calculation amount of each request, the size of the last level cache, the number of CPU cores, the main frequency of the CPU core, and the number of copies of the function instance as the input of the power consumption model when the function is running.
  • the execution time model uses the calculation amount of each request, the size of the last level cache, the number of CPU cores and the main frequency of the CPU core as the input of the request processing time model, and finds the resource configuration that minimizes energy consumption in the critical section, that is, the function runtime Power consumption P* requests the resource allocation scheme with the smallest execution time T.
  • the resource configurator 200 is configured to find all resource configurations satisfying function performance requirements in the resource configuration scheme.
  • the specific working process of the resource allocator 200 is: after receiving the optimal resource combination, it is responsible for interacting with the platform and the operating system, and actually executes the operation of allocating resources for the function.
  • the system monitor 400 is used to monitor three indicators: (1) whether there is a newly deployed function in the serverless computing platform. (2) Whether the current power of the server exceeds the thermal design power consumption threshold, if so, the monitor will send a power consumption overload alarm to the coordinator. (3) Whether the delay of each function exceeds its respective delay threshold. Once the function delay is found to exceed the set threshold, the system monitor 400 will send a delay violation alarm to the system coordinator 500 .
  • the presence of the system monitor 400 not only allows for slight deviations in the predictor, but also reduces fluctuations in function performance due to uncontrollable system disturbances.
  • the specific working process of the system monitor 400 is: regularly check the total power of the current node.
  • the system monitor 400 will issue a power consumption overload alarm.
  • the system monitor 400 monitors whether there is a newly deployed function in the serverless computing platform; if there is, first, a thread for recording function information will be asynchronously started to collect the power consumption at startup of the function, the startup time of the container and the idle power consumption of the container; After the collection is completed, calculate the maximum survival time of the function based on the information, the formula is as follows:
  • the system monitor 400 triggers subsequent resource exploration and resource allocation.
  • the system monitor 400 In order to strictly guarantee the function performance, the system monitor 400 needs to collect the runtime performance of all functions deployed in the system in real time. If the performance of the function is found to be lower than the minimum performance requirement set by the system, the system monitor 400 will issue a function performance violation alarm .
  • the resource coordinator 500 is configured to make corresponding adjustments according to the corresponding alarm after receiving the alarm information sent by the system monitor 400 .
  • the function with the largest power consumption in the serverless computing system 300 will be cooled down, and the frequency of the CPU core owned by the function will be reduced step by step each time until the overall power is lower than the set threshold.
  • the resource coordinator 500 In order to make the function run stably in a real production environment, it is necessary for the resource coordinator 500 to make corresponding adjustments after receiving the alarm information sent by the monitor.
  • the setting of the power threshold allows for a more gentle handling of power overloads in a way that has far less impact on the performance of functions than measures taken automatically by the server.
  • the coordinator will use a heuristic exploration method to try to increase the amount of resources (CPU core number, core main frequency, last-level cache, etc.) by one unit each time for the function.
  • the specific working process of the resource coordinator 500 is:
  • the resource coordinator 500 After receiving the power consumption overload alarm, the resource coordinator 500 first needs to find the function with the highest power consumption in the system, and then try to reduce the main frequency of the core owned by the function. In order to take into account the performance of the function, the resource coordinator 500 only adjusts the main frequency of one level at a time. After receiving a function performance violation alert, each iteration will try to increase the resource amount of a single dimension for the function (for example, a CPU core, a main frequency of 100MHz, a memory size of 100M, a last-level cache and other server physical resources ). Also, after each iteration, check the runtime performance of the function. If the performance improves, continue to increase the amount of resources for this dimension in the next iteration.
  • a single dimension for the function for example, a CPU core, a main frequency of 100MHz, a memory size of 100M, a last-level cache and other server physical resources.
  • a resource will be selected from other resource dimensions for resource allocation. Until the function with the highest power is found in the monitoring queue and the frequency reduction operation is performed on it. That is, after the resource coordinator 500 receives a function delay violation alarm, it will try to increase the amount of resources in a certain dimension for the function in each iteration. If the operation is found to be effective, it will continue to increase the resources in this dimension; A dimension of resources until the performance requirements of the function are guaranteed.
  • the resource coordinator 500 In order to reduce waste of resources, the resource coordinator 500 also reclaims some resources from functions whose delays are much smaller than the set target. At the same time, once the resource coordinator 500 finds that the current QPS exceeds 20% of the initial value, it will re-trigger the resource exploration of this function. The presence of the system monitor 400 and the resource coordinator 500 allows small biases in the predictors and eliminates function delay violations due to uncontrollable system disturbances.
  • the system needs to be initialized before use, including the following operations:
  • the present invention starts from the energy consumption of the serverless computing workload, and tries to reduce the energy consumption by using some simple and effective methods.
  • the concept of energy exchange is introduced to minimize the energy consumption of serverless workloads.
  • a function-level runtime system is designed to manage the resource allocation of functions and minimize the energy consumption of functions while ensuring the performance requirements of functions.
  • the present invention effectively finds a resource allocation scheme that minimizes energy consumption while ensuring function performance requirements.
  • FIG. 4 it is a schematic diagram of comparison results of energy consumption and delay under different workloads between the present invention and the control of energy consumption by the operating system.
  • the present invention comprehensively considers issues such as energy consumption and function runtime performance, and enables the function to run stably in a disturbed environment through feedback adjustment to the workload.
  • the system is a runtime system that actively manages the resource allocation of functions, and is able to reduce the overall energy consumption by coordinating the length of each stage of the workload to minimize energy consumption and guarantee the performance of functions.
  • the system is not strongly coupled with serverless computing platforms, so it can run on most platforms.
  • the evaluation results show that compared with the state-of-the-art technology, the invention can reduce the energy consumption of computing-intensive serverless workloads by up to 21.2%, while strictly guaranteeing the function runtime performance.

Abstract

Disclosed in the present invention is a serverless computing resource allocation system for energy consumption optimization. The system comprises a resource explorer (100), a resource configurator (200), a serverless computing system (300), a system monitor (400) and a resource coordinator (500), wherein the resource explorer (100) is used for performing resource exploration for a newly started function in the serverless computing system (300), so as to find a configuration that meets the performance requirements of the function and to find the optimal configuration scheme for the minimum energy consumption; the resource configurator (200) is used for finding, in the resource configuration scheme, all resource configurations that meet the performance requirements of the function; the system monitor (400) is used for monitoring indexes; and the resource coordinator (500) is used for making a corresponding adjustment after receiving alarm information which is sent from the system monitor (400). By means of the present invention, compared with the prior art, the energy consumption can be reduced and the energy efficiency of a data center can be improved while ensuring the performance of a function in a serverless computing environment; and the serverless computing resource allocation system is not strongly coupled to a platform and can be applied to any serverless computing system.

Description

一种面向能耗优化的无服务器计算资源分配系统A Serverless Computing Resource Allocation System Oriented to Energy Consumption Optimization 技术领域technical field
本发明涉及云计算技术领域,特别涉及云数据中心无服务器计算架构下降低系统能耗的同时保障函数性能的技术。The invention relates to the technical field of cloud computing, in particular to a technology for reducing system energy consumption and ensuring function performance under the serverless computing architecture of a cloud data center.
背景技术Background technique
随着数据中心规模的快速扩大,数据中心所占的能耗比例逐渐增加。因此,数据中心巨大的能耗成为云服务提供商迫切需要解决的问题。降低能耗不仅响应节能减排政策和绿色数据中心的号召,还能确保服务器在额定功率内安全运行。更重要的是,对于云服务提供商来说,降低能耗意味着降低数据中心的运营和维护成本。这些原因促使云服务提供商努力提高能源效率。With the rapid expansion of the scale of data centers, the proportion of energy consumption in data centers is gradually increasing. Therefore, the huge energy consumption of data centers has become an urgent problem for cloud service providers to solve. Reducing energy consumption not only responds to the call for energy conservation and emission reduction policies and green data centers, but also ensures that servers operate safely within rated power. More importantly, for cloud service providers, reducing energy consumption means reducing data center operation and maintenance costs. These reasons drive cloud service providers to strive to improve energy efficiency.
无服务器计算是一种快速发展的云应用架构。无服务器计算不需要用户配置和管理资源,可以根据用户需求自动扩展,大大提高开发效率。然而,当前的无服务器框架通常仅基于每秒查询数(QPS)或特定维度的资源利用率对函数进行水平扩展,不会动态修改函数的资源量。此外,现有的无服务器平台为了严格保障函数性能,在分配资源时没有考虑能耗问题。本发明的研究表明,对于相同的函数,多维资源分配的不同组合可以导致相同的处理延迟,但具有非常不同的能耗。因此,引入了能量可交换的概念,即不同的能耗导致相同的处理延迟。能耗可交换性提供了保障函数性能的同时降低能耗的可能性。Serverless computing is a rapidly evolving cloud application architecture. Serverless computing does not require users to configure and manage resources, and can automatically expand according to user needs, greatly improving development efficiency. However, current serverless frameworks generally only scale functions horizontally based on queries per second (QPS) or resource utilization in a specific dimension, and do not dynamically modify the resource amount of a function. In addition, in order to strictly guarantee function performance, existing serverless platforms do not consider energy consumption when allocating resources. The present study shows that for the same function, different combinations of multidimensional resource allocations can result in the same processing delay but with very different energy consumption. Therefore, the concept of energy exchange is introduced, that is, different energy consumption results in the same processing delay. Energy swappability provides the possibility to reduce energy consumption while guaranteeing function performance.
应用程序的混合部署会导致服务器的功率过载,因此为了使应用程序在功率受限的服务器上保持稳定,许多研究工作开始讨论能源效率问题。虽然这样解决了在功率受限的服务器上将应用进行混合部署,但是服务器的能耗仍然很高。像动态电压频率调整和英特尔p-state这样的技术只能通过预先设置核心频率来实现有限的节能,因此需要一种更加积极的方法来降低能耗。虽然先前的工作在具有功率约束的服务器上保证应用性能 方面表现良好,但是如何降低无服务器计算架构下的能耗仍然是一个未解决的问题。Mixed deployment of applications can lead to power overloading of servers, so in order to keep applications stable on power-constrained servers, many research efforts have begun to discuss energy efficiency issues. Although this solves the mixed deployment of applications on power-constrained servers, the energy consumption of the servers is still high. Technologies like Dynamic Voltage Frequency Scaling and Intel p-state can only achieve limited power savings by presetting the core frequency, so a more aggressive approach to reducing power consumption is needed. Although previous work has performed well in guaranteeing application performance on servers with power constraints, how to reduce energy consumption under serverless computing architectures is still an unsolved problem.
发明内容Contents of the invention
为了降低无服务器工作负载的能耗并保障函数的运行时性能,本发明提出了一种面向能耗优化的无服务器计算资源分配系统,基于能耗可交换的函数级别的资源分配,实现了独立运行的在无服务器上、并且基于能耗可交换的函数级别的资源分配系统及方法。In order to reduce the energy consumption of serverless workloads and ensure the runtime performance of functions, the present invention proposes a serverless computing resource allocation system oriented towards energy consumption optimization, which realizes independent A function-level resource allocation system and method that runs on serverless and is based on energy consumption exchange.
本发明的技术方案如下:Technical scheme of the present invention is as follows:
一种面向能耗优化的无服务器计算资源分配系统,该系统包括资源探索器、资源配置器、无服务器计算系统、系统监控器以及资源协调器;其中:A serverless computing resource allocation system oriented to energy consumption optimization, the system includes a resource explorer, a resource configurator, a serverless computing system, a system monitor, and a resource coordinator; wherein:
所述资源探索器,用于利用离线训练好的机器学习预测模型为无服务器计算系统中新启动的函数进行资源探索,找到待分配用户资源中满足函数应能需求的配置,同时找到能耗最小化的最佳配置方案:即在临界区中找到能耗最小化的资源配置,即函数运行时功耗P*请求执行时间T最小的资源配置方案;The resource explorer is used to use the machine learning prediction model trained offline to perform resource exploration for the newly started function in the serverless computing system, find the configuration that meets the function's energy requirements in the user resources to be allocated, and find the minimum energy consumption at the same time. Optimized optimal configuration scheme: that is, find the resource configuration that minimizes energy consumption in the critical section, that is, the resource configuration scheme that minimizes power consumption P*request execution time T when the function is running;
所述资源配置器,用于实现资源配置方案中找到所有满足函数性能需求的资源配置;The resource configurator is used to find all resource configurations that meet the function performance requirements in the resource configuration scheme;
所述系统监控器,用于监控三个指标:(1)无服务器计算平台中是否有新部署的函数;(2)服务器的当前功率是否超过了散热设计功耗阈值,如果超过,监控器会向协调器发出功耗过载警报;(3)每个函数的延迟是否超过了各自的延迟阈值,一旦发现函数延迟超过了设定的阈值,系统监控器则会向系统协调器发出延迟违反警报;The system monitor is used to monitor three indicators: (1) whether there is a newly deployed function in the serverless computing platform; (2) whether the current power of the server exceeds the heat dissipation design power consumption threshold, if exceeded, the monitor will Send a power consumption overload alarm to the coordinator; (3) Whether the delay of each function exceeds its respective delay threshold, once the function delay is found to exceed the set threshold, the system monitor will send a delay violation alarm to the system coordinator;
所述资源协调器,用于在接收到系统监控器发来的警报信息后,做出相应的调整,即:在接收到功耗过载警报之后,对无服务器计算系统中功耗最大的函数进行降温处理,每次逐级降低函数所拥有CPU核心的频率,直至整体的功率低于设置的阈值。The resource coordinator is configured to make corresponding adjustments after receiving the alarm information sent by the system monitor, that is, after receiving the power consumption overload alarm, execute the function with the largest power consumption in the serverless computing system Cooling process, each step lowers the frequency of the CPU core owned by the function until the overall power is lower than the set threshold.
与现有技术相比,本发明的一种面向能耗优化的无服务器计算资源分配系统,可以达成以下有益的技术效果:Compared with the prior art, a serverless computing resource allocation system oriented to energy consumption optimization of the present invention can achieve the following beneficial technical effects:
1)能够在无服务器计算环境中保障函数性能的同时,以降低能耗并提高数据中心的能源效率;1) It can reduce energy consumption and improve the energy efficiency of data centers while ensuring function performance in a serverless computing environment;
2)与平台没有强耦合,能够用于任何的无服务器计算系统;2) There is no strong coupling with the platform, and it can be used in any serverless computing system;
3)能够降低计算密集型工作负载21.2%的能耗,同时保障了函数的运行时性能。3) It can reduce the energy consumption of computationally intensive workloads by 21.2%, while ensuring the runtime performance of functions.
4)能够在能源感知的环境中进行更精细的资源调度。4) Enable finer resource scheduling in an energy-aware environment.
附图说明Description of drawings
图1为不同种资源组合下能耗可交换的示意图;Figure 1 is a schematic diagram of exchangeable energy consumption under different resource combinations;
图2为本发明的一种面向能耗优化的无服务器计算资源分配系统架构示意图一;Fig. 2 is a schematic diagram 1 of a serverless computing resource allocation system oriented to energy consumption optimization in the present invention;
图3为本发明的一种面向能耗优化的无服务器计算资源分配系统架构示意图二;FIG. 3 is a second schematic diagram of the architecture of a serverless computing resource allocation system oriented to energy consumption optimization in the present invention;
图4为本发明与操作系统对能耗的控制在不同工作负载下的能耗和延迟对比结果示意图。FIG. 4 is a schematic diagram of comparison results of energy consumption and delay under different workloads between the present invention and the control of energy consumption by the operating system.
具体实施方式Detailed ways
以下结合附图,对本发明设计的框架结构、功能及作用详细说明如下。Below in conjunction with the accompanying drawings, the framework structure, functions and effects of the present invention are described in detail as follows.
通过对无服务器工作负载做了详细深入的分析刻画,能够找到无服务器计算工作负载中能耗较为严重且可以控制的部分。如图1所示,为不同种资源组合下能耗可交换的示意图,其中包含了CPU核心数与主频、CPU核心数与实例数组合下的函数运行时功率。能耗可交换的具体含义是多维度资源分配的不同组合可以导致相同的处理延迟,但是具有不同的能耗。虚线右侧的区域1的资源配置都可以满足函数的性能需求,而在此区域内,虚线框2为运行时功耗最小的最佳资源配置方案。本发明利用离线构建的机器学习模型找到当前负载强度下能耗最小化的资源分配方案;同时在受到无服务器计算架构中不可控因素的影响下保持良好地运行。Through detailed and in-depth analysis and characterization of serverless workloads, it is possible to find the more serious and controllable parts of serverless computing workloads. As shown in Figure 1, it is a schematic diagram of exchangeable energy consumption under different resource combinations, which includes the function runtime power under the combination of the number of CPU cores and the main frequency, and the number of CPU cores and the number of instances. The specific meaning of energy exchange is that different combinations of multi-dimensional resource allocation can result in the same processing delay, but have different energy consumption. The resource configuration in area 1 on the right side of the dotted line can meet the performance requirements of the function, and in this area, the dotted line box 2 is the optimal resource allocation scheme with the least power consumption during runtime. The present invention utilizes a machine learning model constructed offline to find a resource allocation scheme that minimizes energy consumption under the current load intensity; meanwhile, it maintains good operation under the influence of uncontrollable factors in the serverless computing architecture.
如图2、3所示,为本发明的一种面向能耗优化的无服务器计算资源分配系统架构 示意图一、二。该系统包括资源探索器100、资源配置器200、无服务器计算系统300、系统监控器400以及资源协调器500。具体描述如下:As shown in Figures 2 and 3, they are schematic diagrams 1 and 2 of the architecture of a serverless computing resource allocation system oriented towards energy consumption optimization in the present invention. The system includes a resource explorer 100 , a resource configurator 200 , a serverless computing system 300 , a system monitor 400 and a resource coordinator 500 . The specific description is as follows:
资源探索器100,用于利用离线训练好的机器学习预测模型为无服务器计算系统300中新启动的函数进行资源探索,找到待分配用户资源中满足函数应能需求的配置,同时在众多的资源配置方案中找到找能耗最小化的最佳配置方案。通过对无服务器工作负载能耗的深入分析,找到无服务器计算系统中可以进行能耗优化的部分。为了防止函数在低功耗状态下运行更长的时间而导致整体能耗更高,分别利用函数的功耗预测器以及函数请求的处理时间来找到能耗最小化的全局最优解。在资源配置组合中,然后将最佳的资源组合发送给资源配置器200。本发明所使用的机器学习预测模型描述如下:The resource explorer 100 is used to use the machine learning prediction model trained offline to perform resource exploration for the newly started function in the serverless computing system 300, find out the configuration that meets the function's performance requirements in the user resources to be allocated, and at the same time find the configuration that meets the performance requirements of the function in the numerous resources. In the configuration scheme, find the best configuration scheme to minimize energy consumption. Through an in-depth analysis of the energy consumption of serverless workloads, find the parts of the serverless computing system that can be optimized for energy consumption. In order to prevent the function from running in a low-power state for a longer time and resulting in higher overall energy consumption, the function's power consumption predictor and the processing time of the function request are used to find the global optimal solution that minimizes energy consumption. Among the resource configuration combinations, the best resource combination is then sent to the resource configurator 200 . The machine learning prediction model used in the present invention is described as follows:
为了找到能耗最小化且可以满足函数性能需求的最佳资源配置,需要建立函数的功耗和延迟模型。有许多指标影响函数的功耗和延迟,包括负载强度、函数实例的数量和各种系统层资源(CPU核心数、末级缓存、CPU频率、内存、内存带宽、网络带宽、磁盘等)。使用皮尔逊和斯皮尔曼相关系数来评估这些指标与函数运行时功率和延迟之间的相关性。最后,选择了与函数延迟相关性最强的六个指标(包括末级缓存、CPU核心主频率、CPU核心数量、函数实例的数量、QPS、每条请求的计算量),以及与能耗相关性最强的四个指标(包括末级缓存、CPU核心主频率、CPU核心数量和每条请求的计算量)。并以此来构建数据集用于离线训练延迟和能耗模型。In order to find the optimal resource configuration that minimizes energy consumption and can meet the performance requirements of the function, it is necessary to establish a power consumption and delay model of the function. There are many metrics that affect a function's power consumption and latency, including load intensity, number of function instances, and various system-level resources (number of CPU cores, last-level cache, CPU frequency, memory, memory bandwidth, network bandwidth, disk, etc.). Correlations between these metrics and function runtime power and latency were assessed using Pearson and Spearman correlation coefficients. Finally, the six indicators with the strongest correlation with function latency (including last-level cache, CPU core frequency, number of CPU cores, number of function instances, QPS, and calculation amount per request) were selected, as well as those related to energy consumption. The four most powerful indicators (including last-level cache, CPU core frequency, number of CPU cores, and calculation amount per request). And use this to build a data set for offline training latency and energy consumption models.
为了快速找到函数的最佳配置方案,首先对资源进行缩减,消除那些远超函数本身资源需求的资源配置,例如,对于数据中心的一台商用服务器来说,CPU核心的数量从最大值80个缩减到16个。然后使用二分搜索算法在过滤后的资源配置方案中找到满足函数性能需求的临界区。最后在临界区内展开遍历,找到满足函数性能需求且能耗最小的资源配置方案。资源探索器的具体工作过程为:首先,利用离线构建的函数性能模型,在过滤后的资源配置方案中找到所有满足函数性能需求的资源配置。函数性能模型使用每秒请求数量、每条请求的计算量、内存大小、末级缓存大小、CPU核心数量、CPU核心的主频率和函数实例的副本数量作为模型的输入。在寻找所有满足函数性能需求的 资源配置方案的过程中,对每一维度资源使用二分查找算法,加快了对临界区的定位。In order to quickly find the optimal configuration solution for the function, first reduce the resources and eliminate those resource configurations that far exceed the resource requirements of the function itself. For example, for a commercial server in the data center, the number of CPU cores is from a maximum of 80 Reduced to 16. Then use the binary search algorithm to find the critical section that meets the performance requirements of the function in the filtered resource allocation scheme. Finally, the traversal is carried out in the critical section to find the resource allocation scheme that meets the performance requirements of the function and consumes the least energy. The specific working process of the resource explorer is as follows: First, use the function performance model built offline to find all resource configurations that meet the function performance requirements in the filtered resource configuration scheme. The function performance model uses the number of requests per second, the calculation amount of each request, the memory size, the size of the last level cache, the number of CPU cores, the main frequency of the CPU cores, and the number of copies of the function instance as the input of the model. In the process of finding all resource allocation schemes that meet the performance requirements of the function, the binary search algorithm is used for each dimension of resources, which speeds up the positioning of the critical section.
为了在所有满足函数性能需求的资源配置方案中找到能耗最小化的最佳资源配置,使用了穷举遍历的方式防止找到次优解。在临界区中定位最佳资源配置,使用函数的功耗模型和每条请求的执行时间模型。函数的功耗模型使用每秒请求数量,每条请求的计算量、末级缓存大小、CPU核心数量,CPU核心的主频率和函数实例的副本数量作为函数运行时功耗模型的输入,请求的执行时间模型使用每条请求的计算量、末级缓存大小、CPU核心数量和CPU核心的主频率作为请求处理时间模型的输入,在临界区中找到能耗最小化的资源配置,即函数运行时功耗P*请求执行时间T最小的资源配置方案。In order to find the optimal resource allocation that minimizes energy consumption among all resource allocation schemes that meet the performance requirements of the function, an exhaustive traversal method is used to prevent suboptimal solutions from being found. Locate the optimal resource configuration in the critical section, using the power consumption model of the function and the execution time model of each request. The power consumption model of the function uses the number of requests per second, the calculation amount of each request, the size of the last level cache, the number of CPU cores, the main frequency of the CPU core, and the number of copies of the function instance as the input of the power consumption model when the function is running. The execution time model uses the calculation amount of each request, the size of the last level cache, the number of CPU cores and the main frequency of the CPU core as the input of the request processing time model, and finds the resource configuration that minimizes energy consumption in the critical section, that is, the function runtime Power consumption P* requests the resource allocation scheme with the smallest execution time T.
资源配置器200,用于实现资源配置方案中找到所有满足函数性能需求的资源配置。资源配置器200的具体工作过程为:在收到最佳资源组合之后,负责与平台和操作系统交互,真正执行为函数分配资源的操作。The resource configurator 200 is configured to find all resource configurations satisfying function performance requirements in the resource configuration scheme. The specific working process of the resource allocator 200 is: after receiving the optimal resource combination, it is responsible for interacting with the platform and the operating system, and actually executes the operation of allocating resources for the function.
系统监控器400,用于监控三个指标:(1)无服务器计算平台中是否有新部署的函数。(2)服务器的当前功率是否超过了散热设计功耗阈值,如果超过,监控器会向协调器发出功耗过载警报。(3)每个函数的延迟是否超过了各自的延迟阈值。一旦发现函数延迟超过了设定的阈值,系统监控器400则会向系统协调器500发出延迟违反警报。系统监控器400存在不仅允许预测器存在微小的偏差,而且减少了由于不可控的系统干扰导致的函数性能波动。系统监控器400的具体工作过程为:定期查看当前节点的总功率。如果当前服务器的总功率超过了系统所设置的功耗阈值,系统监控器400则会发出功耗过载警报。系统监控器400监控无服务器计算平台中是否有新部署的函数;如果有,首先会异步启动一个记录函数信息的线程,去收集该函数的启动时功耗、容器启动时间和容器空闲功耗;在收集完成后,根据这些信息,计算函数最长存活时间,公式如下:The system monitor 400 is used to monitor three indicators: (1) whether there is a newly deployed function in the serverless computing platform. (2) Whether the current power of the server exceeds the thermal design power consumption threshold, if so, the monitor will send a power consumption overload alarm to the coordinator. (3) Whether the delay of each function exceeds its respective delay threshold. Once the function delay is found to exceed the set threshold, the system monitor 400 will send a delay violation alarm to the system coordinator 500 . The presence of the system monitor 400 not only allows for slight deviations in the predictor, but also reduces fluctuations in function performance due to uncontrollable system disturbances. The specific working process of the system monitor 400 is: regularly check the total power of the current node. If the current total power of the server exceeds the power consumption threshold set by the system, the system monitor 400 will issue a power consumption overload alarm. The system monitor 400 monitors whether there is a newly deployed function in the serverless computing platform; if there is, first, a thread for recording function information will be asynchronously started to collect the power consumption at startup of the function, the startup time of the container and the idle power consumption of the container; After the collection is completed, calculate the maximum survival time of the function based on the information, the formula is as follows:
函数最长存活时间=冷启动功耗*冷启动时间/函数空闲功耗Maximum function survival time = cold start power consumption * cold start time / function idle power consumption
同时,系统监控器400触发后续的资源探索和资源分配。At the same time, the system monitor 400 triggers subsequent resource exploration and resource allocation.
为了严格地保障函数性能,系统监控器400需要实时采集系统中所部署所有函数的运行时性能,如果发现函数的性能低于系统设置的最低性能要求,系统监控器400则会发出函数性能违反警报。In order to strictly guarantee the function performance, the system monitor 400 needs to collect the runtime performance of all functions deployed in the system in real time. If the performance of the function is found to be lower than the minimum performance requirement set by the system, the system monitor 400 will issue a function performance violation alarm .
资源协调器500,用于在接收到系统监控器400发来的警报信息后,根据对应的警报做出相应的调整。在接收到功耗过载警报之后,会对无服务器计算系统300中功耗最大的函数进行降温处理,每次会逐级降低函数所拥有CPU核心的频率,直至整体的功率低于设置的阈值。为了在真实的生产环境中使函数能够稳定运行,需要资源协调器500在收到监控器发出的警报信息后做出对应的调整。功耗阈值的设定允许更温和地处理功耗过载,这种方式对函数性能的影响远小于服务器自动采取的措施。如果协调器接收的是函数性能违反警报,协调器会采用启发式的探索方式每次尝试为该函数增加一个单位的资源量(CPU核心数、核心主频率、末级缓存等)。资源协调器500的具体工作过程为:The resource coordinator 500 is configured to make corresponding adjustments according to the corresponding alarm after receiving the alarm information sent by the system monitor 400 . After receiving the power consumption overload alarm, the function with the largest power consumption in the serverless computing system 300 will be cooled down, and the frequency of the CPU core owned by the function will be reduced step by step each time until the overall power is lower than the set threshold. In order to make the function run stably in a real production environment, it is necessary for the resource coordinator 500 to make corresponding adjustments after receiving the alarm information sent by the monitor. The setting of the power threshold allows for a more gentle handling of power overloads in a way that has far less impact on the performance of functions than measures taken automatically by the server. If the coordinator receives a function performance violation alert, the coordinator will use a heuristic exploration method to try to increase the amount of resources (CPU core number, core main frequency, last-level cache, etc.) by one unit each time for the function. The specific working process of the resource coordinator 500 is:
资源协调器500在接收到功耗过载警报之后,首先需要在系统中查找当前功耗最大的函数,然后尝试降低该函数所拥有核心的主频率。为了兼顾函数的性能,资源协调器500每次只调节一个等级的主频率。在接收到函数性能违反警报之后,每次迭代都会尝试为该函数增加单一维度一个单位的资源量(例如一颗CPU核心、100MHz的主频率,100M的内存大小、一路末级缓存等服务器物理资源)。同时,在每次迭代后,检查该函数的运行时性能。如果性能提升,则在下次迭代中继续增加此维度的资源量。如果性能没有变化,则会在其他的资源维度中选择一种资源进行资源分配。直到在监控队列中找到功率最大的函数并对其进行降频操作。即,资源协调器500在接收到函数延迟违反警报之后,每次迭代都会尝试为该函数增加某一维度的资源量,如果发现操作有效则继续增加这一维度的资源,如果无效则尝试增加另一种维度的资源,直至函数的性能需求得到保障。After receiving the power consumption overload alarm, the resource coordinator 500 first needs to find the function with the highest power consumption in the system, and then try to reduce the main frequency of the core owned by the function. In order to take into account the performance of the function, the resource coordinator 500 only adjusts the main frequency of one level at a time. After receiving a function performance violation alert, each iteration will try to increase the resource amount of a single dimension for the function (for example, a CPU core, a main frequency of 100MHz, a memory size of 100M, a last-level cache and other server physical resources ). Also, after each iteration, check the runtime performance of the function. If the performance improves, continue to increase the amount of resources for this dimension in the next iteration. If there is no change in performance, a resource will be selected from other resource dimensions for resource allocation. Until the function with the highest power is found in the monitoring queue and the frequency reduction operation is performed on it. That is, after the resource coordinator 500 receives a function delay violation alarm, it will try to increase the amount of resources in a certain dimension for the function in each iteration. If the operation is found to be effective, it will continue to increase the resources in this dimension; A dimension of resources until the performance requirements of the function are guaranteed.
为了减少资源浪费,资源协调器500还会从那些延迟远小于设定目标的函数中回收部分资源。同时,资源协调器500一旦发现当前的QPS超过了初始时的20%,则会重 新触发该函数的资源探索。系统监视器400和资源协调器500的存在允许预测器有微小偏差,并且消除了由于不可控的系统干扰而导致的函数延迟违反。In order to reduce waste of resources, the resource coordinator 500 also reclaims some resources from functions whose delays are much smaller than the set target. At the same time, once the resource coordinator 500 finds that the current QPS exceeds 20% of the initial value, it will re-trigger the resource exploration of this function. The presence of the system monitor 400 and the resource coordinator 500 allows small biases in the predictors and eliminates function delay violations due to uncontrollable system disturbances.
该系统在使用前需要进行初始化设置,包括以下的操作:The system needs to be initialized before use, including the following operations:
初始化新函数到达的检测周期、服务器功耗阈值和每个函数的延迟阈值、服务器功率监测周期和函数性能监测周期、协调器的资源分配粒度。Initialize the detection period for the arrival of new functions, the server power consumption threshold and the delay threshold for each function, the server power monitoring period and function performance monitoring period, and the resource allocation granularity of the coordinator.
本发明从无服务器计算工作负载的能耗出发,尝试用一些简单有效的方法来降低能耗。首先,引入了能源可交换的概念,以最大限度地降低无服务器工作负载的能耗。然后,设计了一个函数级别的运行时系统,管理函数的资源分配,在保障函数性能需求的同时最小化函数能耗。凭借离线构建的机器学习模型,本发明有效地找到了一种在保证函数应能需求的同时最大限度降低能耗的资源分配方案。如图4所示,为本发明与操作系统对能耗的控制在不同工作负载下的能耗和延迟对比结果示意图。The present invention starts from the energy consumption of the serverless computing workload, and tries to reduce the energy consumption by using some simple and effective methods. First, the concept of energy exchange is introduced to minimize the energy consumption of serverless workloads. Then, a function-level runtime system is designed to manage the resource allocation of functions and minimize the energy consumption of functions while ensuring the performance requirements of functions. By virtue of the machine learning model constructed offline, the present invention effectively finds a resource allocation scheme that minimizes energy consumption while ensuring function performance requirements. As shown in FIG. 4 , it is a schematic diagram of comparison results of energy consumption and delay under different workloads between the present invention and the control of energy consumption by the operating system.
相比于现有技术,本发明综合考虑了能源消耗以及函数运行时性能等问题,通过对工作负载的反馈式调节,使得函数可以在受干扰的环境中稳定地运行。该系统是一个主动管理函数资源分配的运行时系统,能够通过协调工作负载各阶段的时间长度来降低总体能耗,以最大限度地减少能耗并保障函数的性能。同时,该系统与无服务器计算平台没有强耦合,因此它可以在大多数平台上运行。评估结果表明,与最先进的技术相比,本发明最多可降低计算密集型的无服务器工作负载21.2%的能耗,同时可以严格地保障函数运行时性能。Compared with the prior art, the present invention comprehensively considers issues such as energy consumption and function runtime performance, and enables the function to run stably in a disturbed environment through feedback adjustment to the workload. The system is a runtime system that actively manages the resource allocation of functions, and is able to reduce the overall energy consumption by coordinating the length of each stage of the workload to minimize energy consumption and guarantee the performance of functions. At the same time, the system is not strongly coupled with serverless computing platforms, so it can run on most platforms. The evaluation results show that compared with the state-of-the-art technology, the invention can reduce the energy consumption of computing-intensive serverless workloads by up to 21.2%, while strictly guaranteeing the function runtime performance.

Claims (5)

  1. 一种面向能耗优化的无服务器计算资源分配系统,其特征在于,该系统包括资源探索器(100)、资源配置器(200)、无服务器计算系统(300)、系统监控器(400)以及资源协调器(500);其中:A serverless computing resource allocation system oriented to energy consumption optimization, characterized in that the system includes a resource explorer (100), a resource configurator (200), a serverless computing system (300), a system monitor (400) and resource coordinator (500); wherein:
    所述资源探索器(100),用于利用离线训练好的机器学习预测模型为无服务器计算系统(300)中新启动的函数进行资源探索,找到待分配用户资源中满足函数应能需求的配置,同时找到能耗最小化的最佳配置方案:即在临界区中找到能耗最小化的资源配置,即:函数运行时功耗P*请求执行时间T最小的资源配置方案;The resource explorer (100) is used to use the machine learning prediction model trained offline to perform resource exploration for the newly started function in the serverless computing system (300), and find the configuration that meets the function's performance requirements in the user resources to be allocated , and at the same time find the best configuration scheme for minimizing energy consumption: that is, find the resource configuration that minimizes energy consumption in the critical section, that is, the resource configuration scheme that minimizes power consumption P*request execution time T when the function is running;
    所述资源配置器(200),用于实现资源配置方案中找到所有满足函数性能需求的资源配置;The resource configurator (200) is configured to find all resource configurations that meet function performance requirements in the resource configuration scheme;
    所述系统监控器(400),用于监控三个指标:(1)无服务器计算平台中是否有新部署的函数;(2)服务器的当前功率是否超过了散热设计功耗阈值,如果超过,监控器会向协调器发出功耗过载警报;(3)每个函数的延迟是否超过了各自的延迟阈值,一旦发现函数延迟超过了设定的阈值,系统监控器(400)则会向系统协调器(500)发出延迟违反警报;The system monitor (400) is used to monitor three indicators: (1) whether there is a newly deployed function in the serverless computing platform; (2) whether the current power of the server exceeds the heat dissipation design power consumption threshold, if exceeded, The monitor will send a power consumption overload alarm to the coordinator; (3) whether the delay of each function exceeds the respective delay threshold, once the function delay is found to exceed the set threshold, the system monitor (400) will report to the system to coordinate A device (500) issues a delay violation alert;
    所述资源协调器(500),用于在接收到系统监控器(400)发来的警报信息后,做出相应的调整,即:在接收到功耗过载警报之后,对无服务器计算系统(300)中功耗最大的函数进行降温处理,每次逐级降低函数所拥有CPU核心的频率,直至整体的功率低于设置的阈值。The resource coordinator (500) is configured to make corresponding adjustments after receiving the alarm information sent by the system monitor (400), that is: after receiving the power consumption overload alarm, the serverless computing system ( 300), the function with the largest power consumption is cooled, and the frequency of the CPU core owned by the function is reduced step by step each time until the overall power is lower than the set threshold.
  2. 如权利要求1所述的一种面向能耗优化的无服务器计算资源分配系统,其特征在于,所述机器学习预测模型使用皮尔逊和斯皮尔曼相关系数来评估这些指标与函数运行时功率和延迟之间的相关性;选择与函数延迟相关的六个指标包括末级缓存、CPU核心主频率、CPU核心数量、函数实例的数量、QPS、每条请求的计算量,以及与能耗相关的四个指标包括末级缓存、CPU核心主频率、CPU核心数量和每条请求的计算量,构建数据集用于离线训练延迟和能耗模型。A serverless computing resource allocation system oriented to energy consumption optimization according to claim 1, wherein the machine learning forecasting model uses Pearson and Spearman correlation coefficients to evaluate these indicators and function runtime power and Correlation between delays; select six indicators related to function delays, including last-level cache, CPU core frequency, number of CPU cores, number of function instances, QPS, calculation amount per request, and energy consumption-related The four indicators include last-level cache, CPU core main frequency, number of CPU cores, and calculation amount per request, and build a data set for offline training latency and energy consumption models.
  3. 如权利要求1所述的一种面向能耗优化的无服务器计算资源分配系统,其特征在于,所述资源探索器(100)进一步包括以下处理:首先对资源进行缩减,消除那些远超函数本身资源需求的资源配置;然后使用二分搜索算法在过滤后的资源配置方案中找到满足函数性能需求的临界区;最后在临界区内展开遍历,找到满足函数性能需求且能耗最小的资源配置方案。A serverless computing resource allocation system oriented to energy consumption optimization according to claim 1, wherein the resource explorer (100) further includes the following processing: firstly reducing resources, eliminating those resources that are far beyond the function itself Resource allocation according to resource requirements; then use the binary search algorithm to find the critical section that meets the performance requirements of the function in the filtered resource allocation scheme; finally, expand the traversal in the critical section to find the resource allocation scheme that meets the performance requirements of the function and consumes the least energy.
  4. 如权利要求1所述的一种面向能耗优化的无服务器计算资源分配系统,其特征在于,所述资源配置器(200)进一步包括以下处理:在收到最佳资源组合之后,负责与平台和操作系统交互,执行为函数分配资源的操作。A serverless computing resource allocation system oriented to energy consumption optimization according to claim 1, wherein said resource configurator (200) further includes the following processing: after receiving the optimal resource combination, it is responsible for communicating with the platform Interact with the operating system to perform operations that allocate resources for functions.
  5. 如权利要求1所述的一种面向能耗优化的无服务器计算资源分配系统,其特征在于,所述系统监控器(400)进一步包括以下处理:定期查看当前节点的总功率;如果当前服务器的总功率超过了系统所设置的功耗阈值,系统监控器(400)则会发出功耗过载警报;系统监控器(400)监控无服务器计算平台(300)中是否有新部署的函数;如果有,首先会异步启动一个记录函数信息的线程,去收集该函数的启动时功耗、容器启动时间和容器空闲功耗;在收集完成后,根据这些信息,计算函数最长存活时间,公式如下:A serverless computing resource allocation system oriented to energy consumption optimization according to claim 1, wherein the system monitor (400) further includes the following processing: regularly check the total power of the current node; if the current server's When the total power exceeds the power consumption threshold set by the system, the system monitor (400) will issue a power consumption overload alarm; the system monitor (400) monitors whether there is a newly deployed function in the serverless computing platform (300); if there is , first asynchronously start a thread that records function information to collect the power consumption at startup, container startup time, and container idle power consumption of the function; after the collection is completed, calculate the longest survival time of the function based on the information, the formula is as follows:
    函数最长存活时间=冷启动功耗*冷启动时间/函数空闲功耗Maximum function survival time = cold start power consumption * cold start time / function idle power consumption
    同时,系统监控器(400)触发后续的资源探索和资源分配。Meanwhile, the system monitor (400) triggers subsequent resource exploration and resource allocation.
PCT/CN2021/135610 2021-08-10 2021-12-06 Serverless computing resource allocation system for energy consumption optimization WO2023015788A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110912481.3 2021-08-10
CN202110912481.3A CN113535409B (en) 2021-08-10 2021-08-10 Server-free computing resource distribution system oriented to energy consumption optimization

Publications (1)

Publication Number Publication Date
WO2023015788A1 true WO2023015788A1 (en) 2023-02-16

Family

ID=78091398

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2021/135610 WO2023015788A1 (en) 2021-08-10 2021-12-06 Serverless computing resource allocation system for energy consumption optimization

Country Status (2)

Country Link
CN (1) CN113535409B (en)
WO (1) WO2023015788A1 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116401055A (en) * 2023-04-07 2023-07-07 天津大学 Resource efficiency optimization-oriented server non-perception computing workflow arrangement method

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113535409B (en) * 2021-08-10 2022-08-05 天津大学 Server-free computing resource distribution system oriented to energy consumption optimization
CN116382881A (en) * 2021-11-27 2023-07-04 华为技术有限公司 Function resource dynamic configuration method and function management platform under no server architecture
CN115086189B (en) * 2022-05-20 2023-11-07 中国科学院软件研究所 Service resource elastic expansion method and system oriented to serverless computing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210184941A1 (en) * 2019-12-13 2021-06-17 Hewlett Packard Enterprise Development Lp Proactively accomodating predicted future serverless workloads using a machine learning prediction model and a feedback control system
CN113114758A (en) * 2021-04-09 2021-07-13 北京邮电大学 Method and device for scheduling tasks for server-free edge computing
CN113176947A (en) * 2021-05-08 2021-07-27 武汉理工大学 Dynamic task placement method based on delay and cost balance in serverless computing
CN113205128A (en) * 2021-04-28 2021-08-03 华东师范大学 Distributed deep learning performance guarantee method based on serverless computing
CN113535409A (en) * 2021-08-10 2021-10-22 天津大学 Server-free computing resource distribution system oriented to energy consumption optimization

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109491760B (en) * 2018-10-29 2021-10-19 中国科学院重庆绿色智能技术研究院 High-performance data center cloud server resource autonomous management method
CN109714400B (en) * 2018-12-12 2020-09-22 华南理工大学 Container cluster-oriented energy consumption optimization resource scheduling system and method thereof
CN111178641B (en) * 2020-01-03 2023-11-24 江南大学 Short-term power load prediction method based on feature extraction and multi-core RSVR (reactive resource reservation Rate) combined model

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210184941A1 (en) * 2019-12-13 2021-06-17 Hewlett Packard Enterprise Development Lp Proactively accomodating predicted future serverless workloads using a machine learning prediction model and a feedback control system
CN113114758A (en) * 2021-04-09 2021-07-13 北京邮电大学 Method and device for scheduling tasks for server-free edge computing
CN113205128A (en) * 2021-04-28 2021-08-03 华东师范大学 Distributed deep learning performance guarantee method based on serverless computing
CN113176947A (en) * 2021-05-08 2021-07-27 武汉理工大学 Dynamic task placement method based on delay and cost balance in serverless computing
CN113535409A (en) * 2021-08-10 2021-10-22 天津大学 Server-free computing resource distribution system oriented to energy consumption optimization

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
ZUK PAWEL; RZADCA KRZYSZTOF: "Scheduling Methods to Reduce Response Latency of Function as a Service", 2020 IEEE 32ND INTERNATIONAL SYMPOSIUM ON COMPUTER ARCHITECTURE AND HIGH PERFORMANCE COMPUTING (SBAC-PAD), IEEE, 9 September 2020 (2020-09-09), pages 132 - 140, XP033845416, DOI: 10.1109/SBAC-PAD49847.2020.00028 *

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116401055A (en) * 2023-04-07 2023-07-07 天津大学 Resource efficiency optimization-oriented server non-perception computing workflow arrangement method
CN116401055B (en) * 2023-04-07 2023-10-03 天津大学 Resource efficiency optimization-oriented server non-perception computing workflow arrangement method

Also Published As

Publication number Publication date
CN113535409A (en) 2021-10-22
CN113535409B (en) 2022-08-05

Similar Documents

Publication Publication Date Title
WO2023015788A1 (en) Serverless computing resource allocation system for energy consumption optimization
US9250680B2 (en) Method and apparatus for power-efficiency management in a virtualized cluster system
CN106528266B (en) Method and device for dynamically adjusting resources in cloud computing system
CN101488098B (en) Multi-core computing resource management system based on virtual computing technology
Saxe Power-efficient software
Arshad et al. Utilizing power consumption and SLA violations using dynamic VM consolidation in cloud data centers
CN113672383A (en) Cloud computing resource scheduling method, system, terminal and storage medium
Khargharia et al. Autonomic power & performance management for large-scale data centers
Bhalachandra et al. An adaptive core-specific runtime for energy efficiency
Kumar et al. Heterogeneity and thermal aware adaptive heuristics for energy efficient consolidation of virtual machines in infrastructure clouds
Garg et al. Task deadline-aware energy-efficient scheduling model for a virtualized cloud
JP3896352B2 (en) Distributed computing system
Zhang et al. Toward qos-awareness and improved utilization of spatial multitasking gpus
Terzopoulos et al. Bag-of-task scheduling on power-aware clusters using a dvfs-based mechanism
Kaushar et al. Comparison of SLA based energy efficient dynamic virtual machine consolidation algorithms
EP3295276B1 (en) Reducing power by vacating subsets of cpus and memory
Tian et al. Modeling and analyzing power management policies in server farms using stochastic petri nets
Terzopoulos et al. Performance evaluation of a real-time grid system using power-saving capable processors
Chen et al. Power and thermal-aware virtual machine scheduling optimization in cloud data center
Ji et al. A joint energy efficiency optimization scheme based on marginal cost and workload prediction in data centers
Kant et al. Enhancing data center sustainability through energy-adaptive computing
Friis et al. Strategies for minimization of energy consumption in data Centers
CN106227600B (en) A kind of multidimensional virtual resource allocation method based on Energy-aware
Xiong et al. Energy-saving optimization of application server clusters based on mixed integer linear programming
CN110308991B (en) Data center energy-saving optimization method and system based on random tasks

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 21953393

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE