Location of Repository

Using Ownership to Reason About Inherent Parallelism in Object-Oriented Programs

By Andrew J. Craik and Wayne A. Kelly

Abstract

With the emergence of multi-cores into the mainstream, there is a growing need for systems to allow programmers and automated systems to reason about data dependencies and inherent parallelismin imperative object-oriented languages. In this paper we exploit the structure of object-oriented programs to abstract computational side-effects. We capture and validate these effects using a static type system. We use these as the basis of sufficient conditions for several different data and task parallelism patterns. We compliment our static type system with a lightweight runtime system to allow for parallelization in the presence of complex data flows. We have a functioning compiler and worked examples to demonstrate the practicality of our solution

Topics: 080299 Computation Theory and Mathematics not elsewhere classified, 080308 Programming Languages, 080304 Concurrent Programming, Parallelization, Inherent Parallelism, Ownership Types, Sufficient Conditions
Publisher: Springer-Verlag Berlin Heidelberg
Year: 2010
DOI identifier: 10.1007/978-3-642-11970-5_9
OAI identifier: oai:eprints.qut.edu.au:31633

Suggested articles

Preview


To submit an update or takedown request for this paper, please submit an Update/Correction/Removal Request.