Self-tuning serverless task farming using proactive elasticity control
- The cloud evolved into an attractive execution environment for parallel applications, which make use of compute resources to speed up the computation of large problems in science and industry. Whereas Infrastructure as a Service (IaaS) offerings have been commonly employed, more recently, serverless computing emerged as a novel cloud computing paradigm with the goal of freeing developers from resource management issues. However, as of today, serverless computing platforms are mainly used to process computations triggered by events or user requests that can be executed independently of each other and benefit from on-demand and elastic compute resources as well as per-function billing. In this work, we discuss how to employ serverless computing platforms to operate parallel applications. We specifically focus on the class of parallel task farming applications and introduce a novel approach to free developers from both parallelism and resource management issues. Our approach includes a proactive elasticity controller that adapts the physical parallelism per application run according to user-defined goals. Specifically, we show how to consider a user-defined execution time limit after which the result of the computation needs to be present while minimizing the associated monetary costs. To evaluate our concepts, we present a prototypical elastic parallel system architecture for self-tuning serverless task farming and implement two applications based on our framework. Moreover, we report on performance measurements for both applications as well as the prediction accuracy of the proposed proactive elasticity control mechanism and discuss our key findings.
Author of HS Reutlingen | Kehrer, Stefan; Scheffold, Jochen; Blochinger, Wolfgang |
---|---|
URN: | urn:nbn:de:bsz:rt2-opus4-30868 |
DOI: | https://doi.org/10.1007/s10586-020-03158-3 |
ISSN: | 1386-7857 |
eISSN: | 1573-7543 |
Erschienen in: | Cluster Computing |
Publisher: | Springer |
Place of publication: | Dordrecht |
Document Type: | Journal article |
Language: | English |
Publication year: | 2021 |
Tag: | cloud computing; elasticity; function-as-a-service; parallel cloud programming; parallel computing; programming model |
Volume: | 24 |
Issue: | 2 |
Page Number: | 19 |
First Page: | 799 |
Last Page: | 817 |
DDC classes: | 004 Informatik |
Open access?: | Ja |
Licence (German): | Creative Commons - CC BY - Namensnennung 4.0 International |