Subproject RISE-PARACOMP 2002-2005
Composition of parallel software
Subproject members
Christoph Kessler, subproject leader
Mikhail Chalabine, PhD student
This project is continued in
the second funding period 2006-2007
as a main activity in the work package
RISE-ARECOMP.
Subproject description
Writing programs for parallel computers is a complex and error-prone task.
Often it is not sufficient to simply parallelize some loops in an already
existing sequential program. On the other hand, most explicitly parallel
algorithms developed
so far are based on only a few basic parallel algorithmic techniques
such as data parallelism, task farming,
parallel divide-and-conquer, pipelining etc., and some formalizations
of these in the form of
algorithmic skeletons are currently
being developed in several
projects world-wide. However, skeletons are
usually implemented just as generic parallel subroutines,
i.e., black-box components that can be parameterized in user code.
Beyond the algorithmic and the parallelization aspects,
further aspects such as data locality
must be taken into account to write efficient parallel code.
In this project, we investigate how the invasive software composition approach
developed in
the RISE project
can be applied to the composition of parallel programs
from separate specifications of (sequential) user code, parallel algorithmic
paradigms, and data distributions, in an elegant and efficient way, and
thereby develop an alternative to skeleton programming.
Subproject plan
- Phase 1: Case studies in parallel programming [C21];
studies of foundations of parallel algorithms and skeleton programming.
- Phase 2: Design of a system for parallel software composition.
Limitation to a few parallel algorithmic paradigms (such as data parallelism
and parallel divide-and-conquer) and a few array distribution strategies.
- Phase 3: Prototype implementation.
Publications
- Optimising Intensive Interprocess Communication in a
Parallelised Telecommunication Traffic Simulator
M. Chalabine, C.W. Kessler, S. Wiklund
Proc. HPC-2003 High-Performance Computing (track of the Advanced Simulation
Technology Conference), Orlando, Florida, USA, April 2003.
-
Parallelisation of Sequential Programs by Invasive Composition and Aspect Weaving
Mikhail Chalabine and Christoph Kessler
Proc. APPT'05 Sixth International Workshop on
Advanced Parallel Processing Technologies (APPT 2005),
Hong Kong, China, 27-28 Oct. 2005.
Springer LNCS 3756, pp. 131-140, 2005.
-
Crosscutting Concerns in Parallelization by Invasive Software Composition and Aspect Weaving
Mikhail Chalabine and Christoph Kessler
Proc. Hawaii Int. Conference on System Sciences (HICSS-39), Kauai, Hawaii, USA, Jan. 2006.
-
Load Balancing of Irregular Parallel Divide-and-Conquer Algorithms
in Group-SPMD Programming Environments
Mattias Eriksson, Christoph Kessler, and Mikhail Chalabine
Proc. 8th Workshop on Parallel Systems and Algorithms (PASA 2006),
Frankfurt am Main, Germany, March 2006.
GI Lecture Notes in Informatics (LNI), vol. P-81, pp. 313-322, 2006.
-
Automatic Round-trip Software Engineering in Aspect Weaving Systems.
Mikhail Chalabine, Christoph Kessler, Peter Bunus.
Proc. 21st IEEE/ACM International Conference on Automated Software Engineering
(ASE2006), Tokyo, Japan, Sept. 2006, pp. 305-308.
For publications based on research in the second funding period,
see the page for the RISE-ARECOMP
workpackage 2006-2007.
Acknowledgment
This subproject is part of the RISE project at PELAB, IDA, Linköpings universitet,
and supported by
SSF.
Christoph Kessler (chrke \at ida.liu.se)