Logotype Mälardalen University

MRTC research projects



Parallel Execution of PLEX programs

Leader: Björn Lisper
Members: Björn Lisper, Jan Gustafsson
Former: Johan Lindhult
Research group:Programming Languages
Keywords: PLEX, parallelization, parallel computing, telecommunication, program transformation, semantics
Status: finished , start date: 2004-04-01
Partners: Ericsson
Funding: Ericsson
Web: Official university web page (in Swedish)

 

Overview

In any system with shared data and concurrent activities, there is a need to guarantee exclusive access to the shared data. If parallel processing, and synchronization, wasn’t an issue at the time of designing the system, non-preemptive execution on a single-processor architecture, automatically guarantees exclusive access to the shared data. While legacy software systems, developed and maintained over many years, contains large amounts of sequential software (executed on single-processor architectures), there is a development towards different forms of parallel hardware. The problem arises when the singleprocessor architecture is to be replaced by a multi-processor ditto; the independent parts, may now access and update the same data concurrently. A naive solution would be to re-implement the system, but since a legacy software system may contain several million lines of code, this solution is infeasible. A more reasonable solution would be criteria that ensures correct parallel execution. To ensure the correctness of such criteria, the formal semantics of the language in question need to be considered.
 

Latest project publications [ Show all publications ]


Operational Semantics for PLEX: A Basis for Safe Parallelization, Johan Lindhult (former), Licentiate Thesis, Mälardalen University Press, May, 2008

An Operational Semantics for the Execution of PLEX in a Shared Memory Architecture, Johan Lindhult (former), MRTC report ISSN 1404-3041 ISRN MDH-MRTC-227/2008-1-SE, Mälardalen Real-Time Research Centre, Mälardalen University, April, 2008

Sequential PLEX, and its Potential for Parallel Execution, Johan Lindhult (former), Björn Lisper, 13th International Workshop on Compilers for Parallel Computers, CPC 2007, Lisbon, Portugal, July, 2007

 

Results achieved

So far, the project has specified the formal semantics for PLEX; both for the current sequential implementation, as well as for a restricted parallel implementation that executes on a shared-memory architecture. We have also performed a manual inspection of some existing PLEX code in order to investigate the actual frequency of some possible problems that may occur when the software is executed in parallel.
 

Future work

  • A licentiate thesis based on the results achieved so far is planned for the spring of 2006.
  • Design and implementation of a program analysis that safely decides when a program must yield the same result regardles of the implementation (sequential or parallel).
  • The project is expected to run until the autumn of 2008, resulting in a PhD degree.

  • Mälardalen University |
  • Box 883 |
  • 721 23 Västerås/Eskilstuna |
  • 021-101300, 016-153600 |
  • webmaster |
  • Latest update: 2010.02.23