Efficient Distributed Shared State for Heterogeneous Machine Architectures

  • Authors:
  • Chunqiang Tang;DeQing Chen;Sandhya Dwarkadas;Michael L. Scott

  • Affiliations:
  • -;-;-;-

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

Quantified Score

Hi-index 0.00

Visualization

Abstract

InterWeave is a distributed middleware system that supportsthe sharing of strongly typed, pointer-rich data structuresacross heterogeneous platforms. As a complementto RPC-based systems such as CORBA, .NET, and JavaRMI, InterWeave allows processes to access shared datausing ordinary reads and writes. Experience indicatesthat InterWeave-style sharing facilitates the rapid developmentof distributed applications, and enhances performancethrough transparent caching of state.In this paper, we focus on the aspects of InterWeavespecifically designed to accommodate heterogeneous machinearchitectures. Beyond the traditional challenges ofmessage-passing in heterogeneous systems, InterWeave (1)identifies and tracks data changes in the face of relaxed coherencemodels, (2) employs a wire format that capturesnot only data but also diffs in a machine and language-independentform, and (3) swizzles pointers to maintainlong-lived (cross-call) address transparency. To supportthese operations, InterWeave maintains an extensive set ofmetadata structures, and employs a variety of performanceoptimizations. Experimental results show that InterWeaveachieves performance comparable to that of RPC parameterpassing when transmitting previously uncached data.When updating data that have already been cached, Inter-Weave'suse of platform-independent diffs allows it to significantlyoutperform the straightforward use of RPC.