A calculus for exploiting data parallelism on recursively defined data (Preliminary report)

Susumu Nishimura, Atsushi Ohori

Research output: Chapter in Book/Report/Conference proceedingConference contribution

4 Citations (Scopus)

Abstract

Array based data parallel programming can be generalized in two ways to make it an appropriate paradigm for parallel processing of general recursively defined data. The first is the introduction of a parallel evaluation mechanism for dynamically allocated recursively defined data. It achieves the effect of applying the same function to all the subterms of a given datum in parallel. The second is a new notion of recursion, which we call parallel recursion, for parallel evaluation of recursively defined data. In contrast with ordinary recursion, which only uses the final results of the recursive calls of its immediate subterms, the new recursion repeatedly transforms a recursive datum represented by a system of equations to another recursive datum by applying the same function to each of the equation simultaneously, until the final result is obtained. This mechanism exploits more parallelism and achieves significant speedup compared to the conventional parallel evaluation of recursive functions. Based on these observations, we propose a typed lambda calculus for data parallel programming and give an operational semantics that integrates the parallel evaluation mechanism and the new form of recursion in the semantic core of a typed lambda calculus. We also describe an implementation method for massively parallel multicomputers, which makes it possible to execute parallel recursion in the expected performance.

Original languageEnglish
Title of host publicationTheory and Practice of Parallel Programming - International Workshop, TPPP 1994, Proceedings
EditorsAkinori Yonezawa, Takayasu Ito
PublisherSpringer-Verlag
Pages413-432
Number of pages20
ISBN (Print)3540591729, 9783540591726
DOIs
Publication statusPublished - 1995 Jan 1
Externally publishedYes
Event1st International Workshop on Theory and Practice of Parallel Programming, TPPP 1994 - Sendai, Japan
Duration: 1994 Nov 71994 Nov 9

Publication series

NameLecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics)
Volume907
ISSN (Print)0302-9743
ISSN (Electronic)1611-3349

Other

Other1st International Workshop on Theory and Practice of Parallel Programming, TPPP 1994
CountryJapan
CitySendai
Period94/11/794/11/9

ASJC Scopus subject areas

  • Theoretical Computer Science
  • Computer Science(all)

Fingerprint Dive into the research topics of 'A calculus for exploiting data parallelism on recursively defined data (Preliminary report)'. Together they form a unique fingerprint.

  • Cite this

    Nishimura, S., & Ohori, A. (1995). A calculus for exploiting data parallelism on recursively defined data (Preliminary report). In A. Yonezawa, & T. Ito (Eds.), Theory and Practice of Parallel Programming - International Workshop, TPPP 1994, Proceedings (pp. 413-432). (Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics); Vol. 907). Springer-Verlag. https://doi.org/10.1007/BFb0026582