Program control language: a programming language for adaptive distributed applications
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
The increasing popularity of distributed applications has shown a need for writing flexible software that can adapt to take maximum advantage of all available resources or to provide the best quality of service in a less-than-ideal environment. Such adaptive software can be difficult to write with ad hoc techniques. We have developed new language features and compiler and runtime support for coordinating distributed adaptations to maintain correctness of the underlying target application. Our algorithm is novel in that it uses the internal and external state of a process relative to the portion of the code being adapted rather than global synchronization mechanisms. This approach saves the user from writing complex distributed synchronization code to implement adaptations. Our results show that the overheads of the runtime coordination are small or negligible.