Method Partitioning - Runtime Customization of Pervasive Programs without Design-time Application Knowledge

  • Authors:
  • Dong Zhou;Santosh Pande;Karsten Schwan

  • Affiliations:
  • -;-;-

  • Venue:
  • ICDCS '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
  • Year:
  • 2003

Quantified Score

Hi-index 0.00

Visualization

Abstract

Method Partitioning is a dynamic technique for customizingperformance-critical message-based interactions betweenprogram components, at runtime and without the need fordesign-time application knowledge. The technique partitionsprogram units that implement message handling, with lowcosts and high levels of flexibility. It consists of (a) staticanalysis of a message handling method to produce candidatepartitioning plans for the method, (b) cost models forevaluating the cost/benefits of different partitioning plans, (c)a Remote Continuation mechanism that "connects" thedistributed parts of a partitioned method at runtime, and (d)Runtime Profiling and Reconfiguration which monitors actualcosts of candidate plans and dynamically selects "best" plansfrom candidates. Experiments with prototypicalimplementation of Method Partitioning in the JEChodistributed event system demonstrate significant performanceimprovements for both communication-bound and compute-intensiveapplications, with both applications having dynamicfactors that are not predictable at design time.