Use this URL to cite or link to this record in EThOS: http://ethos.bl.uk/OrderDetails.do?uin=uk.bl.ethos.527585
Title: A process oriented approach to solving problems of parallel decomposition and distribution
Author: Dimmich, Damian J.
Awarding Body: University of Kent
Current Institution: University of Kent
Date of Award: 2009
Availability of Full Text:
Access from EThOS:
Full text unavailable from EThOS. Please try the link below.
Access from Institution:
Abstract:
This thesis argues that there is a modern, broad and growing need for programming languages and tools supporting highly concurrent complex systems. It claims traditional approaches based on threads and locks, are non-compositional and do not scale. Instead, it focuses on occam-pi, a derivative from classical Transputer occam whose process oriented concurrency model is based on a combination of the formal algebras of Hoare's Communicating Sequential Processes and Milner's pi-calculus. The advent of hybrid processors such as STI's Cell Broadband Engine, which consists of a PowerPC core and eight vector co-processors on a single die, NVidia's graphics-processor based CUDA architecture and Intel's upcoming Larabee require new programming paradigms in order to be used effectively. occam-pi's compositional concurrency model simplifies the management of complexity of concurrent programs and is capable of filling the technological gap that the new processors are creating in terms of the lack of expressiveness of concurrency in current programming languages. occam-pi's formalised basis allows reasoning about programs using formal methods techniques and avoids common concurrency errors though compile-time verification. The Transterpreter, a new portable runtime for occam-pi reduced the cost of porting occam-pi to new platforms to a minimum. Further extensions to the Transterpreter enable hardware-specific enhancements to the support library, making it possible to implement and evaluate occam-pi on new platforms in a relatively short time. The work reported in this thesis makes use of this ability and presents implementations of the Transterpreter on new and interesting processors, evaluating the use of process oriented concurrency as a programming model on such processors. Additional infrastructure that is required to make occam-pi useful on such architectures is presented, such as interfacing with legacy languages, thereby providing support for existing libraries and device drivers. Furthermore techniques for making use of vector processing capabilities that are offered by these new architectures are described. This thesis claims that the work presented makes a useful contribution to simplifying the design and construction of complex systems through the use of concurrency. By enabling both the language and the runtime to support new architectures through libraries, device drivers and direct access to hardware, it enables that contribution for learners and advanced engineers working with novel hardware.
Supervisor: Not available Sponsor: Not available
Qualification Name: Thesis (Ph.D.) Qualification Level: Doctoral
EThOS ID: uk.bl.ethos.527585  DOI: Not available
Keywords: QA 76 Software, computer programming,
Share: