Strategies for compiling µTC to novel chip Multiprocessors

  • Authors:
  • Thomas A. M. Bernard;Chris R. Jesshope;Peter M. W. Knijnenburg

  • Affiliations:
  • Informatics Institute, University of Amsterdam, The Netherlands;Informatics Institute, University of Amsterdam, The Netherlands;Informatics Institute, University of Amsterdam, The Netherlands

  • Venue:
  • SAMOS'07 Proceedings of the 7th international conference on Embedded computer systems: architectures, modeling, and simulation
  • Year:
  • 2007

Quantified Score

Hi-index 0.00

Visualization

Abstract

Microthreaded C also called µTC is a concurrent language based on the C language which allows the programmer to code concurrency-oriented applications for targeting chip multiprocessors. µTC source code contains fine-grained concurrent control structures, where the concurrency is explicitly written via new keywords. This language is used as an interface for defining dynamic concurrency and as an intermediate language to capture concurrency from data-parallel languages such as Single-Assignment C, or as the target for parallelizing compilers for sequential languages such as C. This paper presents an overview of µTC language, emphasizing the aspects of memory synchronization and concurrent control structures. In order to understand the properties and scopes of the language, we also present the outlines of the architectures after discussing the global concepts of the microthreading model. Finally we show the toolchain we are currently developing to support the model, focusing on compiler strategies.