Skip to main content

Strategies for Compiling μTC to Novel Chip Multiprocessors

  • Conference paper
Embedded Computer Systems: Architectures, Modeling, and Simulation (SAMOS 2007)

Part of the book series: Lecture Notes in Computer Science ((LNTCS,volume 4599))

Included in the following conference series:

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.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Jesshope, C.: Microthreading - a distributed paradigm for instruction-level concurrency. Parallel Processing Letters. In: Proc. of IFIP 10.3 Workshop 2003 (2006) (to be published)

    Google Scholar 

  2. Bousias, K., Hasasneh, N., Jesshope, C.: Instruction-Level Parallelism through Microthreading - a scalable Approach to Chip Multiprocessors. Computer Journal 49(2), 211–233 (2006)

    Article  Google Scholar 

  3. OpenMP: OpenMP Version 2.5 Specification (accessed 16/4/2006) (2005), http://www.openmp.org/drupal/mp-documents/draft_spec25.pdf

  4. Carlson, W., Draper, J., Cullera, D., Brooks, K.Y.E., Warren, K.: Introduction to UPC and Language Specification. Technical Report CCS-TR-99-157 (May 13, 1999)

    Google Scholar 

  5. Lee, E.A: The Problem With Threads. IEEE Computer 36(5), 33–42 (2006)

    Google Scholar 

  6. Swanson, S., Schwerin, A., Mercaldi, M., Petersen, A., Putnam, A., Michelson, K., Oskin, M., Eggers, S.: The WaveScalar Architecture. Accepted by Transactions on Computer Systems (TOCS) (2006) (to appear)

    Google Scholar 

  7. Scholz, S.B.: Single Assignment C - Efficient Support for High-Level Array Operations in a Functional Setting. Journal of Functional Programming 13(6), 1005–1053 (2003)

    Article  MATH  Google Scholar 

  8. Jesshope, C.: μTC - an intermediate language for programming chip multiprocessors. In: Proceedings Asia-Pacific Computer Systems Architecture 2006, ACSAC 2006 (2006) (to be published)

    Google Scholar 

  9. AETHER: Self-adaptive computing, http://www.aether-ist.org/

  10. ACE: CoSy Compiler Development System, http://www.ace.nl/compiler/cosy.html

  11. Aho, A.V., Sethi, R., Ullman, J.D.: Compilers: Principles, Techniques, and Tools, pp. 514–519. Addison-Wesley, Reading (1986)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Stamatis Vassiliadis Mladen Bereković Timo D. Hämäläinen

Rights and permissions

Reprints and permissions

Copyright information

© 2007 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bernard, T.A.M., Jesshope, C.R., Knijnenburg, P.M.W. (2007). Strategies for Compiling μTC to Novel Chip Multiprocessors. In: Vassiliadis, S., Bereković, M., Hämäläinen, T.D. (eds) Embedded Computer Systems: Architectures, Modeling, and Simulation. SAMOS 2007. Lecture Notes in Computer Science, vol 4599. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-73625-7_15

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-73625-7_15

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-73622-6

  • Online ISBN: 978-3-540-73625-7

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics