SFS: Smart OS Scheduling for Serverless Functions

09/04/2022
by   Yuqi Fu, et al.
0

Serverless computing enables a new way of building and scaling cloud applications by allowing developers to write fine-grained serverless or cloud functions. The execution duration of a cloud function is typically short-ranging from a few milliseconds to hundreds of seconds. However, due to resource contentions caused by public clouds' deep consolidation, the function execution duration may get significantly prolonged and fail to accurately account for the function's true resource usage. We observe that the function duration can be highly unpredictable with huge amplification of more than 50x for an open-source FaaS platform (OpenLambda). Our experiments show that the OS scheduling policy of cloud functions' host server can have a crucial impact on performance. The default Linux scheduler, CFS (Completely Fair Scheduler), being oblivious to workloads, frequently context-switches short functions, causing a turnaround time that is much longer than their service time. We propose SFS (Smart Function Scheduler),which works entirely in the user space and carefully orchestrates existing Linux FIFO and CFS schedulers to approximate Shortest Remaining Time First (SRTF). SFS uses two-level scheduling that seamlessly combines a new FILTER policy with Linux CFS, to trade off increased duration of long functions for significant performance improvement for short functions. We implement in the Linux user space and port it to OpenLambda. Evaluation results show that SFS significantly improves short functions' duration with a small impact on relatively longer functions, compared to CFS.

READ FULL TEXT

page 1

page 2

page 3

page 4

research
03/19/2022

Has Your FaaS Application Been Decommissioned Yet? – A Case Study on the Idle Timeout in Function as a Service Infrastructure

Function as a Service (FaaS) is a new cloud technology with automated re...
research
05/24/2021

FaaSNet: Scalable and Fast Provisioning of Custom Serverless Container Runtimes at Alibaba Cloud Function Compute

Serverless computing, or Function-as-a-Service (FaaS), enables a new way...
research
10/28/2020

Sizeless: Predicting the optimal size of serverless functions

Serverless functions are a cloud computing paradigm that reduces operati...
research
08/11/2020

Scheduling Methods to Reduce Response Latency of Function as a Service

Function as a Service (FaaS) permits cloud customers to deploy to cloud ...
research
10/14/2018

S-FaaS: Trustworthy and Accountable Function-as-a-Service using Intel SGX

Function-as-a-Service (FaaS) is a recent and already very popular paradi...
research
05/07/2021

Data-driven scheduling in serverless computing to reduce response time

In Function as a Service (FaaS), a serverless computing variant, custome...
research
11/06/2019

A Language-based Serverless Function Accelerator

Serverless computing is an approach to cloud computing that allows progr...

Please sign up or login with your details

Forgot password? Click here to reset