Communications of the ACM - Special section on computer architecture
Memory coherence in shared virtual memory systems
PODC '86 Proceedings of the fifth annual ACM symposium on Principles of distributed computing
Mach and Matchmaker: kernel and language support for object-oriented distributed systems
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
ASPLOS II Proceedings of the second international conference on Architectual support for programming languages and operating systems
Concurrent programming using actors
Object-oriented concurrent programming
ACM Transactions on Computer Systems (TOCS)
Implementing a cache consistency protocol
ISCA '85 Proceedings of the 12th annual international symposium on Computer architecture
A Value Transmission Method for Abstract Data Types
ACM Transactions on Programming Languages and Systems (TOPLAS)
Distributed Systems - Architecture and Implementation, An Advanced Course
Accent: A communication oriented network operating system kernel
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
Solved problems, unsolved problems and non-problems in concurrency
ACM SIGOPS Operating Systems Review
Remote procedure call
Translation lookaside buffer consistency: a software approach
ASPLOS III Proceedings of the third international conference on Architectural support for programming languages and operating systems
Debugging of heterogeneous parallel systems
PADD '88 Proceedings of the 1988 ACM SIGPLAN and SIGOPS workshop on Parallel and distributed debugging
The concurrent language, Shared Prolog
ACM Transactions on Programming Languages and Systems (TOPLAS)
Coordination languages and their significance
Communications of the ACM
Coordinating rule-based software processes with ESP
ACM Transactions on Software Engineering and Methodology (TOSEM)
Window real objects: a distributed shared memory for distributed implementation of GUI applications
UIST '93 Proceedings of the 6th annual ACM symposium on User interface software and technology
A comprehensive bibliography of distributed shared memory
ACM SIGOPS Operating Systems Review
PLUS: a distributed shared-memory system
ISCA '90 Proceedings of the 17th annual international symposium on Computer Architecture
First-class user-level threads
SOSP '91 Proceedings of the thirteenth ACM symposium on Operating systems principles
A taxonomy-based comparison of several distributed shared memory systems
ACM SIGOPS Operating Systems Review
Distributed Shared Memory: Concepts and Systems
IEEE Parallel & Distributed Technology: Systems & Technology
Language Support for Multidisciplinary Applications
IEEE Computational Science & Engineering
IEEE Software
VMMP: A Practical Tool for the Development of Portable and Efficient Programs for Multiprocessors
IEEE Transactions on Parallel and Distributed Systems
InterWeave: A Middleware System for Distributed Shared State
LCR '00 Selected Papers from the 5th International Workshop on Languages, Compilers, and Run-Time Systems for Scalable Computers
Gilgamesh: a multithreaded processor-in-memory architecture for petaflops computing
Proceedings of the 2002 ACM/IEEE conference on Supercomputing
Exploiting high-level coherence information to optimize distributed shared state
Proceedings of the ninth ACM SIGPLAN symposium on Principles and practice of parallel programming
Efficient Distributed Shared State for Heterogeneous Machine Architectures
ICDCS '03 Proceedings of the 23rd International Conference on Distributed Computing Systems
The design and evaluation of a shared object system for distributed memory machines
OSDI '94 Proceedings of the 1st USENIX conference on Operating Systems Design and Implementation
An asymmetric distributed shared memory model for heterogeneous parallel systems
Proceedings of the fifteenth edition of ASPLOS on Architectural support for programming languages and operating systems
Hi-index | 0.02 |
A system called Agora was designed and implemented that supports the development of multilanguage parallel applications for heterogeneous machines. Agora hinges on two ideas: the first one is that shared memory can be a suitable abstraction to program concurrent, multilanguage modules running on heterogeneous machines. The second idea is that a shared memory abstraction can be efficiently supported across different computer architectures that are not connected by a physical shared memory, e.g., local area network workstations or ensemble machines. Agora has been in use for more than a year. The authors describe the Agora shared memory and its software implementation on both tightly and loosely coupled architectures. Measurements of the current implementation are also included.