Multilanguage Parallel Programming of Heterogeneous Machines
IEEE Transactions on Computers - Special issue on architectural support for programming languages and operating systems
Implementation and performance of Munin
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
Object and native code thread mobility among heterogeneous computers (includes sources)
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Cashmere-2L: software coherent shared memory on a clustered remote-write network
Proceedings of the sixteenth ACM symposium on Operating systems principles
Heterogeneous process migration: the Tui system
Software—Practice & Experience
Implementing a caching service a distributed COBRA objects
IFIP/ACM International Conference on Distributed systems platforms
Shared State for Distributed Interactive Data Mining Applications
Distributed and Parallel Databases - Special issue: Parallel and distributed data mining
Heterogeneous Distributed Shared Memory
IEEE Transactions on Parallel and Distributed Systems
ICDE '95 Proceedings of the Eleventh International Conference on Data Engineering
Providing Persistent Objects in Distributed Systems
ECOOP '99 Proceedings of the 13th European Conference on Object-Oriented Programming
Software DSM Protocols that Adapt between Single Writer and Multiple Writer
HPCA '97 Proceedings of the 3rd IEEE Symposium on High-Performance Computer Architecture
Multi-Level Shared State for Distributed Systems
ICPP '02 Proceedings of the 2002 International Conference on Parallel Processing
Support for Machine and Language Heterogeneity in a Distributed Shared
Support for Machine and Language Heterogeneity in a Distributed Shared
Exploiting high-level coherence information to optimize distributed shared state
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
Hi-index | 0.00 |
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.