
\documentstyle[11pt,twocolumn]{article}

\setlength{\oddsidemargin}{0in}
\setlength{\evensidemargin}{0in}
\setlength{\topmargin}{-0.3in}
\setlength{\headheight}{0in}
\setlength{\headsep}{0in}
\setlength{\textwidth}{6.5in}
\setlength{\textheight}{9.8in}
\setlength{\parindent}{0in}
\setlength{\parskip}{0.1in}
\setlength{\columnseprule}{0.4pt} 

\begin{document}

\bf
Name:

\hfill $\underline{ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \
\ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ \ }$
% \_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_\_
\rm
\bigskip

{\bf Directions:} Work on this sheet (both sides, if needed) only; {\bf
do not turn in any supplementary sheets of paper}.  In order to get full
credit, SHOW YOUR WORK.  Please KEEP YOUR EXAM SHEET COVERED at all
times.  

\normalsize\rm

{\bf 1.}  (20) Write a Linda program which performs a pipelined
Insertion Sort like the algorithm in Lester.  Use the ``Yale'' version
of Linda, i.e.  the one in our handout.  For simplicity, have each
processor (other than the manager processor that spawns the worker
processes) store one array element at a time while the sorting is in
progress, just like the algorithm in Lester.

{\bf 2.}  Lester states that the need for work pools arises in
applications in which a list of tasks is not available at the outset 
of run time.  He cites the graph minimum-distance application as an
example.

\begin{itemize}
\item [(a)]  (10) In class we discussed another type of situation in which
the use of work pools is desirable.  State the situation and explain.

\item [(b)]  (15) Does the graph minimum-distance application meet the
criterion in (a)?  Explain why or why not.
\end{itemize}

{\bf 3.}  Consider the graph minimum-distance application in Chapter 10.

\begin{itemize}
\item [(a)]  (15) In Figure 10.2, suppose there were also an arc going from E
to B.  What problem would this cause for Lester's program?  

\item [(b)]  (15) Add a {\it small amount} of code to fix the problem in
(a) (in general, not just for that particular graph).
\end{itemize}

{\bf 4.}  Consider the paper by Davies and Matloff.

\begin{itemize}
\item [(a)]  (10) What is the name for the authors' proposed method in
which software is written to perform an operation similar to one done
by Ethernet boards?

\item [(b)]  (15) Suppose the method in (a) were to be used in a 
UMA multiprocessor environment (shared-memory hardware and shared-memory
software), with the processor-memory interconnect being an $\Omega$
network.  State some specific sources of performance improvement which
might accrue from using the method in (a).
\end{itemize}

\end{document}


