Deadlock-Free Message Routing in Multiprocessor Interconnection Networks
IEEE Transactions on Computers
Warp: an integrated solution of high-speed parallel computing
Proceedings of the 1988 ACM/IEEE conference on Supercomputing
Communications of the ACM
PVM: a framework for parallel distributed computing
Concurrency: Practice and Experience
MARC: a tool for automatic configuration of parallel programs
Proceedings of the world transputer user group (WOTUG) conference on Transputing '91
Exploiting task and data parallelism on a multicomputer
PPOPP '93 Proceedings of the fourth ACM SIGPLAN symposium on Principles and practice of parallel programming
A parallel programming environment supporting multiple data-parallel modules
ACM SIGPLAN Notices - Workshop on languages, compilers and run-time environments for distributed memory multiprocessors
Express is not just a message passing system: current and future directions in Express
Parallel Computing - Special issue: message passing interfaces
Supporting systolic and memory communication in iWarp
ISCA '90 Proceedings of the 17th annual international symposium on Computer Architecture
Networks, Routers and Transputers: Function, Performance and Applications
Networks, Routers and Transputers: Function, Performance and Applications
Task Parallelism and High-Performance Languages
IEEE Parallel & Distributed Technology: Systems & Technology
The C_NET Programming Environment: An Overview
CONPAR '92/ VAPP V Proceedings of the Second Joint International Conference on Vector and Parallel Processing: Parallel Processing
Hi-index | 0.00 |
Many distributed-memory machines support connection-based communication instead of or in addition to connection-less message passing. Connection-based communication can be more efficient than message passing because the resources are reserved once for the connection, and multiple messages can be sent over the connection. While long-lived connections enable more efficient use of the communication system in some situations, managing connection resources adds another level of complexity to programming such machines. iWarp is an example of a distributed memory machine that supports long-lived connections. To aid the iWarp programmer and program generator tools, we developed a tool chain that enables the programmer to define connections and compose parallel programs. The communication tool chain has been in use for four years in various forms. In that time, we have found many benefits and a few pitfalls in our model. This paper describes the design of the programming model and tools and discusses our experiences with this implementation.