PVM: a framework for parallel distributed computing
Concurrency: Practice and Experience
CC++: a declarative concurrent object-oriented programming notation
Research directions in concurrent object-oriented programming
Efficient support for irregular applications on distributed-memory machines
PPOPP '95 Proceedings of the fifth ACM SIGPLAN symposium on Principles and practice of parallel programming
An Implementation Framework for HPF Distributed Arrays on Message-Passing Parallel Computer Systems
IEEE Transactions on Parallel and Distributed Systems
Performance evaluation of the Orca shared-object system
ACM Transactions on Computer Systems (TOCS)
Proceedings of the 37th Annual Design Automation Conference
Spar: a set of extensions Java for scientific computation
Proceedings of the 2001 joint ACM-ISCOPE conference on Java Grande
Protected, user-level DMA for the SHRIMP network interface
HPCA '96 Proceedings of the 2nd IEEE Symposium on High-Performance Computer Architecture
User-Level DMA without Operating System Kernel Modification
HPCA '97 Proceedings of the 3rd IEEE Symposium on High-Performance Computer Architecture
Efficient Layering for High Speed Communication: Fast Messages 2.x
HPDC '98 Proceedings of the 7th IEEE International Symposium on High Performance Distributed Computing
Building adaptive systems with service composition frameworks
OTM'07 Proceedings of the 2007 OTM Confederated international conference on On the move to meaningful internet systems: CoopIS, DOA, ODBASE, GADA, and IS - Volume Part I
Hi-index | 0.00 |
The ENSEMBLE communication library exploits overlapping of message aggregation (computation) and DMA transfers (communication) for embedded multi-processor systems. In contrast to traditional communication libraries, ENSEMBLE operates on n-dimensional data descriptors that can be used to specify often-occurring data access patterns in n-dimentional arrays. This allows ENSEMBLE to setup a three-stage pack-transfer-unpack pipeline, effectively overlapping message aggregation and DMA transfers. ENSEMBLE is used to support Spar/Java, a Java-based language with SPMD annotations. Measurements on a TriMedia-based multi-processor system show that ENSEMBLE increases performance up to 39% for peer-to-peer communication, and up to 34% for all-to-all communication.