Highly efficient asynchronous execution of large-grained parallel programs

  • Authors:
  • Y. Aumann;Z. M. Kedum;K. V. Palem;M. O. Rabin

  • Affiliations:
  • Dept. of Comput. Sci., Weizmann Inst. of Sci., Rehovot, Israel;-;-;-

  • Venue:
  • SFCS '93 Proceedings of the 1993 IEEE 34th Annual Foundations of Computer Science
  • Year:
  • 1993

Quantified Score

Hi-index 0.00

Visualization

Abstract

An n-thread parallel program p is large-grained if in every parallel step the computations on each of the threads are complex procedures requiring numerous processor instructions. This practically relevant style of programs differs from PRAM programs in its large granularity and the possibility that within a parallel step the computations on different threads may considerably vary in size. Let M be an n-processor asynchronous parallel system, with no restriction on the degree of asynchrony and without any specialized synchronization mechanisms. It is a challenging theoretical as well as practically important problem to ensure correct execution of P on such a parallel machine. Let P be a large-grained program requiring total work W for its execution on a synchronous a-processor parallel system. We present a transformation (compilation) of P into a program C(P) which correctly and efficiently effects the computation of P on the asynchronous machine M. Under moderate assumptions on the granularity of threads and the size of the program variables, execution of C(P) requires just O(Wlog* n) expected total work, and the memory space overhead is a small multiplicative constant.