skip to main content
10.1145/3492323.3495628acmconferencesArticle/Chapter ViewAbstractPublication PagesuccConference Proceedingsconference-collections
research-article

Estimating the capacities of function-as-a-service functions

Published: 07 February 2022 Publication History

Abstract

Serverless computing is a cloud computing paradigm that allows developers to focus exclusively on business logic as cloud service providers manage resource management tasks. Serverless applications follow this model, where the application is decomposed into a set of fine-grained Function-as-a-Service (FaaS) functions. However, the obscurities of the underlying system infrastructure and dependencies between FaaS functions within the application pose a challenge for estimating the performance of FaaS functions. To characterize the performance of a FaaS function that is relevant for the user, we define Function Capacity (FC) as the maximal number of concurrent invocations the function can serve in a time without violating the Service-Level Objective (SLO).
The paper addresses the challenge of quantifying the FC individually for each FaaS function within a serverless application. This challenge is addressed by sandboxing a FaaS function and building its performance model. To this end, we develop FnCapacitor - an end-to-end automated Function Capacity estimation tool. We demonstrate the functioning of our tool on Google Cloud Functions (GCF) and AWS Lambda. FnCapacitor estimates the FCs on different deployment configurations (allocated memory & maximum function instances) by conducting time-framed load tests and building various models using statistical: linear, ridge, and polynomial regression, and Deep Neural Network (DNN) methods on the acquired performance data. Our evaluation of different FaaS functions shows relatively accurate predictions with an accuracy greater than 75% using DNN for both cloud providers.

References

[1]
[n. d.]. AWS Lambda, https://docs.aws.amazon.com/lambda/latest/dg/invocation-scaling.html. Accessed on 09/24/2020.
[2]
[n. d.]. Azure Functions hosting options, https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale. Accessed on 02/18/2021.
[3]
[n.d.]. Cloud Functions Overview. https://cloud.google.com/functions/docs/concepts/overview. (Accessed on 08/22/2020).
[4]
[n. d.]. The regression score, https://scikit-learn.org/stable/modules/generated/sklearn.metrics.r2_score.html. Accessed on 12/17/2020.
[5]
Nabeel Akhtar, Ali Raza, Vatche Ishakian, and Ibrahim Matta. 2020. COSE: Configuring Serverless Functions using Statistical Learning. In IEEE INFOCOM 2020 - IEEE Conference on Computer Communications. 129--138.
[6]
Joao Carreira, Pedro Fonseca, Alexey Tumanov, Andrew Zhang, and Randy Katz. 2019. Cirrus: A serverless framework for end-to-end ml workflows. In Proceedings of the ACM Symposium on Cloud Computing. 13--24.
[7]
Paul Castro, Vatche Ishakian, Vinod Muthusamy, and Aleksander Slominski. 2019. The Rise of Serverless Computing. Commun. ACM 62, 12 (Nov. 2019), 44--54.
[8]
Mohak Chadha, Anshul Jindal, and Michael Gerndt. 2020. Towards Federated Learning Using FaaS Fabric. In Proceedings of the 2020 Sixth International Workshop on Serverless Computing (Delft, Netherlands) (WoSC'20). Association for Computing Machinery, New York, NY, USA, 49--54.
[9]
Mohak Chadha, Anshul Jindal, and Michael Gerndt. 2021. Architecture-Specific Performance Optimization of Compute-Intensive FaaS Functions. CoRR abs/2107.10008 (2021). arXiv:2107.10008 https://arxiv.org/abs/2107.10008
[10]
Ryan Chard, Tyler J. Skluzacek, Zhuozhao Li, Yadu Babuji, Anna Woodard, Ben Blaiszik, Steven Tuecke, Ian Foster, and Kyle Chard. 2019. Serverless Supercomputing: High Performance Function as a Service for Science. arXiv:1908.04907 [cs.DC]
[11]
Simon Eismann, Long Bui, Johannes Grohmann, Cristina L. Abad, Nikolas Herbst, and Samuel Kounev. 2021. Sizeless: Predicting the optimal size of serverless functions. arXiv:2010.15162 [cs.DC]
[12]
Lennart Espe., Anshul Jindal., Vladimir Podolskiy., and Michael Gerndt. 2020. Performance Evaluation of Container Runtimes. In Proceedings of the 10th International Conference on Cloud Computing and Services Science - CLOSER,. INSTICC, SciTePress, 273--281.
[13]
Chen-Fu Fan., Anshul Jindal., and Michael Gerndt. 2020. Microservices vs Serverless: A Performance Comparison on a Cloud-native Web Application. In Proceedings of the 10th International Conference on Cloud Computing and Services Science - CLOSER,. INSTICC, SciTePress, 204--215.
[14]
Kamil Figiela, Adam Gajek, Adam Zima, Beata Obrok, and Maciej Malawski. 2018. Performance evaluation of heterogeneous cloud functions. Concurrency and Computation: Practice and Experience 30, 23 (2018).
[15]
GoogleCloud. [n. d.]. Cloud Functions Pricing. https://cloud.google.com/functions/pricing. (Accessed on 08/22/2020).
[16]
Jake Grogan, Connor Mulready, James McDermott, Martynas Urbanavicius, Murat Yilmaz, Yalemisew Abgaz, Andrew McCarren, Silvana MacMahon, Vahid Garousi, Pooyan Jamshidi, et al. [n. d.]. An analysis of Function-as-a-Service (FaaS): vendors, challenges and implications for software developers. ([n. d.]).
[17]
Anshul Jindal, Mohak Chadha, Michael Gerndt, Julian Frielinghaus, Vladimir Podolskiy, and Pengfei Chen. 2021. Poster: Function Delivery Network: Extending Serverless to Heterogeneous Computing. In 2021 IEEE 41st International Conference on Distributed Computing Systems (ICDCS). 1128--1129.
[18]
Anshul Jindal, Julian Frielinghaus, Mohak Chadha, and Michael Gerndt. 2021. Courier: Delivering Serverless Functions Within Heterogeneous FaaS Deployments. In 2021 IEEE/ACM 14th International Conference on Utility and Cloud Computing (UCC'21) (Leicester, United Kingdom) (UCC '21). Association for Computing Machinery, New York, NY, USA, 10 pages.
[19]
Anshul Jindal and Michael Gerndt. 2021. From DevOps to NoOps: Is It Worth It?. In Cloud Computing and Services Science, Donald Ferguson, Claus Pahl, and Markus Helfert (Eds.). Springer International Publishing, Cham, 178--202.
[20]
Anshul Jindal, Michael Gerndt, Mohak Chadha, Vladimir Podolskiy, and Pengfei Chen. 2021. Function delivery network: Extending serverless computing for heterogeneous platforms. Software: Practice and Experience 51, 9 (2021), 1936--1963. arXiv:https://onlinelibrary.wiley.com/doi/pdf/10.1002/spe.2966
[21]
Anshul Jindal, Vladimir Podolskiy, and Michael Gerndt. 2019. Performance modeling for cloud microservice applications. In Proceedings of the 2019 ACM/SPEC International Conference on Performance Engineering. 25--32.
[22]
Eric Jonas, Qifan Pu, Shivaram Venkataraman, Ion Stoica, and Benjamin Recht. 2017. Occupy the cloud: Distributed computing for the 99%. In Proceedings of the 2017 Symposium on Cloud Computing. 445--451.
[23]
Alex Krizhevsky, Ilya Sutskever, and Geoffrey E. Hinton. 2017. ImageNet Classification with Deep Convolutional Neural Networks. Commun. ACM 60, 6 (May 2017), 84--90.
[24]
Hyungro Lee, Kumar Satyam, and Geoffrey Fox. 2018. Evaluation of production serverless computing environments. In 2018 IEEE 11th International Conference on Cloud Computing (CLOUD). IEEE, 442--450.
[25]
W. Lloyd, S. Ramesh, S. Chinthalapati, L. Ly, and S. Pallickara. 2018. Serverless Computing: An Investigation of Factors Influencing Microservice Performance. In 2018 IEEE International Conference on Cloud Engineering (IC2E). 159--169.
[26]
Maciej Pawlik, Kamil Figiela, and Maciej Malawski. 2018. Performance evaluation of parallel cloud functions. Poster Presented at ICPP (2018).
[27]
Serverless. 2020. Documentation. https://serverless.com/framework/docs/. [Online; Accessed: 4-Feburary-2020].
[28]
Mohammad Shahrad, Jonathan Balkind, and David Wentzlaff. 2019. Architectural implications of function-as-a-service computing. In Proceedings of the 52nd Annual IEEE/ACM International Symposium on Microarchitecture. 1063--1075.
[29]
Vaishaal Shankar, Karl Krauth, Qifan Pu, Eric Jonas, Shivaram Venkataraman, Ion Stoica, Benjamin Recht, and Jonathan Ragan-Kelley. 2018. Numpywren: Serverless linear algebra. arXiv preprint arXiv:1810.09679 (2018).
[30]
Liang Wang, Mengyuan Li, Yinqian Zhang, Thomas Ristenpart, and Michael Swift. 2018. Peeking behind the curtains of serverless platforms. In 2018 {USENIX} Annual Technical Conference ({USENIX}{ATC} 18). 133--146.
[31]
Sanjay Yadav and Sanyam Shukla. 2016. Analysis of k-fold cross-validation over hold-out validation on colossal datasets for quality classification. In 2016 IEEE 6th International conference on advanced computing (IACC). IEEE, 78--83.

Cited By

View all

Index Terms

  1. Estimating the capacities of function-as-a-service functions

    Recommendations

    Comments

    Information & Contributors

    Information

    Published In

    cover image ACM Conferences
    UCC '21: Proceedings of the 14th IEEE/ACM International Conference on Utility and Cloud Computing Companion
    December 2021
    256 pages
    ISBN:9781450391634
    DOI:10.1145/3492323
    Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

    Sponsors

    In-Cooperation

    • IEEE TCSC: IEEE Technical Committee on Scalable Computing

    Publisher

    Association for Computing Machinery

    New York, NY, United States

    Publication History

    Published: 07 February 2022

    Permissions

    Request permissions for this article.

    Check for updates

    Author Tags

    1. function capacity
    2. function-as-a-service
    3. serverless computing

    Qualifiers

    • Research-article

    Funding Sources

    • German Federal Ministry of Education and Research (BMBF) in Software Campus program
    • Google Cloud Research Credits

    Conference

    UCC '21
    Sponsor:

    Acceptance Rates

    Overall Acceptance Rate 38 of 125 submissions, 30%

    Contributors

    Other Metrics

    Bibliometrics & Citations

    Bibliometrics

    Article Metrics

    • Downloads (Last 12 months)35
    • Downloads (Last 6 weeks)8
    Reflects downloads up to 26 Jan 2025

    Other Metrics

    Citations

    Cited By

    View all

    View Options

    Login options

    View options

    PDF

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader

    Figures

    Tables

    Media

    Share

    Share

    Share this Publication link

    Share on social media