Programming strategies for contextual runtime specialization

T Carvalho, P Pinto, JMP Cardoso - Proceedings of the 18th International …, 2015 - dl.acm.org
Proceedings of the 18th International Workshop on Software and Compilers for …, 2015dl.acm.org
Runtime adaptability is expected to adjust the application and the mapping of computations
according to usage contexts, operating environments, resources availability, etc. However,
extending applications with adaptive features can be a complex task, especially due to the
current lack of programming models and compiler support. One of the run-time adaptability
possibilities is the use of specialized code according to data workloads and environments.
Traditional approaches use multiple code versions generated offline and, during runtime, a …
Runtime adaptability is expected to adjust the application and the mapping of computations according to usage contexts, operating environments, resources availability, etc. However, extending applications with adaptive features can be a complex task, especially due to the current lack of programming models and compiler support. One of the run-time adaptability possibilities is the use of specialized code according to data workloads and environments. Traditional approaches use multiple code versions generated offline and, during runtime, a strategy is responsible to select a code version. Moving code generation to runtime can achieve important improvements but may impose unacceptable overhead. This paper presents an aspect-oriented programming approach for runtime adaptability. We focus on a separation of concerns (strategies vs. application) promoted by a domain-specific language for programming runtime strategies. Our strategies allow runtime specialization based on contextual information. We use a template-based runtime code generation approach to achieve program specialization. We demonstrate our approach with examples from image processing, which depict the benefits of runtime specialization and illustrate how several factors need to be considered to efficiently adapt the application.
ACM Digital Library
以上显示的是最相近的搜索结果。 查看全部搜索结果