\documentclass[10pt]{article}
\pagestyle{empty}
\usepackage{a4wide}
\long\def\hk#1{% draft comment
\strut\nobreak
\marginpar[\hfil\textbf{HK}$\Longrightarrow$]{$\Longleftarrow$\textbf{HK}}%
\nobreak{\bfseries HK:[#1]}}
\long\def\sg#1{% draft comment
\strut\nobreak
\marginpar[\hfil\textbf{SG}$\Longrightarrow$]{$\Longleftarrow$\textbf{SG}}%
\nobreak{\bfseries SG:[#1]}}
\begin{document}
\thispagestyle{empty}
\section*{Workpackage 7: Benchmarks}
%
\subsection*{Objectives}
We will show the applicability of the skeleton library to a range of
practical application problems. We will consider data-parallel problems
as well as problems that require task parallelism. The goal is to demonstrate
that these problems can be handled more easily and more quickly with
our skeletons than with hand-crafted MPI.
This should be particularly
easy for problems requiring task parallelism and the interaction of
task and data parallelism because the system will automatically
take care of
the technical details of mapping MPMD-style computations to
SPMD-style MPI.
% their non-SPMD flavor causes a lot of
%difficulties when implementing them using SPMD-style MPI.
%\sg{I'm not sure we should bring this a an argument.
%In fact, it's not a big problem to write
%and run MPMD programs in MPI. Moreover, we are going to build skeletons on
%top of MPI}
Moreover, the efficiency of the
code produced using skeletons should be similar
to that of hand-crafted MPI code.
The latter will be demonstrated by experimental
results across a range of parallel architectures.
%
\subsection*{Description of Work}
First of all, a representative set of application problems
must be selected.
As far as possible, they will be taken from
benchmark suites that are widely accepted in the
high-performance community, like NAS, SPLASH, and PARKBENCH.
The main novelty of our benchmarks will be
that they are not restricted
to raw performance but also take into account
the ease of programming.
% The set of applications and corresponding algorithms for
% testing the data parallel skeletons
% could include e.g.
% matrix multiplication (algorithm of Gentleman),
% the numerical solution of partial differential
% equations (Gau\ss-Seidel algorithm), fast Fourier transform, sorting of an array
% (e.g. by samplesort). The set of applications demonstrating the
% use of task parallel skeletons and their interaction with
% task parallel applications could include e.g. some problems from algorithmic
% geometry which are suited for a solution using a divide and conquer
% approach, like e.g. the line segment intersection problem. Moreover,
% it could include the traveling salesperson problem (algorithm by Little et al.).
Once the application problems have been selected,
the problems and
corresponding algorithms must
be described in a report. Then these problems
have to be solved using skeletons as well as using MPI directly.
For most of these problems,
MPI-based implementations are already available.
Both approaches will be compared with others wrt.
the time needed for the implementation
and run-time across different hardware platforms.
%
\subsection*{Deliverables}
We will develop:
\begin{itemize}
\item a document describing the selected application problems, the algorithms
used to tackle them, the implementation using skeletons,
and corresponding experimental results,
\item the implementations of the applications using skeletons.
\end{itemize}
We will make both freely available via the Web.
%
\subsection*{Milestones and Expected Results}
The above-mentioned document will be produced in several steps.
The sections on
application problems and algorithms are not dependent on other milestones and
can be written within the first 6 months. The section on the implementation
can only be written once the implementation is finished,
and this in turn
requires that the prototype implementation of the skeleton library (see Workpackage 4)
is available.
We therefore expect to be able to finish the implementation
of the application problems and the
corresponding description within 18 months.
The experimental results and their
description in the report will
be ready within approximately 21 months.
\end{document}