Chores: enhanced run-time support for shared-memory parallel computing

  • Authors:
  • Derek L. Eager;John Jahorjan

  • Affiliations:
  • Univ. of Saskatchewan, Saskatoon, Sask., Canada;Univ. of Washington, Seattle

  • Venue:
  • ACM Transactions on Computer Systems (TOCS)
  • Year:
  • 1993

Quantified Score

Hi-index 0.00

Visualization

Abstract

Parallel computing is increasingly important in the solution of large-scale numerical problems. The difficulty of efficiently hand-coding parallelism, and the limitations of parallelizing compilers, have nonetheless restricted its use by scientific programmers.In this paper we propose a new paradigm, chores, for the run-time support of parallel computing on shared-memory multiprocessors. We consider specifically uniform memory access shared-memory environments, although the chore paradigm should also be appropriate for use within the clusters of a large-scale nonuniform memory access machine.We argue that chore systems attain both the high efficiency of compiler approaches for the common case of data parallelism, and the flexibility and performance of user-level thread approaches for functional parallelism. These benefits are achieved within a single, simple conceptual model that almost entirely relieves the programmer and compiler from concerns of granularity, scheduling, and enforcement of synchronization constraints. Measurements of a prototype implementation demonstrate that the chore model can be supported more efficiently than can traditional approaches to either data or functional parallelism alone.