Migrating parallel applications to the cloud: assessing cloud readiness based on parallel design decisions
- Parallel applications are the computational backbone of major industry trends and grand challenges in science. Whereas these applications are typically constructed for dedicated High Performance Computing clusters and supercomputers, the cloud emerges as attractive execution environment, which provides on-demand resource provisioning and a pay-per-use model. However, cloud environments require specific application properties that may restrict parallel application design. As a result, design trade-offs are required to simultaneously maximize parallel performance and benefit from cloud-specific characteristics. In this paper, we present a novel approach to assess the cloud readiness of parallel applications based on the design decisions made. By discovering and understanding the implications of these parallel design decisions on an application’s cloud readiness, our approach supports the migration of parallel applications to the cloud.We introduce an assessment procedure, its underlying meta model, and a corresponding instantiation to structure this multi-dimensional design space. For evaluation purposes, we present an extensive case study comprising three parallel applications and discuss their cloud readiness based on our approach.
Author of HS Reutlingen | Kehrer, Stefan; Blochinger, Wolfgang |
---|---|
DOI: | https://doi.org/10.1007/s00450-019-00396-8 |
ISSN: | 2524-8510 |
eISSN: | 2524-8529 |
Erschienen in: | SISC Software-Intensive Cyber-Physical Systems |
Publisher: | Springer |
Place of publication: | Berlin ; Heidelberg |
Document Type: | Article |
Language: | English |
Year of Publication: | 2019 |
Tag: | application properties; cloud; cloud migration; cloud readiness; high performance computing; non-trivial parallelism; parallel computing |
Volume: | 34 |
Issue: | 2-3 |
Page Number: | 12 |
First Page: | 73 |
Last Page: | 84 |
DDC classes: | 004 Informatik |
Open Access?: | Nein |
Licence (German): | ![]() |