TY - GEN
T1 - Elastic executions from inelastic programs
AU - Neamtiu, Iulian
N1 - Copyright:
Copyright 2011 Elsevier B.V., All rights reserved.
PY - 2011
Y1 - 2011
N2 - In this paper we present an approach and tool named ELASTIN for transforming inelastic programs - programs written with a specific platform or a fixed set of Cloud resources in mind - into elastic applications that run on elastic platforms by adapting, at runtime, to changes in the available resources. With ELASTIN, programmers can develop their applications with various specific configurations in mind, and let the compiler and runtime system take care of combining these configurations into a single elastic application that can safely switch between configurations on-the-fly, at runtime. We used ELASTIN to elastify two popular applications, the SQLite database engine and the Kiss FFT library, and found programmer burden to be very low. Benchmarks indicate that ELASTIN is effective in practice, and reconfigurations are in the sub-millisecond range. We envision this approach being useful in any domain where quick runtime adaptation is necessary due to changes in underlying resources. The approach can also be a stepping stone towards migrating legacy applications to the Cloud.
AB - In this paper we present an approach and tool named ELASTIN for transforming inelastic programs - programs written with a specific platform or a fixed set of Cloud resources in mind - into elastic applications that run on elastic platforms by adapting, at runtime, to changes in the available resources. With ELASTIN, programmers can develop their applications with various specific configurations in mind, and let the compiler and runtime system take care of combining these configurations into a single elastic application that can safely switch between configurations on-the-fly, at runtime. We used ELASTIN to elastify two popular applications, the SQLite database engine and the Kiss FFT library, and found programmer burden to be very low. Benchmarks indicate that ELASTIN is effective in practice, and reconfigurations are in the sub-millisecond range. We envision this approach being useful in any domain where quick runtime adaptation is necessary due to changes in underlying resources. The approach can also be a stepping stone towards migrating legacy applications to the Cloud.
KW - Cloud computing
KW - Dynamic software updating
KW - Elastic software
KW - Resource-aware applications
KW - Runtime adaptation
KW - Self-adaptive systems
UR - http://www.scopus.com/inward/record.url?scp=79959543010&partnerID=8YFLogxK
UR - http://www.scopus.com/inward/citedby.url?scp=79959543010&partnerID=8YFLogxK
U2 - 10.1145/1988008.1988033
DO - 10.1145/1988008.1988033
M3 - Conference contribution
AN - SCOPUS:79959543010
SN - 9781450305754
T3 - Proceedings - International Conference on Software Engineering
SP - 178
EP - 183
BT - SEAMS'11 - Proceedings of the 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, Co-located with ICSE 2011
T2 - 6th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2011, Co-located with ICSE 2011
Y2 - 23 May 2011 through 24 May 2011
ER -