Macro tree transformations of linear size increase achieve cost-optimal parallelism

  • Authors:
  • Akimasa Morihata

  • Affiliations:
  • Research Institute of Electrical Communication, Tohoku University, Japan

  • Venue:
  • APLAS'11 Proceedings of the 9th Asian conference on Programming Languages and Systems
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

This paper studies parallel evaluation of tree transformations, in particular accumulative ones. Accumulation is a ubiquitous programming pattern. However, since accumulation usually imposes restrictions on evaluation orders, accumulative tree transformations appear to be unsuitable for parallel evaluation. We propose a parallel evaluation method for a large class of tree-to-tree recursive functions, which may contain accumulations, higher-order terms, and function compositions. Our parallel evaluation method achieves optimal parallel speedup if the transformation is of linear size increase, namely, the size of each output is linearly bounded by the size of the corresponding input. Our result is based on the theory of macro tree transducers and that of parallel tree contractions. The main contribution is to reveal a good collaboration between them.