Return to search

Automatic Task Formation Techniques for the Multi-level Computing Architecture

The Multi-Level Computing Architecture (MLCA) is a multiprocessor system-on-chip architecture designed for multimedia applications. It provides a programming model
that simplifies the process of writing parallel applications by eliminating the need for explicit synchronization. However, developers must still invest effort to design applications that fully exploit the MLCA’s multiprocessing capabilities. We present a set of compiler techniques to streamline the process of developing applications for the MLCA. We present an algorithm to automatically partition a sequential application into tasks that can be executed in parallel. We also present code generation algorithms to translate annotated, sequential C code to the MLCA’s programming model. We provide an experimental evaluation of these techniques, performed with a prototype compiler based upon the open-source ORC compiler and integrated with the MLCA Optimizing Compiler. This evaluation shows that the performance of automatically generated code compares favourably to that of manually written code.

Identiferoai:union.ndltd.org:TORONTO/oai:tspace.library.utoronto.ca:1807/11166
Date30 July 2008
CreatorsStewart, Kirk
ContributorsAbdelrahman, Tarek S.
Source SetsUniversity of Toronto
Languageen_ca
Detected LanguageEnglish
TypeThesis
Format898960 bytes, application/pdf

Page generated in 0.0022 seconds