Serverless Skeletons for Elastic Parallel Processing
Authors:
- 18 November 2019
- conference paper
- Published by Institute of Electrical and Electronics Engineers (IEEE)
- p. 185-192
Abstract
Serverless computing is an emerging cloud computing paradigm with the goal of freeing developers from resource management issues. 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. These workloads benefit from on-demand and elastic compute resources as well as per-function billing. However, it is still an open research question to which extent parallel applications, which comprise most often complex coordination and communication patterns, can benefit from serverless computing.In this paper, we introduce serverless skeletons for parallel cloud programming to free developers from both parallelism and resource management issues. In particular, we investigate on the well-known and widely used farm skeleton, which supports the implementation of a wide range of applications. To evaluate our concepts, we present a prototypical development and runtime framework and implement two applications based on our frame-work: Numerical integration and hyperparameter optimization - a commonly applied technique in machine learning. We report on performance measurements for both applications and discuss the usefulness of our approach.Keywords
This publication has 18 references indexed in Scilit:
- Migrating parallel applications to the cloud: assessing cloud readiness based on parallel design decisionsSICS Software-Intensive Cyber-Physical Systems, 2019
- Parallel Programming with Algorithmic Skeletons2019
- Cost-efficient parallel processing of irregularly structured problems in cloud computing environmentsCluster Computing, 2018
- Serverless Big Data Processing using Matrix Multiplication as Example2018
- Features from functional programming for a C++ skeleton libraryConcurrency and Computation: Practice and Experience, 2005
- An advanced environment supporting structured parallel programming in JavaFuture Generation Computer Systems, 2003
- Algorithmic Skeletons1999
- Skeletons for data parallelism in p311997
- P3L: A structured high‐level parallel language, and its structured supportConcurrency: Practice and Experience, 1995
- Parallel programming using skeleton functionsLecture Notes in Computer Science, 1993