Modular, Fine-Grained Adaptation of Parallel Programs

  • Authors:
  • Pilsung Kang;Naresh K. Selvarasu;Naren Ramakrishnan;Calvin J. Ribbens;Danesh K. Tafti;Srinidhi Varadarajan

  • Affiliations:
  • Department of Computer Science, Virginia Tech, Blacksburg VA 24061;Department of Mechanical Engineering, Virginia Tech, Blacksburg, VA 24061;Department of Computer Science, Virginia Tech, Blacksburg VA 24061;Department of Computer Science, Virginia Tech, Blacksburg VA 24061;Department of Mechanical Engineering, Virginia Tech, Blacksburg, VA 24061;Department of Computer Science, Virginia Tech, Blacksburg VA 24061

  • Venue:
  • ICCS '09 Proceedings of the 9th International Conference on Computational Science: Part I
  • Year:
  • 2009

Quantified Score

Hi-index 0.00

Visualization

Abstract

We present a modular approach to realizing fine-grained adaptation of program behavior in a parallel environment. Using a compositional framework based on function call interception and manipulation, the adaptive logic to monitor internal program states and control the behavior of program modules is written and managed as a separate code, thus supporting centralized design of complex adaptation strategies for adapting to dynamic changes within an application. By `catching' the functions that execute in synchronization across the parallel environment and inserting the adaptive logic operations at the intercepted control points, the proposed method provides a convenient way of synchronous adaptation without disturbing the parallel execution and communication structure already established in the original program. Applying our method to a CFD (computational fluid dynamics) simulation program to implement example adaptation scenarios, we demonstrate how effectively applications can change their behavior through fine-grained control.