Shabari: Delayed Decision-Making for Faster and Efficient Serverless Functions

Prasoon Sinha, Kostis Kaffes, Neeraja J. Yadwadkar
1/16/2024
cs.DCcs.LG

No confident code implementation found for this paper.

Abstract

Serverless computing relieves developers from the burden of resource management, thus providing ease-of-use to the users and the opportunity to optimize resource utilization for the providers. However, today's serverless systems lack performance guarantees for function invocations, thus limiting support for performance-critical applications: we observed severe performance variability (up to 6x). Providers lack visibility into user functions and hence find it challenging to right-size them: we observed heavy resource underutilization (up to 80%). To understand the causes behind the performance variability and underutilization, we conducted a measurement study of commonly deployed serverless functions and learned that the function performance and resource utilization depend crucially on function semantics and inputs. Our key insight is to delay making resource allocation decisions until after the function inputs are available. We introduce Shabari, a resource management framework for serverless systems that makes decisions as late as possible to right-size each invocation to meet functions' performance objectives (SLOs) and improve resource utilization. Shabari uses an online learning agent to right-size each function invocation based on the features of the function input and makes cold-start-aware scheduling decisions. For a range of serverless functions and inputs, Shabari reduces SLO violations by 11-73% while not wasting any vCPUs and reducing wasted memory by 64-94% in the median case, compared to state-of-the-art systems, including Aquatope, Parrotfish, and Cypress.

View on arXivView PDF

Code Implementations

No confident code match yet

We couldn't find an author-owned or strongly-evidenced community implementation for this paper. Any repos shown below are weak matches — verify before relying on them.

No code implementations found yet.

Know of an implementation? Let us know in the comments below!

Similar Papers

Cite this paper

@article{sinha2024shabari,
  title  = {Shabari: Delayed Decision-Making for Faster and Efficient Serverless Functions},
  author = {Prasoon Sinha and Kostis Kaffes and Neeraja J. Yadwadkar},
  year   = {2024},
  eprint = {2401.08859},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2401.08859v2}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2401.08859.svg)](https://codeofpaper.com/paper/2401.08859)

Discussion