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
Using MPI: portable parallel programming with the message-passing interface
Using MPI: portable parallel programming with the message-passing interface
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
On concurrent programming
Using PLAPACK: parallel linear algebra package
Using PLAPACK: parallel linear algebra package
Structural properties of hypertext
Proceedings of the ninth ACM conference on Hypertext and hypermedia : links, objects, time and space---structure in hypermedia systems: links, objects, time and space---structure in hypermedia systems
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
Structured programming
Parallel functional programming in Eden
Journal of Functional Programming
A Reconfigurable MPI Broadcast Function
HPCASIA '05 Proceedings of the Eighth International Conference on High-Performance Computing in Asia-Pacific Region
Evaluating high-level distributed language constructs
ICFP '07 Proceedings of the 12th ACM SIGPLAN international conference on Functional programming
Rethinking software connectors
International workshop on Synthesis and analysis of component connectors: in conjunction with the 6th ESEC/FSE joint meeting
On the design of abstract binding connectors for high performance computing component models
Proceedings of the 2007 symposium on Component and framework technology in high-performance and scientific computing
An Institutional Theory for #-Components
Electronic Notes in Theoretical Computer Science (ENTCS)
Leveraging non-blocking collective communication in high-performance applications
Proceedings of the twentieth annual symposium on Parallelism in algorithms and architectures
A domain-specific language for parallel and grid computing
Proceedings of the 2008 AOSD workshop on Domain-specific aspect languages
Communication Optimization for Medical Image Reconstruction Algorithms
Proceedings of the 15th European PVM/MPI Users' Group Meeting on Recent Advances in Parallel Virtual Machine and Message Passing Interface
Asynchronous typed object groups for grid programming
International Journal of Parallel Programming
Dealing Denotationally With Stream-based Communication
Electronic Notes in Theoretical Computer Science (ENTCS)
Design and implementation of an environment for component-based parallel programming
VECPAR'06 Proceedings of the 7th international conference on High performance computing for computational science
SkelJ: skeletons for object-oriented applications
PPAM'07 Proceedings of the 7th international conference on Parallel processing and applied mathematics
Language virtualization for heterogeneous parallel computing
Proceedings of the ACM international conference on Object oriented programming systems languages and applications
A survey of algorithmic skeleton frameworks: high-level structured parallel programming enablers
Software—Practice & Experience - Focus on Selected PhD Literature Reviews in the Practical Aspects of Software Technology
A case for non-blocking collective operations
ISPA'06 Proceedings of the 2006 international conference on Frontiers of High Performance Computing and Networking
Optimizing a conjugate gradient solver with non-blocking collective operations
EuroPVM/MPI'06 Proceedings of the 13th European PVM/MPI User's Group conference on Recent advances in parallel virtual machine and message passing interface
Improving parallelism in structural data mining
PPAM'05 Proceedings of the 6th international conference on Parallel Processing and Applied Mathematics
A proposal of reconfigurable MPI collective communication functions
ISPA'05 Proceedings of the Third international conference on Parallel and Distributed Processing and Applications
HPC in Java: experiences in implementing the NAS parallel benchmarks
AIC'10/BEBI'10 Proceedings of the 10th WSEAS international conference on applied informatics and communications, and 3rd WSEAS international conference on Biomedical electronics and biomedical informatics
Coordinating computation with communication
COORDINATION'06 Proceedings of the 8th international conference on Coordination Models and Languages
Concurrency and Computation: Practice & Experience
Verification of a heat diffusion simulation written with orléans skeleton library
PPAM'11 Proceedings of the 9th international conference on Parallel Processing and Applied Mathematics - Volume Part II
Functional high performance financial IT: the hiperfit research center in copenhagen
TFP'11 Proceedings of the 12th international conference on Trends in Functional Programming
Optimization principles for collective neighborhood communications
SC '12 Proceedings of the International Conference on High Performance Computing, Networking, Storage and Analysis
Pattern-independent detection of manual collectives in MPI programs
Euro-Par'12 Proceedings of the 18th international conference on Parallel Processing
A verified library of algorithmic skeletons on evenly distributed arrays
ICA3PP'12 Proceedings of the 12th international conference on Algorithms and Architectures for Parallel Processing - Volume Part I
Bandwidth-optimal all-to-all exchanges in fat tree networks
Proceedings of the 27th international ACM conference on International conference on supercomputing
A survey of support for structured communication in concurrency control models
Journal of Parallel and Distributed Computing
Hi-index | 0.00 |
During the software crisis of the 1960s, Dijkstra's famous thesis "goto considered harmful" paved the way for structured programming. This short communication suggests that many current difficulties of parallel programming based on message passing are caused by poorly structured communication, which is 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 setting of message passing. We dispute some widely held opinions about the apparent superiority of pairwise communication over collective communication and present substantial theoretical and empirical evidence to the contrary in the context of MPI (Message Passing Interface).