AdaStreams: a type-based programming extension for stream-parallelism with ada 2005

  • Authors:
  • Gingun Hong;Kirak Hong;Bernd Burgstaller;Johann Blieberger

  • Affiliations:
  • Yonsei University, Korea;Yonsei University, Korea;Yonsei University, Korea;Vienna University of Technology, Austria

  • Venue:
  • Ada-Europe'10 Proceedings of the 15th Ada-Europe international conference on Reliable Software Technologies
  • Year:
  • 2010

Quantified Score

Hi-index 0.00

Visualization

Abstract

Because multicore CPUs have become the standard with all major hardware manufacturers, it becomes increasingly important for programming languages to provide programming abstractions that can be mapped effectively onto parallel architectures. Stream processing is a programming paradigm where computations are expressed as independent actors that communicate via data streams. The coarse-grained parallelism exposed in stream programs facilitates such an efficient mapping of actors onto the underlying hardware. In this paper we propose a type-based stream programming extension to Ada 2005. AdaStreams is a type-hierarchy for actor-specification together with a run-time system that supports the execution of stream programs on multicore architectures. AdaStreams is non-intrusive in the sense that no change of an Ada 2005 programming language implementation is required. Legacy-code can be mixed with a stream-parallel application, and the use of sequential legacy code with actors is supported. Unlike previous approaches, AdaStreams allows creation and subsequent execution of stream programs at run-time. We have implemented AdaStreams for Intel multicore architectures. We provide initial experimental results that show the effectiveness of our approach on an Intel X86-64 quadcore processor. The initial release of our work is available for download at [1].