Skip to main content

Abstract

The idea behind data parallel programming is to perform global operations over large data structures, where the individual operations on singleton elements of the data structure are performed simultaneously. In the simplest case, for example, this means that a loop over an array is replaced by a constant-time aggregate operation. In order to introduce parallelism, the programmer thinks about the organisation of data structures rather than the organisation of processes. This leads directly to two of the most appealing benefits of data parallelism:

  • The program can be quite explicit about parallelism, through the choice of suitable data structure operations, while at the same time it is structured like an ordinary sequential program. Thus data parallelism allows efficient usage of a parallel machine’s resources, while providing a straightforward programming style that avoids many of the difficulties of task-oriented concurrent programming.

  • The parallelism can be scaled up simply by increasing the data structure size, without needing to reorganise the algorithm. Typical data parallel programs can use far greater numbers of processors than typical task parallel programs.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag London

About this chapter

Cite this chapter

O’Donnell, J. (1999). Data Parallelism. In: Hammond, K., Michaelson, G. (eds) Research Directions in Parallel Functional Programming. Springer, London. https://doi.org/10.1007/978-1-4471-0841-2_7

Download citation

  • DOI: https://doi.org/10.1007/978-1-4471-0841-2_7

  • Publisher Name: Springer, London

  • Print ISBN: 978-1-85233-092-7

  • Online ISBN: 978-1-4471-0841-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics