高级检索

    服务器无感知计算场景下基于时空特征的函数调度

    Exploiting Temporal-Spatial Characteristics for Function Scheduling in Serverless Computing

    • 摘要: 服务器无感知计算是一种新兴的以函数为中心的云计算范式. 服务器无感知计算向用户提供高层次的函数抽象在云计算平台开发和部署应用. 服务器无感知计算以函数为粒度分配资源. 函数调度对函数性能有重要影响,面临问题规模大和动态性强2个难点. 现有服务器无感知计算调度器使用先来先服务(FCFS)算法,容易受队头阻塞影响,导致函数完成时间较长. 为了高效利用系统资源和降低函数完成时间,亟需对服务器无感知计算场景下的函数调度问题进行研究. 首先,分析了服务器无感知计算场景下的函数调度问题,并定位了3个影响函数完成时间的因数,分别是排队时间、启动时间和执行时间. 基于该分析,提出了数学模型对服务器无感知计算场景下函数调度问题进行形式化建模. 其次,提出了基于函数时空特征的服务器无感知计算调度算法FuncSched. 该算法在时间维度上考虑函数执行时间和函数启动时间,在空间维度上考虑函数资源占用量. 最后,实现了原型系统,并使用了真实世界服务器无感知计算负载数据集进行实验. 实验结果表明所提算法可以有效降低平均函数完成时间,从而有效提高了服务器无感知计算环境中函数的执行效率.

       

      Abstract: Serverless computing is an emerging function-centric cloud computing paradigm. It exposes a high-level function abstraction for users to write and deploy applications on cloud computing platforms. Serverless computing allocates resources based on the granulation of functions. Function scheduling is critical to function performance. It faces two difficulties, which are large problem space and high dynamism. Existing schedulers for serverless computing use a first-come-first-serve (FCFS) algorithm, which has head-of-line blocking and results in long function completion time. In order to highly utilize system resources and reduce function completion time, it is important to study the problem of function scheduling in serverless computing. First, we analyze the problem of function scheduling in serverless computing, and identify two factors that affect function completion time, which are queueing time, start time and execution time. Based on the analysis, we propose a mathematical model to formalize the problem of function scheduling in serverless computing. Second, we propose a scheduling algorithm, called FuncSched, based on temporal-spatial characterstics for serverless computing. The algorithm considers function execution time and function start time in the time dimension, and function resource consumption in the space dimension. Finally, we implement a system prototype, and evaluate it with real-world serverless computing workload datasets. Experimental results show that the proposed algorithm can effectively reduce average function completion time, thus effectively improving function execution efficiency in serverless computing.

       

    /

    返回文章
    返回