Implementing optimized distributed data sharing using scoped behaviour and a class library

  • Authors:
  • Paul Lu

  • Affiliations:
  • Dept. of Computer Science, University of Toronto, Toronto, Ontario, Canada

  • Venue:
  • COOTS'97 Proceedings of the 3rd conference on USENIX Conference on Object-Oriented Technologies (COOTS) - Volume 3
  • Year:
  • 1997

Quantified Score

Hi-index 0.00

Visualization

Abstract

Sometimes, it is desirable to alter or optimize the behaviour of an object according to the needs of a specific portion of the source code (i.e., context), such as a particular loop or phase. One technique to support this form of optimization flexibility is a novel approach called scoped behaviour. Scoped behaviour allows the programmer to incrementally tune applications on a per-object and per-context basis within standard C++. We explore the use of scoped behaviour in the implementation of the Aurora distributed shared data (DSD) system. In Aurora, the programmer uses scoped behaviour as the interface to various data sharing optimizations. We detail howa class library implements the basic data sharing functionality and how scoped behaviour co-ordinates the compile-time and run-time interaction between classes to implement the optimizations. We also explore how the library can be expanded with new classes and new optimization behaviours. The good performance of Aurora suggests that using scoped behaviour and a class library is a viable approach for supporting this form of optimization flexibility.