Support for Machine and Language Heterogeneity in a Distributed Shared

  • Authors:
  • C. Tang;D. Chen;S. Dwarkadas;M. L. Scott

  • Affiliations:
  • -;-;-;-

  • Venue:
  • Support for Machine and Language Heterogeneity in a Distributed Shared
  • Year:
  • 2002

Quantified Score

Hi-index 0.00

Visualization

Abstract

InterWeave is a distributed middleware system that supports the sharing of strongly typed, pointer-rich data structures across heterogeneous platforms. Unlike RPC-style systems (including DCOM, CORBA, Java RMI), InterWeave does not require processes to employ a procedural interface: it allows them to access shared data using ordinary reads and writes. To save bandwidth in wide area networks, InterWeave caches data locally, and employs two-way diffing to maintain coherence and consistency, transmitting only the portions of the data that have changed. .pp In this paper, we focus on the aspects of InterWeave specifically designed to accommodate heterogeneous machine architectures and languages. Central to our approach is a strongly typed, platform-independent wire format for diffs, and a set of algorithms and metadata structures that support translation between local and wire formats. Using a combination of microbenchmarks and real applications, we evaluate the performance of our heterogeneity mechanisms, and compare them to comparable mechanisms in RPC-style systems. When transmitting entire segments, InterWeave achieves performance comparable to that of RPC, while providing a more flexible programming model. When only a portion of a segment has changed, InterWeaveUs use of diffs allows it to scale its overhead down, significantly outperforming straightforward use of RPC.