Call Scheduling to Reduce Response Time of a FaaS System

07/26/2022
by   Pawel Zuk, et al.
0

In an overloaded FaaS cluster, individual worker nodes strain under lengthening queues of requests. Although the cluster might be eventually horizontally-scaled, adding a new node takes dozens of seconds. As serving applications are tuned for tail serving latencies, and these greatly increase under heavier loads, the current workaround is resource over-provisioning. In fact, even though a service can withstand a steady load of, e.g., 70 utilization, the autoscaler is triggered at, e.g., 30-40 uses twice as many nodes as it would be needed). We propose an alternative: a worker-level method handling heavy load without increasing the number of nodes. FaaS executions are not interactive, compared to, e.g., text editors: end-users do not benefit from the CPU allocated to processes often, yet for short periods. Inspired by scheduling methods for High Performance Computing, we take a radical step of replacing the classic OS preemption by (1) queuing requests based on their historical characteristics; (2) once a request is being processed, setting its CPU limit to exactly one core (with no CPU oversubscription). We extend OpenWhisk and measure the efficiency of the proposed solutions using the SeBS benchmark. In a loaded system, our method decreases the average response time by a factor of 4. The improvement is even higher for shorter requests, as the average stretch is decreased by a factor of 18. This leads us to show that we can provide better response-time statistics with 3 machines compared to a 4-machine baseline.

READ FULL TEXT
research
10/10/2018

Reinforcement-Learning-based Foresighted Task Scheduling in Cloud Computing

With the apperance of cloud computing, users receive computing resources...
research
10/15/2021

Optimal Resource Scheduling and Allocation in Distributed Computing Systems

The essence of distributed computing systems is how to schedule incoming...
research
11/29/2022

ReAssigner: A Plug-and-Play Virtual Machine Scheduling Intensifier for Heterogeneous Requests

With the rapid development of cloud computing, virtual machine schedulin...
research
09/27/2018

Is Your Load Generator Launching Web Requests in Bunches?

One problem with load test quality, almost always overlooked, is the pot...
research
12/15/2010

Customer Appeasement Scheduling

Almost all of the current process scheduling algorithms which are used i...
research
02/17/2010

A new model for virtual machine migration in virtualized cluster server based on Fuzzy Decision Making

In this paper, we show that performance of the virtualized cluster serve...
research
04/16/2019

Calculation of distributed system imbalance in condition of multifractal load

The method of calculating a distributed system imbalance based on the ca...

Please sign up or login with your details

Forgot password? Click here to reset