High-level adaptive program optimization with ADAPT
PPoPP '01 Proceedings of the eighth ACM SIGPLAN symposium on Principles and practices of parallel programming
Near-optimal adaptive control of a large grid application
ICS '02 Proceedings of the 16th international conference on Supercomputing
Toward a Framework for Preparing and Executing Adaptive Grid Programs
IPDPS '02 Proceedings of the 16th International Parallel and Distributed Processing Symposium
Adaptive Computing on the Grid Using AppLeS
IEEE Transactions on Parallel and Distributed Systems
Program control language: a programming language for adaptive distributed applications
Journal of Parallel and Distributed Computing
Language and Compiler Support for Adaptive Applications
Proceedings of the 2004 ACM/IEEE conference on Supercomputing
An API for Runtime Code Patching
International Journal of High Performance Computing Applications
Scalable dynamic binary instrumentation for Blue Gene/L
ACM SIGARCH Computer Architecture News - Special issue on the 2005 workshop on binary instrumentation and application
Using application information to drive adaptive grid middleware scheduling decisions
Proceedings of the 2nd workshop on Middleware-application interaction: affiliated with the DisCoTec federated conferences 2008
Modular implementation of adaptive decisions in stochastic simulations
Proceedings of the 2009 ACM symposium on Applied Computing
Proceedings of the tenth international conference on Aspect-oriented software development
OpenMP parallelism for fluid and fluid-particulate systems
Parallel Computing
Hi-index | 0.00 |
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.