Skip to content

Artifact repository for the paper "Modeling and Optimization of Performance and Cost of Serverless Applications"

License

Notifications You must be signed in to change notification settings

pacslab/SLApp-PerfCost-MdlOpt

Repository files navigation

Modeling and Optimization of Performance and Cost of Serverless Applications

Artifact repository for the paper "Modeling and Optimization of Performance and Cost of Serverless Applications." This reproducible repository includes all algorithms, scripts, and experimental results in the paper.

Overview of the proposed approach

alt text

  • Two analytical models to accurately get the average end-to-end response time and cost of serverless applications.
  • Probability refined critical path algorithm to answer the following two optimization problems for non-DAG serverless workflows.
    • Best performance (end-to-end response time) under a budget constraint
    • Best cost under a performance constraint
  • Models and algorithms verified by experiments on AWS.

Artifacts

Requirements

  • Python>=3.7
  • pip>=19.1.1

Required Python packages are listed in requirements.txt

Installation:

pip install -r requirements.txt

Usage

Please follow this documentation.

Figures

Hover to see the caption. Some self-loop edges might be overlapped.

Evaluation Results

alt text

Workflow of Apps

alt text alt text alt text alt text alt text alt text alt text alt text alt text alt text alt text

Abstract of the Paper

Function-as-a-Service (FaaS) and Serverless applications have proliferated significantly in recent years because of their high scalability, ease of resource management, and pay-as-you-go pricing model. However, cloud users are facing practical problems when they shift their applications to serverless pattern, which are the lack of analytical performance and billing model and trade-off between limited budget and Service Level Agreement (SLA) guaranteed performance of serverless applications. In this paper, we fill this gap by proposing and answering two research questions regarding the prediction and optimization of performance and cost of a serverless applications. We propose the definition of the serverless workflow, and implement analytical models to predict the average end-to-end response time and cost of the application, giving practical solutions to the current unpredictable performance and cost problems for serverless applications. We propose a heuristic algorithm named Probability Refined Critical Path Greedy algorithm (PRCP) with four greedy strategies to answer two types of optimization questions regarding performance and cost. We experiment proposed models with five serverless applications deployed on AWS. Our results show that the performance and cost models can predict the performance and cost of serverless applications with more than 97.5% of accuracy. PRCP can give the optimized memory configurations of functions in serverless applications with over 97% of accuracy.

About

Artifact repository for the paper "Modeling and Optimization of Performance and Cost of Serverless Applications"

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published