Implementing modular adaptation of scientific software

2012 
a b s t r a c t Scientific software often needs to be adapted for different execution environments, problem sets, and available resources to ensure its efficiency and reliability. However, for existing programs, implement- ing adaptations by directly modifying source code can be time-consuming, error-prone, and difficult to manage for today's complex software. In this paper, we present a modular approach to realizing adapta- tion for existing scientific codes. By treating adaptation as a separate concern, our approach supports the development of application-specific, context-aware adaptation schemes without directly modifying the original code. Our approach uses a compositional framework that offers language-neutral mechanisms to integrate separately written adaptation code with existing code. Using our approach, scientific program- mers can focus on the design and implementation of adaptation schemes separately from the original code development, and then compose an adaptive application whose original capabilities are enhanced in diverse aspects such as performance and stability. Our compositional approach enables fine-grained adaptation, so that an application's program behavior is controlled at the function or algorithm level by adaptation code plugged into the application. By applying our approach to real-world scientific appli- cations to implement various adaptation scenarios, we demonstrate applicability and effectiveness for adapting scientific software.
    • Correction
    • Source
    • Cite
    • Save
    • Machine Reading By IdeaReader
    43
    References
    1
    Citations
    NaN
    KQI
    []