General purpose parallel architectures
Handbook of theoretical computer science (vol. A)
Introduction to parallel computing: design and analysis of algorithms
Introduction to parallel computing: design and analysis of algorithms
Towards efficiency and portability: programming with the BSP model
Proceedings of the eighth annual ACM symposium on Parallel algorithms and architectures
Proceedings of the eighth annual ACM symposium on Parallel algorithms and architectures
Parallel programming with MPI
Using PLAPACK: parallel linear algebra package
Using PLAPACK: parallel linear algebra package
MagPIe: MPI's collective communication operations for clustered wide area systems
Proceedings of the seventh ACM SIGPLAN symposium on Principles and practice of parallel programming
Toward Formally-Based Design of Message Passing Programs
IEEE Transactions on Software Engineering - Special issue on architecture-independent languages and software tools for parallel processing
Letters to the editor: go to statement considered harmful
Communications of the ACM
Flow diagrams, turing machines and languages with only two formation rules
Communications of the ACM
Automatically tuned collective communications
Proceedings of the 2000 ACM/IEEE conference on Supercomputing
Scalable Parallel Computing: Technology,Architecture,Programming
Scalable Parallel Computing: Technology,Architecture,Programming
Optimization Rules for Programming with Collective Operations
IPPS '99/SPDP '99 Proceedings of the 13th International Symposium on Parallel Processing and the 10th Symposium on Parallel and Distributed Processing
Experimental Results about MPI Collective Communication Operations
HPCN Europe '99 Proceedings of the 7th International Conference on High-Performance Computing and Networking
Bandwidth-Efficient Collective Communication for Clustered Wide Area Systems
IPDPS '00 Proceedings of the 14th International Symposium on Parallel and Distributed Processing
Modeling Agent Social Joint Actions via Micro and Macro Coordination Strategies
WI-IAT '12 Proceedings of the The 2012 IEEE/WIC/ACM International Joint Conferences on Web Intelligence and Intelligent Agent Technology - Volume 02
A directive-based MPI code generator for Linux PC clusters
The Journal of Supercomputing
On the abstraction of message-passing communications using algorithmic skeletons: a case study
ISSADS'05 Proceedings of the 5th international conference on Advanced Distributed Systems
Engineering Applications of Artificial Intelligence
Hi-index | 0.00 |
During the software crisis in the 1960s, Dijkstra's famous thesis "goto considered harmful" paved the way for structured programming. We suggest that current difficulties in parallel programming are a consequence of using low-level send-receive primitives. We argue that, like goto in sequential programs, send-receive should be avoided as far as possible and replaced by collective operations in the parallel setting. We dispute some widely held beliefs about the alleged superiority of communication based on send-receive and present both theoretical and empirical evidence that collective operations are a better alternative.