Back to results

University of Illinois at Urbana-Champaign

Functional parallelism: Theoretical foundations and implementation

Abstract

dc:description

Thus far, parallelism at the loop level (or data-parallelism) has been almost exclusively the main target of parallelizing compilers. The variety of new parallel architectures and recent progress in interprocedural dependence analysis suggest new directions for the exploitation of parallelism across loop and procedure boundaries (or functional-parallelism). This thesis studies the problem of extracting functional parallelism from sequential programs. It presents the Hierarchical Task Graph (HTG) as an intermediate parallel program representation which encapsulates data and control dependences, and which can be used for the extraction and exploitation of functional parallelism. Control and data dependences require synchronization between tasks, and hence the problem of eliminating redundant control and data dependences is important. We show that determining precedence relationship is crucial in finding the essential data dependences for synchronization purposes, that there exists a unique minimum set of essential data dependences, and that finding this minimum set is NP-hard and NP-easy. We present heuristic algorithms, which appear to work well in practice, to find the minimum set of data dependences. The control and data dependences are used to derive execution conditions for tasks which maximize functional parallelism. We discuss the issue of optimization of such conditions and propose optimization algorithms. The hierarchical nature of the HTG facilitates efficient task-granularity control during code generation, and thus applicability for a variety of parallel architectures. The HTG has been implemented in the Parafrase-2 compiler and is used as the intermediate representation for generating parallel source code.

Degree

thesis:*
Name thesis:degree_name
Ph.D.
Level thesis:degree_level
Dissertation
Discipline thesis:degree_discipline
Computer Science
Grantor
University of Illinois at Urbana-Champaign
Year dc:date
2011

Author and committee

dc:creator, dc:contributor.*
Author dc:creator
  • Girkar, Milind Baburao
Contributors dc:contributor
  • Polychronopoulos, Constantine D.

Subjects

dc:subject × 1

Rights

dc:rights
Statement dc:rights
  • Copyright 1992 Girkar, Milind Baburao
Language dc:language
eng

Identifiers

dc:identifier.*
Identifier
AAI9215814
(UMI)AAI9215814
OAI identifier oai:identifier
oai:www.ideals.illinois.edu:2142/19031

Chain of custody

source
Harvested from
University of Illinois - Urbana-Champaign
Base URL
www.ideals.illinois.edu/oai-pmh
Last updated
2026-07-22
Source record
OAI-PMH GetRecord
citation

Girkar, Milind Baburao. Functional parallelism: Theoretical foundations and implementation. Dissertation thesis, University of Illinois at Urbana-Champaign, 2011. http://hdl.handle.net/2142/19031