Where is time spent in message-passing and shared-memory programs?

  • Authors:
  • Satish Chandra;James R. Larus;Anne Rogers

  • Affiliations:
  • Computer Sciences Department, University of Wisconsin-Madison, 1210 West Dayton Street, Madison, WI, USA;Computer Sciences Department, University of Wisconsin-Madison, 1210 West Dayton Street, Madison, WI, USA;Department of Computer Science, 35 Olden Street, Princeton University, Princeton, NJ, USA

  • Venue:
  • ASPLOS VI Proceedings of the sixth international conference on Architectural support for programming languages and operating systems
  • Year:
  • 1994

Quantified Score

Hi-index 0.00

Visualization

Abstract

Message passing and shared memory are two techniques parallel programs use for coordination and communication. This paper studies the strengths and weaknesses of these two mechanisms by comparing equivalent, well-written message-passing and shared-memory programs running on similar hardware. To ensure that our measurements are comparable, we produced two carefully tuned versions of each program and measured them on closely-related simulators of a message-passing and a shared-memory machine, both of which are based on same underlying hardware assumptions.We examined the behavior and performance of each program carefully. Although the cost of computation in each pair of programs was similar, synchronization and communication differed greatly. We found that message-passing's advantage over shared-memory is not clear-cut. Three of the four shared-memory programs ran at roughly the same speed as their message-passing equivalent, even though their communication patterns were different.