skip to main content
10.1145/3419111.3421306acmconferencesArticle/Chapter ViewAbstractPublication PagesmodConference Proceedingsconference-collections
research-article
Public Access

Sequoia: enabling quality-of-service in serverless computing

Published:12 October 2020Publication History

ABSTRACT

Serverless computing is a rapidly growing paradigm that easily harnesses the power of the cloud. With serverless computing, developers simply provide an event-driven function to cloud providers, and the provider seamlessly scales function invocations to meet demands as event-triggers occur. As current and future serverless offerings support a wide variety of serverless applications, effective techniques to manage serverless workloads becomes an important issue. This work examines current management and scheduling practices in cloud providers, uncovering many issues including inflated application run times, function drops, inefficient allocations, and other undocumented and unexpected behavior. To fix these issues, a new quality-of-service function scheduling and allocation framework, called Sequoia, is designed. Sequoia allows developers or administrators to easily def ne how serverless functions and applications should be deployed, capped, prioritized, or altered based on easily configured, flexible policies. Results with controlled and realistic workloads show Sequoia seamlessly adapts to policies, eliminates mid-chain drops, reduces queuing times by up to 6.4X, enforces tight chain-level fairness, and improves run-time performance up to 25X.

Skip Supplemental Material Section

Supplemental Material

p311-tariq-presentation.mp4

mp4

49.2 MB

References

  1. 2006. PEP 3107 - Function Annotations. https://www.python.org/dev/peps/pep-3107/.Google ScholarGoogle Scholar
  2. 2019. Amazon AWS Step Functions. https://aws.amazon.com/step-functions/.Google ScholarGoogle Scholar
  3. 2019. Amazon Lambda. https://aws.amazon.com/lambda/.Google ScholarGoogle Scholar
  4. 2019. Apache Software Foundation. http://openwhisk.incubator.apache.org/.Google ScholarGoogle Scholar
  5. 2019. AWS Lambda Limits. https://docs.aws.amazon.com/lambda/latest/dg/limits.html.Google ScholarGoogle Scholar
  6. 2019. Azure Durable Functions. https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-overview.Google ScholarGoogle Scholar
  7. 2019. Azure Functions scale and hosting. https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale.Google ScholarGoogle Scholar
  8. 2019. Azure Functions scale and hosting. https://docs.microsoft.com/en-us/azure/azure-functions/functions-scale.Google ScholarGoogle Scholar
  9. 2019. Firecracker: Secure and fast microVMs for serverless computing. https://frecracker-microvm.github.io.Google ScholarGoogle Scholar
  10. 2019. Google Cloud Functions. https://cloud.google.com/functions/.Google ScholarGoogle Scholar
  11. 2019. Google Cloud Functions: Background Functions. https://cloud.google.com/functions/docs/writing/background.Google ScholarGoogle Scholar
  12. 2019. IBM Cloud Functions. https://www.ibm.com/cloud/functions/.Google ScholarGoogle Scholar
  13. 2019. IBM Cloud Functions: System details and limits. https://cloud.ibm.com/docs/openwhisk?topic=cloud-functions-limits.Google ScholarGoogle Scholar
  14. 2019. IBM Composer. https://cloud.ibm.com/docs/openwhisk?topic=cloud-functions-pkg_composer.Google ScholarGoogle Scholar
  15. 2019. IronFunctions by iron.io. https://github.com/iron-io/functions.Google ScholarGoogle Scholar
  16. 2019. Istio. https://istio.io.Google ScholarGoogle Scholar
  17. 2019. Knative: Kubernetes-based platform to deploy and manage modern serverless workloads. https://knative.dev.Google ScholarGoogle Scholar
  18. 2019. Kubeless: The Kubernetes Native Serverless Framework. https://kubeless.io.Google ScholarGoogle Scholar
  19. 2019. KUBERNETES: Configure Quality of Service for Pods. https://kubernetes.io/docs/tasks/configure-pod-container/quality-service-pod/.Google ScholarGoogle Scholar
  20. 2019. OpenFaaS - Serverless Functions Made Simple. https://github.com/openfaas/faas.Google ScholarGoogle Scholar
  21. 2019. OpenZipkin: A distributed tracing system. https://zipkin.io.Google ScholarGoogle Scholar
  22. 2019. Protocol Buffers. https://developers.google.com/protocol-buffers/.Google ScholarGoogle Scholar
  23. 2020. AWS Serverless Application Repository. https://aws.amazon.com/serverless/serverlessrepo/.Google ScholarGoogle Scholar
  24. 2020. IBM Serverless Code Patterns. https://developer.ibm.com/technologies/serverless/patterns/.Google ScholarGoogle Scholar
  25. Istemi Ekin Akkus, Ruichuan Chen, Ivica Rimac, Manuel Stein, Klaus Satzke, Andre Beck, Paarijaat Aditya, and Volker Hilt. 2018. SAND: Towards High-Performance Serverless Computing. In 2018 USENIX Annual Technical Conference (USENIX ATC 18). USENIX Association, Boston, MA, 923--935. https://www.usenix.org/conference/atc18/presentation/akkusGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  26. Z. Al-Ali, S. Goodarzy, E. Hunter, S. Ha, R. Han, E. Keller, and E. Rozner. 2018. Making Serverless Computing More Serverless. In 2018 IEEE 11th International Conference on Cloud Computing (CLOUD). 456--459. Google ScholarGoogle ScholarCross RefCross Ref
  27. Mohammad Alizadeh, Albert Greenberg, David A. Maltz, Jitendra Padhye, Parveen Patel, Balaji Prabhakar, Sudipta Sengupta, and Murari Sridharan. 2010. Data Center TCP (DCTCP). SIGCOMM Comput. Commun. Rev. 40, 4 (Aug. 2010), 63--74. Google ScholarGoogle ScholarDigital LibraryDigital Library
  28. Amazon. [n.d.]. https://aws.amazon.com/lambda/pricing/.Google ScholarGoogle Scholar
  29. Lixiang Ao, Liz Izhikevich, Geoffrey M. Voelker, and George Porter. 2018. Sprocket: A Serverless Video Processing Framework. In Proceedings of the ACM Symposium on Cloud Computing (Carlsbad, CA, USA) (SoCC '18). ACM, New York, NY, USA, 263--274. Google ScholarGoogle ScholarDigital LibraryDigital Library
  30. AWS. 2019. Security Overview of AWS Lambda. https://d1.awsstatic.com/whitepapers/Overview-AWS-Lambda-Security.pdf.Google ScholarGoogle Scholar
  31. I. Baldini, P. Castro, P. Cheng, S. Fink, V. Ishakian, N. Mitchell, V. Muthusamy, R. Rabbah, and P. Suter. 2016. Cloud-Native, Event-Based Programming for Mobile Applications. In 2016 IEEE/ACM International Conference on Mobile Software Engineering and Systems (MOBILESoft). 287--288. Google ScholarGoogle ScholarCross RefCross Ref
  32. Ioana Baldini, Perry Cheng, Stephen J. Fink, Nick Mitchell, Vinod Muthusamy, Rodric Rabbah, Philippe Suter, and Olivier Tardieu. 2017. The Serverless Trilemma: Function Composition for Serverless Computing. In Proceedings of the 2017 ACM SIGPLAN International Symposium on New Ideas, New Paradigms, and Reflections on Programming and Software (Vancouver, BC, Canada) (Onward! 2017). ACM, New York, NY, USA, 89--103. Google ScholarGoogle ScholarDigital LibraryDigital Library
  33. Sol Boucher, Anuj Kalia, David G. Andersen, and Michael Kaminsky. 2018. Putting the "Micro" Back in Microservice. In 2018 USENIX Annual Technical Conference (USENIX ATC 18). USENIX Association, Boston, MA, 645--650. https://www.usenix.org/conference/atc18/presentation/boucherGoogle ScholarGoogle Scholar
  34. James Cadden, Thomas Unger, Yara Awad, Han Dong, Orran Krieger, and Jonathan Appavoo. 2020. SEUSS: Skip Redundant Paths to Make Serverless Fast. In Proceedings of the Fifteenth European Conference on Computer Systems (Heraklion, Greece) (EuroSys '20). Association for Computing Machinery, New York, NY, USA, Article 32, 15 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  35. 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 (Santa Cruz, CA, USA) (SoCC '19). Association for Computing Machinery, New York, NY, USA, 13--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  36. 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]Google ScholarGoogle Scholar
  37. Jeffrey Dean and Luiz André Barroso. 2013. The Tail at Scale. Commun. ACM 56 (2013), 74--80. http://cacm.acm.org/magazines/2013/2/160173-the-tail-at-scale/fulltextGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  38. Tarek Elgamal, Atul Sandur, Klara Nahrstedt, and Gul Agha. 2018. Costless: Optimizing Cost of Serverless Computing through Function Fusion and Placement. arXiv:1811.09721 [cs.DC]Google ScholarGoogle Scholar
  39. L. Feng, P. Kudva, D. Da Silva, and J. Hu. 2018. Exploring Serverless Computing for Neural Network Training. In 2018 IEEE 11th International Conference on Cloud Computing (CLOUD). 334--341. Google ScholarGoogle ScholarCross RefCross Ref
  40. Sadjad Fouladi, Francisco Romero, Dan Iter, Qian Li, Shuvo Chatterjee, Christos Kozyrakis, Matei Zaharia, and Keith Winstein. 2019. From Laptop to Lambda: Outsourcing Everyday Jobs to Thousands of Transient Functional Containers. In 2019 USENIX Annual Technical Conference (USENIX ATC 19). USENIX Association, Renton, WA, 475--488. https://www.usenix.org/conference/atc19/presentation/fouladiGoogle ScholarGoogle Scholar
  41. Sadjad Fouladi, Riad S. Wahby, Brennan Shacklett, Karthikeyan Vasuki Balasubramaniam, William Zeng, Rahul Bhalerao, Anirudh Sivaraman, George Porter, and Keith Winstein. 2017. Encoding, Fast and Slow: Low-Latency Video Processing Using Thousands of Tiny Threads. In 14th USENIX Symposium on Networked Systems Design and Implementation (NSDI 17). USENIX Association, Boston, MA, 363--376. https://www.usenix.org/conference/nsdi17/technical-sessions/presentation/fouladiGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  42. Yu Gan, Yanqi Zhang, Dailun Cheng, Ankitha Shetty, Priyal Rathi, Nayan Katarki, Ariana Bruno, Justin Hu, Brian Ritchken, Brendon Jackson, Kelvin Hu, Meghna Pancholi, Yuan He, Brett Clancy, Chris Colen, Fukang Wen, Catherine Leung, Siyuan Wang, Leon Zaruvinsky, Mateo Espinosa, Rick Lin, Zhongling Liu, Jake Padilla, and Christina Delimitrou. 2019. An Open-Source Benchmark Suite for Microservices and Their Hardware-Software Implications for Cloud & Edge Systems. In Proceedings of the Twenty-Fourth International Conference on Architectural Support for Programming Languages and Operating Systems (Providence, RI, USA) (ASPLOS '19). ACM, New York, NY, USA, 3--18. Google ScholarGoogle ScholarDigital LibraryDigital Library
  43. Pedro Garcia Lopez, Marc Sanchez-Artigas, Gerard Paris, Daniel Barcelona Pons, Alvaro Ruiz Ollobarren, and David Arroyo Pinto. 2018. Comparison of FaaS Orchestration Systems. 2018 IEEE/ACM International Conference on Utility and Cloud Computing Companion (UCC Companion) (Dec 2018). Google ScholarGoogle ScholarCross RefCross Ref
  44. V. Giménez-Alventosa, Germán Moltó, and Miguel Caballer. 2019. A framework and a performance assessment for serverless MapReduce on AWS Lambda. Future Generation Computer Systems 97 (2019), 259 -- 274. Google ScholarGoogle ScholarDigital LibraryDigital Library
  45. David Grove and Craig Chambers. 2001. A Framework for Call Graph Construction Algorithms. ACM Trans. Program. Lang. Syst. 23, 6 (Nov. 2001), 685--746. Google ScholarGoogle ScholarDigital LibraryDigital Library
  46. David Grove, Greg DeFouw, Jeffrey Dean, and Craig Chambers. 1997. Call Graph Construction in Object-oriented Languages. In Proceedings of the 12th ACM SIGPLAN Conference on Object-oriented Programming, Systems, Languages, and Applications (Atlanta, Georgia, USA) (OOPSLA '97). ACM, New York, NY, USA, 108--124. Google ScholarGoogle ScholarDigital LibraryDigital Library
  47. Mor Harchol-Balter, Bianca Schroeder, Nikhil Bansal, and Mukesh Agrawal. 2003. Size-Based Scheduling to Improve Web Performance. ACM Trans. Comput. Syst. 21, 2 (May 2003), 207--233. Google ScholarGoogle ScholarDigital LibraryDigital Library
  48. Benjamin Hindman, Andy Konwinski, Matei Zaharia, Ali Ghodsi, Anthony D. Joseph, Randy Katz, Scott Shenker, and Ion Stoica. 2011. Mesos: A Platform for Fine-Grained Resource Sharing in the Data Center. In Proceedings of the 8th USENIX Conference on Networked Systems Design and Implementation (Boston, MA) (NSDI'11). USENIX Association, USA, 295--308.Google ScholarGoogle ScholarDigital LibraryDigital Library
  49. Andrew G. Howard, Menglong Zhu, Bo Chen, Dmitry Kalenichenko, Weijun Wang, Tobias Weyand, Marco Andreetto, and Hartwig Adam. 2017. MobileNets: Efficient Convolutional Neural Networks for Mobile Vision Applications. arXiv:1704.04861 [cs.CV]Google ScholarGoogle Scholar
  50. Vatche Ishakian, Vinod Muthusamy, and Aleksander Slominski. 2017. Serving deep learning models in a serverless platform. CoRR abs/1710.08460 (2017). arXiv:1710.08460 http://arxiv.org/abs/1710.08460Google ScholarGoogle Scholar
  51. Eric Jonas, Qifan Pu, Shivaram Venkataraman, Ion Stoica, and Benjamin Recht. 2017. Occupy the Cloud: Distributed Computing for the 99Computing (Santa Clara, California) (SoCC '17). ACM, New York, NY, USA, 445--451. Google ScholarGoogle ScholarDigital LibraryDigital Library
  52. Kostis Kaffes, Neeraja J. Yadwadkar, and Christos Kozyrakis. 2019. Centralized Core-Granular Scheduling for Serverless Functions. In Proceedings of the ACM Symposium on Cloud Computing (Santa Cruz, CA, USA) (SoCC '19). Association for Computing Machinery, New York, NY, USA, 158--164. Google ScholarGoogle ScholarDigital LibraryDigital Library
  53. Ram Srivatsa Kannan, Lavanya Subramanian, Ashwin Raju, Jeongseob Ahn, Jason Mars, and Lingjia Tang. 2019. GrandSLAm: Guaranteeing SLAs for Jobs in Micro services Execution Frameworks. In Proceedings of the Fourteenth EuroSys Conference 2019 (Dresden, Germany) (EuroSys '19). ACM, New York, NY, USA, Article 34, 16 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  54. Junaid Khalid, Eric Rozner, Wesley Felter, Cong Xu, Karthick Rajamani, Alexandre Ferreira, and Aditya Akella. 2018. Iron: Isolating Network-based CPU in Container Environments. In 15th USENIX Symposium on Networked Systems Design and Implementation (NSDI 18). USENIX Association, Renton, WA, 313--328. https://www.usenix.org/conference/nsdi18/presentation/khalidGoogle ScholarGoogle Scholar
  55. Youngbin Kim and Jimmy Lin. 2018. Serverless Data Analytics with Flint. arXiv:1803.06354 [cs.DC]Google ScholarGoogle Scholar
  56. Ana Klimovic, Yawen Wang, Christos Kozyrakis, Patrick Stuedi, Jonas Pfefferle, and Animesh Trivedi. 2018. Understanding Ephemeral Storage for Serverless Analytics. In 2018 USENIX Annual Technical Conference (USENIX ATC 18). USENIX Association, Boston, MA, 789--794. https://www.usenix.org/conference/atc18/presentation/klimovic-serverlessGoogle ScholarGoogle Scholar
  57. Ana Klimovic, Yawen Wang, Patrick Stuedi, Animesh Trivedi, Jonas Pfeferle, and Christos Kozyrakis. 2018. Pocket: Elastic Ephemeral Storage for Serverless Analytics. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). USENIX Association, Carlsbad, CA, 427--444. https://www.usenix.org/conference/osdi18/presentation/klimovicGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  58. Junfeng Li, Sameer G. Kulkarni, K. K. Ramakrishnan, and Dan Li. 2019. Understanding Open Source Serverless Platforms. Proceedings of the 5th International Workshop on Serverless Computing - WOSC '19 (2019). Google ScholarGoogle ScholarDigital LibraryDigital Library
  59. 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. Google ScholarGoogle ScholarCross RefCross Ref
  60. David Lo, Liqun Cheng, Rama Govindaraju, Parthasarathy Ranganathan, and Christos Kozyrakis. 2016. Improving Resource Efficiency at Scale with Heracles. ACM Trans. Comput. Syst. 34, 2, Article 6 (May 2016), 33 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  61. Pedro García López, Marc Sánchez Artigas, Gerard París, Daniel Barcelona Pons, Álvaro Ruiz Ollobarren, and David Arroyo Pinto. 2018. Comparison of Production Serverless Function Orchestration Systems. CoRR abs/1807.11248 (2018). arXiv:1807.11248 http://arxiv.org/abs/1807.11248Google ScholarGoogle Scholar
  62. Jonathan Mace and Rodrigo Fonseca. 2018. Universal Context Propagation for Distributed System Instrumentation. In Proceedings of the Thirteenth EuroSys Conference (Porto, Portugal) (EuroSys '18). ACM, New York, NY, USA, Article 8, 18 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  63. K. Mahajan, D. Figueiredo, V. Misra, and D. Rubenstein. 2019. Optimal Pricing for Serverless Computing. In 2019 IEEE Global Communications Conference (GLOBECOM). 1--6.Google ScholarGoogle Scholar
  64. Nima Mahmoudi, Changyuan Lin, Hamzeh Khazaei, and Marin Litoiu. 2019. Optimizing Serverless Computing: Introducing an Adaptive Function Placement Algorithm. In Proceedings of the 29th Annual International Conference on Computer Science and Software Engineering (Toronto, Ontario, Canada) (CASCON '19). IBM Corp., Riverton, NJ, USA, 203--213. http://dl.acm.org/citation.cfm?id=3370272.3370294Google ScholarGoogle Scholar
  65. Filipe Manco, Costin Lupu, Florian Schmidt, Jose Mendes, Simon Kuenzer, Sumit Sati, Kenichi Yasukata, Costin Raiciu, and Felipe Huici. 2017. My VM is Lighter (and Safer) Than Your Container. In Proceedings of the 26th Symposium on Operating Systems Principles (Shanghai, China) (SOSP '17). ACM, New York, NY, USA, 218--233. Google ScholarGoogle ScholarDigital LibraryDigital Library
  66. G. McGrath and P. R. Brenner. 2017. Serverless Computing: Design, Implementation, and Performance. In 2017 IEEE 37th International Conference on Distributed Computing Systems Workshops (ICDCSW). 405--410. Google ScholarGoogle ScholarCross RefCross Ref
  67. G. McGrath, J. Short, S. Ennis, B. Judson, and P. Brenner. 2016. Cloud Event Programming Paradigms: Applications and Analysis. In 2016 IEEE 9th International Conference on Cloud Computing (CLOUD). 400--406. Google ScholarGoogle ScholarCross RefCross Ref
  68. Philipp Moritz, Robert Nishihara, Stephanie Wang, Alexey Tumanov, Richard Liaw, Eric Liang, Melih Elibol, Zongheng Yang, William Paul, Michael I. Jordan, and Ion Stoica. 2018. Ray: A Distributed Framework for Emerging AI Applications. In 13th USENIX Symposium on Operating Systems Design and Implementation (OSDI 18). USENIX Association, Carlsbad, CA, 561--577. https://www.usenix.org/conference/osdi18/presentation/moritzGoogle ScholarGoogle Scholar
  69. Stefan Nastic and Schahram Dustdar. 2018. Towards Deviceless Edge Computing: Challenges, Design Aspects, and Models for Serverless Paradigm at the Edge. Springer International Publishing, Cham, 121--136. Google ScholarGoogle ScholarCross RefCross Ref
  70. Hai Duc Nguyen, Chaojie Zhang, Zhujun Xiao, and Andrew A. Chien. 2019. Real-Time Serverless: Enabling Application Performance Guarantees. In Proceedings of the 5th International Workshop on Serverless Computing (Davis, CA, USA) (WOSC '19). Association for Computing Machinery, New York, NY, USA, 1--6. Google ScholarGoogle ScholarDigital LibraryDigital Library
  71. Christopher Null. 2019. The state of serverless: 6 trends to watch. https://techbeacon.com/enterprise-it/state-serverless-6-trends-watch.Google ScholarGoogle Scholar
  72. E. Oakes, L. Yang, K. Houck, T. Harter, A. C. Arpaci-Dusseau, and R. H. Arpaci-Dusseau. 2017. Pipsqueak: Lean Lambdas with Large Libraries. In 2017 IEEE 37th International Conference on Distributed Computing Systems Workshops (ICDCSW). 395--400. Google ScholarGoogle ScholarCross RefCross Ref
  73. Edward Oakes, Leon Yang, Dennis Zhou, Kevin Houck, Tyler Harter, Andrea Arpaci-Dusseau, and Remzi Arpaci-Dusseau. 2018. SOCK: Rapid Task Provisioning with Serverless-Optimized Containers. In 2018 USENIX Annual Technical Conference (USENIX ATC 18). Boston, MA, 57--70. https://www.usenix.org/conference/atc18/presentation/oakesGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  74. Matthew Obetz, Stacy Patterson, and Ana Milanova. 2019. Static Call Graph Construction in AWS Lambda Serverless Applications. In 11th USENIX Workshop on Hot Topics in Cloud Computing (HotCloud 19). USENIX Association, Renton, WA. https://www.usenix.org/conference/hotcloud19/presentation/obetzGoogle ScholarGoogle Scholar
  75. Kay Ousterhout, Patrick Wendell, Matei Zaharia, and Ion Stoica. 2013. Sparrow: Distributed, Low Latency Scheduling. In Proceedings of the Twenty-Fourth ACM Symposium on Operating Systems Principles (Farminton, Pennsylvania) (SOSP '13). Association for Computing Machinery, New York, NY, USA, 69--84. Google ScholarGoogle ScholarDigital LibraryDigital Library
  76. Google Cloud Platform. 2020-07-23. [Action Required] Some Cloud Functions quotas will be removed on September 8, 2020. Electronic Mail communication.Google ScholarGoogle Scholar
  77. Qifan Pu, Shivaram Venkataraman, and Ion Stoica. 2019. Shuffling, Fast and Slow: Scalable Analytics on Serverless Infrastructure. In 16th USENIX Symposium on Networked Systems Design and Implementation (NSDI 19). USENIX Association, Boston, MA, 193--206. https://www.usenix.org/conference/nsdi19/presentation/puGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  78. Hang Qu, Omid Mashayekhi, Chinmayee Shah, and Philip Levis. 2018. Decoupling the Control Plane from Program Control Flow for Flexibility and Performance in Cloud Computing. In Proceedings of the Thirteenth EuroSys Conference (Porto, Portugal) (EuroSys '18). Association for Computing Machinery, New York, NY, USA, Article 1, 13 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  79. Joseph Redmon, Santosh Divvala, Ross Girshick, and Ali Farhadi. 2015. You Only Look Once: Unified, Real-Time Object Detection. arXiv:1506.02640 [cs.CV]Google ScholarGoogle Scholar
  80. Datadog Research. 2020. The State of Serverless. https://www.datadoghq.com/state-of-serverless/.Google ScholarGoogle Scholar
  81. Emrah Samdan. 2019. AWS Lambda: Asynchronous Invocation. https://docs.aws.amazon.com/lambda/latest/dg/invocation-async.html.Google ScholarGoogle Scholar
  82. Emrah Samdan. 2019. Configuring Amazon S3 Event Notifications. https://docs.aws.amazon.com/AmazonS3/latest/dev/NotificationHowTo.html.Google ScholarGoogle Scholar
  83. Emrah Samdan. 2019. Dealing with cold starts in AWS Lambda. https://medium.com/thundra/dealing-with-cold-starts-in-aws-lambda-a5e3aa8f532.Google ScholarGoogle Scholar
  84. Josep Sampé, Marc Sánchez-Artigas, Pedro García-López, and Gerard París. 2017. Data-driven Serverless Functions for Object Storage. In Proceedings of the 18th ACM/IFIP/USENIX Middleware Conference (Las Vegas, Nevada) (Middleware '17). ACM, New York, NY, USA, 121--133. Google ScholarGoogle ScholarDigital LibraryDigital Library
  85. Linus Schrage. 1968. A Proof of the Optimality of the Shortest Remaining Processing Time Discipline. Operations Research 16, 3 (1968), 687--690. http://www.jstor.org/stable/168596Google ScholarGoogle ScholarDigital LibraryDigital Library
  86. Bianca Schroeder, Adam Wierman, and Mor Harchol-Balter. 2006. Open versus Closed: A Cautionary Tale. In Proceedings of the 3rd Conference on Networked Systems Design Implementation - Volume 3 (San Jose, CA) (NSDI'06). USENIX Association, USA, 18.Google ScholarGoogle Scholar
  87. 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 (Columbus, OH, USA) (MICRO '52). ACM, New York, NY, USA, 1063--1075. Google ScholarGoogle ScholarDigital LibraryDigital Library
  88. Mohammad Shahrad, Rodrigo Fonseca, Íñigo Goiri, Gohar Irfan Chaudhry, Paul Batum, Jason Cooke, Eduardo Laureano, Colby Tresness, Mark Russinovich, and Ricardo Bianchini. 2020. Serverless in the Wild: Characterizing and Optimizing the Serverless Workload at a Large Cloud Provider. In ATC. USENIX. https://www.usenix.org/conference/atc20/presentation/shahradGoogle ScholarGoogle Scholar
  89. Vaishaal Shankar, Karl Krauth, Qifan Pu, Eric Jonas, Shivaram Venkataraman, Ion Stoica, Benjamin Recht, and Jonathan Ragan-Kelley. 2018. numpywren: serverless linear algebra. arXiv:1810.09679 [cs.DC]Google ScholarGoogle Scholar
  90. Benjamin H. Sigelman, Luiz André Barroso, Mike Burrows, Pat Stephenson, Manoj Plakal, Donald Beaver, Saul Jaspan, and Chandan Shanbhag. 2010. Dapper, a Large-Scale Distributed Systems Tracing Infrastructure. Technical Report. Google, Inc. https://research.google.com/archive/papers/dapper-2010-1.pdfGoogle ScholarGoogle Scholar
  91. Arjun Singhvi, Kevin Houck, Arjun Balasubramanian, Mohammed Danish Shaikh, Shivaram Venkataraman, and Aditya Akella. 2019. Archipelago: A Scalable Low-Latency Serverless Platform. arXiv:1911.09849 [cs.DC]Google ScholarGoogle Scholar
  92. Josef Spillner and Serhii Dorodko. 2017. Java Code Analysis and Transformation into AWS Lambda Functions. arXiv:1702.05510 [cs.DC]Google ScholarGoogle Scholar
  93. Josef Spillner, Cristian Mateos, and David A. Monge. 2018. FaaSter, Better, Cheaper: The Prospect of Serverless Scientific Computing and HPC. In High Performance Computing, Esteban Mocskos and Sergio Nesmachnow (Eds.). Springer International Publishing, Cham, 154--168.Google ScholarGoogle Scholar
  94. Vikram Sreekanti, Chenggang Wu, Saurav Chhatrapati, Joseph E. Gonzalez, Joseph M. Hellerstein, and Jose M. Faleiro. 2020. A Fault-Tolerance Shim for Serverless Computing. In Proceedings of the Fifteenth European Conference on Computer Systems (Heraklion, Greece) (EuroSys '20). Association for Computing Machinery, New York, NY, USA, Article 15, 15 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  95. A. Sriraman and T. F. Wenisch. 2018. μ Suite: A Benchmark Suite for Microservices. In 2018 IEEE International Symposium on Workload Characterization (IISWC). 1--12. Google ScholarGoogle ScholarCross RefCross Ref
  96. Amoghvarsha Suresh and Anshul Gandhi. 2019. FnSched: An Efficient Scheduler for Serverless Functions. In Proceedings of the 5th International Workshop on Serverless Computing (Davis, CA, USA) (WOSC '19). Association for Computing Machinery, New York, NY, USA, 19--24. Google ScholarGoogle ScholarDigital LibraryDigital Library
  97. Vinod Kumar Vavilapalli, Arun C. Murthy, Chris Douglas, Sharad Agarwal, Mahadev Konar, Robert Evans, Thomas Graves, Jason Lowe, Hitesh Shah, Siddharth Seth, and et al. 2013. Apache Hadoop YARN: Yet Another Resource Negotiator. In Proceedings of the 4th Annual Symposium on Cloud Computing (Santa Clara, California) (SOCC '13). Association for Computing Machinery, New York, NY, USA, Article 5, 16 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  98. Abhishek Verma, Luis Pedrosa, Madhukar Korupolu, David Oppenheimer, Eric Tune, and John Wilkes. 2015. Large-Scale Cluster Management at Google with Borg. In Proceedings of the Tenth European Conference on Computer Systems (Bordeaux, France) (EuroSys '15). Association for Computing Machinery, New York, NY, USA, Article 18, 17 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  99. 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). USENIX Association, Boston, MA, 133--146. https://www.usenix.org/conference/atc18/presentation/wang-liangGoogle ScholarGoogle ScholarDigital LibraryDigital Library
  100. Zhijun Wang, Huiyang Li, Zhongwei Li, Xiaocui Sun, Jia Rao, Hao Che, and Hong Jiang. 2019. Pigeon: An Effective Distributed, Hierarchical Datacenter Job Scheduler. In Proceedings of the ACM Symposium on Cloud Computing (Santa Cruz, CA, USA) (SoCC '19). Association for Computing Machinery, New York, NY, USA, 246--258. Google ScholarGoogle ScholarDigital LibraryDigital Library
  101. Stefan Winzinger and Guido Wirtz. 2019. Model-based Analysis of Serverless Applications. In Proceedings of the 11th International Workshop on Modelling in Software Engineerings (Montreal, Quebec, Canada) (MiSE '19). IEEE Press, Piscataway, NJ, USA, 82--88. Google ScholarGoogle ScholarDigital LibraryDigital Library
  102. Rich Wolski, Chandra Krintz, Fatih Bakir, Gareth George, and Wei-Tsung Lin. 2019. CSPOT: Portable, Multi-scale Functions-as-a-service for IoT. In Proceedings of the 4th ACM/IEEE Symposium on Edge Computing (Arlington, Virginia) (SEC '19). ACM, New York, NY, USA, 236--249. Google ScholarGoogle ScholarDigital LibraryDigital Library
  103. Mengting Yan, Paul Castro, Perry Cheng, and Vatche Ishakian. 2016. Building a Chatbot with Serverless Computing. In Proceedings of the 1st International Workshop on Mashups of Things and APIs (Trento, Italy) (MOTA '16). ACM, New York, NY, USA, Article 5, 4 pages. Google ScholarGoogle ScholarDigital LibraryDigital Library
  104. Tian Zhang, Dong Xie, Feifei Li, and Ryan Stutsman. 2019. Narrowing the Gap Between Serverless and Its State with Storage Functions. In Proceedings of the ACM Symposium on Cloud Computing (Santa Cruz, CA, USA) (SoCC '19). Association for Computing Machinery, New York, NY, USA, 1--12. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Sequoia: enabling quality-of-service in serverless computing

      Recommendations

      Comments

      Login options

      Check if you have access through your login credentials or your institution to get full access on this article.

      Sign in
      • Published in

        cover image ACM Conferences
        SoCC '20: Proceedings of the 11th ACM Symposium on Cloud Computing
        October 2020
        535 pages
        ISBN:9781450381376
        DOI:10.1145/3419111

        Copyright © 2020 ACM

        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]

        Publisher

        Association for Computing Machinery

        New York, NY, United States

        Publication History

        • Published: 12 October 2020

        Permissions

        Request permissions about this article.

        Request Permissions

        Check for updates

        Qualifiers

        • research-article

        Acceptance Rates

        SoCC '20 Paper Acceptance Rate35of143submissions,24%Overall Acceptance Rate169of722submissions,23%

      PDF Format

      View or Download as a PDF file.

      PDF

      eReader

      View online with eReader.

      eReader