Title:
Indigo: User-level Support for Building Distributed Shared Abstractions
Indigo: User-level Support for Building Distributed Shared Abstractions
Author(s)
Kohli, Prince
Ahamad, Mustaque
Schwan, Karsten
Ahamad, Mustaque
Schwan, Karsten
Advisor(s)
Editor(s)
Collections
Supplementary to
Permanent Link
Abstract
Distributed systems that consist of workstations connected by high performance
interconnects offer computational power comparable to moderate size parallel
machines. Middleware like Distributed Shared Memory (DSM) or Distributed
Shared Objects (DSO) attempts to improve the programmability of such hardware
by presenting to application programmers interfaces similar to those offered
by shared memory machines. This paper presents the portable {\em Indigo}
communications library which provides a small set of primitives with which
arbitrary shared abstractions are easily and efficiently implemented
across distributed hardware platforms. Sample shared abstractions implemented
with Indigo include DSM and a variety of DSM protocols as well as
fragmented objects, where object state is split across different machines and
where fragment communications may be customized to application-specific
consistency needs. The Indigo library's design and implementation are
evaluated on two different target platforms, a workstation cluster and
an IBM SP-2 machine. As part of this evaluation, a novel DSM system and
consistency protocol are implemented and evaluated with several high
performance applications. Application performance attained with the DSM system
is compared to the performance experienced when utilizing the
underlying basic message passing facilities or when employing Indigo to
construct customized fragmented objects implementing the application's
shared state. Such experimentation results in insights concerning the
efficient implementation of DSM systems (e.g., how to deal with
false sharing). It also leads to the conclusion that Indigo provides a
sufficiently rich set of abstractions for efficient implementation of the
next generation of parallel programming models for high performance
machines.
Sponsor
Date Issued
1994
Extent
392523 bytes
Resource Type
Text
Resource Subtype
Technical Report