\input /home/sushi/kea/vax/macros.tex
\input /home/sushi/kea/bjfonts.tex
\baselineskip=14pt
\vsize=9.25truein
\hsize=6.5truein
\hoffset=-.2truecm
\tolerance=10000
\def\starline{\hbox to \hsize{* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *}}
\centerline{\twelvepoint\bf California Institute of Technology}
\smallskip
\centerline{\twelvepoint\bf C$^3$P Reports}
\smallskip
\centerline{\twelvepoint\bf January 1 -- December 31, 1991}
\bigskip
\bigskip
\vbox{\par\noindent{\twelvepoint\bf A Concurrent Implementation of the Prime 
Factor Algorithm on a Hypercube}
\par\noindent
{\bf G. Aloisio, G. C. Fox, J. S. Kim, and N. Veneziani}
\par\noindent
C$^3$P-468b \ \ \ \ \ \ \ (Short Code: Aloisio:91a)
\par
The Prime Factor Algorithm (PFA) is an efficient Discrete Fourier
Transform (DFT) computation algorithm, where a one-dimensional DFT is
turned into a multi-dimensional DFT, consisting of a few short DFTs
whose lengths are mutually prime and then an efficient algorithm is
exploited for the short DFTs.  The data sequences in the Cooley-Tukey
algorithm are in order, easily manageable and well-suited for vector
processor and any parallel machines.  On the contrary, the PFA works on
DFTs of different lengths and heavily shuffles the updated data for
computing of subsequent order DFTs.  That poses a challenging problem
for a distributed memory machine.}
\par
We have implemented the PFA on hypercube using CrOS~III communication
routines, taking 120ms to compute the DFT of 5040 complex points using
32 nodes of Caltech-JPL Mark~III Hypercube.  It took 105ms to do a DFT
of 4096 complex points using the Cooley-Tukey algorithm with the same
hardware configuration.  We analyze the performance of hypercubes
Mark~III, NCUBE, and iPSC and the relative importance of communication
and calculation.
\par
With the current communication speed the Cooley-Tukey algorithm performs
fast on a massively concurrent processor and the PFA is advantageous
when the number of processors are less than 64 or so.  Our experience in
PFA also serves as a useful guide to a multi-dimensional FFT
implementation using any algorithm.

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Two Approaches for a Concurrent
Implementation of the Prime Factor Algorithm on a Hypercube}
\par\noindent
{\bf G. Aloisio, E. Lopinto, N. Veneziani, G. C. Fox, and J. S. Kim}
\par\noindent
C$^3$P-874\ \ \ \ \ \ \ (Short Code:  Aloisio:91b)
\par
On sequential computers, the prime factor algorithm (PFA) allows
the computation of the discrete Fourier transform (DFT) with a higher
efficiency than the traditional Cooley-Tukey FFT algorithm (CTA).
However, the PFA requires substantial data movement, which poses a
challenging problem for distributed-memory multiprocessor systems.  In
this paper, two approaches for a concurrent implementation of the PFA on
these structures are presented.  In the first approach, the concurrent
PFA runs on all nodes of the multiprocessor system, which is inefficient
on large configurations due to large communication overhead.  A second
approach developed to reduce this bottleneck is also presented.  These
solutions have been benchmarked on Caltech hypercubes and the performances
achieved are reported.  In both the approaches, the {\it crystal\_router\/}
algorithm was exploited as a concurrent technique for communicating data
among nodes.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Investigation of the Two-dimensional
O(3) Model using the Overrelaxation Algorithm}
\par\noindent
{\bf John Apostolakis, Clive F. Baillie, and Geoffrey C. Fox}
\par\noindent
C$^3$P-943b\ \ \ \ \ \ \ (Short Code:  Apostolakis:91a)
\par
We investigate the two-dimensional O(3) model with the standard action
by Monte Carlo simulation at couplings $\beta$ up to 2.05.  We measure
the energy density, mass gap, and susceptibility of the model, and
gather high statistics on lattices of size $L\le 1024$ using the
floating point systems T-series vector hypercube.  Asymptotic scaling
does not appear to set in for this action, even at $\beta =20.5$, where
the correlation length is 304.  We observe a 20\% difference between our
estimate $m/\Lambda_{\bar{MS}} = 3.52(6)$ at this $\beta$ and the recent
exact analytical result.  We use the overrelaxation algorithm
interleaved with Metropolis updates and show that the decorrelation
time scales with the correlation length and the number of overrelaxation
steps per sweep.  We determine its effective dynamical critical exponent
to be $z' = 1.079(10)$; thus critical slowing down is reduced
significantly for this local algorithm that is vectorizable and
parallelizable.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Cluster Identification Algorithms
--- Sequential and Parallel}
\par\noindent
{\bf Clive F. Baillie and Paul D. Coddington}
\par\noindent
C$^3$P-855\ \ \ \ \ \ \ (Short Code:  Baillie:91a)
\par
Monte Carlo cluster update algorithms are extremely efficient for
simulating spin models near their phase transitions, where local update
algorithms suffer severe critical slowing down.  Unfortunately, as the
cluster algorithms are highly irregular as well as non-local, they are
much more difficult to parallelize efficiently.  The main difficulty
lies in identifying which spins belong to which cluster.  In this paper
we investigate a number of cluster identification algorithms, both
sequential and parallel, which we have implemented on serial, SIMD and
MIMD computers.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf The 2D Heisenberg Antiferromagnet in
High-$T_c$ Superconductivity}
\par\noindent
{\bf T. Barnes}
\par\noindent
C$^3$P-873b\ \ \ \ \ \ \ (Short Code:  Barnes:91a)
\par
In this article we review numerical studies of the quantum Heisenberg
antiferromagnet on a square lattice, which is a model of the magnetic
properties of the undoped ``precursor insulators'' of the high
temperature superconductors.  We begin with a brief pedagogical
introduction and then discuss zero and nonzero temperature properties
and compare the numerical results to analytical calculations and to
experiment where appropriate.  We also review the various algorithms
used to obtain these results, and discuss algorithm developments and
improvements in computer technology which would be most useful for
future numerical work in this area.  Finally we list several outstanding
problems which may merit further investigation.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Real-Time Multiscale Vision on
Multicomputers}
\par\noindent
{\bf Roberto Battiti}
\par\noindent
C$^3$P-932b\ \ \ \ \ \ \ (Short Code:  Battiti:91a)
\par
This paper investigates the use of large grain size multicomputers for
solving low- and intermediate-level computer vision problems.  The
realization of a general multiresolution framework requiring a
two-dimensional grid of communicating processors is analyzed, and the
resulting speedup and total solution time as a function of software and
hardware parameters is presented.  The scheme is then specialized for
two significant problems: surface reconstruction and optical flow.
While the first can be solved with the standard full multigrid approach,
the second requires an adaptive grid determined by a local decision: the
appropriate resolution for different parts of the image is tuned in
order to minimize the error in the coefficients of the differential
equations.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Improved Determination of the
Heavy-Quark Potential in Lattice QCD}
\par\noindent
{\bf Hong-Qiang Ding}
\par\noindent
C$^3$P-970\ \ \ \ \ \ \ (Short Code:  Ding:91a)
\par
A new iterative procedure in fitting data is proposed which can properly
correct small nonlinear effects.  Applying this procedure to fit the
Polyakov loop correlation functions previously obtained in lattice QCD
simulations, we are able to eliminate the finite-size boundary effects
and obtain the quark potential functions themselves, instead of just
parameters for the potentials.  The quality of the fits is improved
significantly.  The potential functions obtained at $\beta =6.0$--6.2
scale in fine detail, providing important further support of the
scaling.  The improved estimates of the string tension satisfy the
asymptotic scaling within 97\%.  In comparison with experiments, the
obtained value $\sqrt{\sigma}/\Lambda_L = 79\pm 3$ indicates
$\Lambda_{\rm MS} = 449\pm 17\,{\rm MeV}$, where MS denotes the minimal
subtraction scheme.  The coupling constant $\alpha = 0.43\pm 0.03$
agrees very well with experiments, and is also in excellent agreement
with the theoretical value $\pi /8=0.39$, assuming that the
long-distance behavior of QCD can be effectively described by the
Neveu-Schwarz string theory.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Heavy Quark Potential in Lattice
QCD: A Review of Recent Progress at Caltech}
\par\noindent
{\bf Hong-Qiang Ding}
\par\noindent
C$^3$P-963b\ \ \ \ \ \ \ (Short Code:  Ding:91b)
\par
Recent progress on the calculation of the $q\bar{q}$-potential is
reviewed.  Scaling is discussed from the perspective of critical
phenomenon.  Methods for fitting the correlations of Polyakov operators
and the Wilson loops are reviewed and two new methods, the iterative
method and the improved ratio method, are discussed in detail.  These
new methods are used to analyze/re-analyze the previously published data
on Polyakov loops and new data on large Wilson loops.  Convincing
numerical evidences together with several analytical arguments strongly
support the conclusion that the asymptotic scaling sets in at $\beta\sim
6$ with $\sqrt{\sigma}/\Lambda_L = 79\pm 3$ and $\alpha = 0.43\pm 0.03$.
These results agree well with the potential model analysis of
experimental data on $c\bar{c}$ and $b\bar{b}$ systems, and favors the
Neveu-Schwarz strings as the underlying string theory.  Finally, key
issues on the use of the parallel computers are explored, with the
conclusion that parallel computers are highly suitable for these
floating-point intensive computations.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Computing Quark Potential on a
Parallel Supercomputer}
\par\noindent
{\bf Hong-Qiang Ding}
\par\noindent
C$^3$P-949\ \ \ \ \ \ \ (Short Code:  Ding:91c)
\par
Computing the quark potential in lattice QCD on a state-of-the-art
parallel computer --- the 128 node Caltech/JPL Mark~IIIfp Hypercube ---
achieves a sustained speed of 600 megaflops, and leads to excellent
physics results.  We describe various aspects of the computation with
particular emphasis on the practical experiences on the parallel
implementation and performance analysis of the Mark~IIIfp Hypercube.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Simulating Lattice QCD on a
Caltech/JPL Hypercube}
\par\noindent
{\bf Hong-Qiang Ding}
\par\noindent
C$^3$P-951\ \ \ \ \ \ \ (Short Code:  Ding:91d)
\par
Simulation of lattice quantum chromodynamics (QCD) on the 128-node
Caltech/JPL Mark~IIIfp Hypercube achieves a sustained speed of 600
MFLOPS.  The simulations have produced excellent physics results on the
forces between quarks.  A speedup of 100 on the 128-node machine is
obtained.  We stress the importance of keeping up the communication
speed as the processor speed increases and have devised a vectorized
scheme to reduce the communication latency, leading to a 71\% reduction
in communication time.  Practical experiences with the parallel
implementation are discussed and a general performance analysis is
reported.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Parallel Computing and Education}
\par\noindent
{\bf Geoffrey C. Fox}
\par\noindent
C$^3$P-958\ \ \ \ \ \ \ (Short Code:  Fox:91a)
\par
In this issue we have learned that parallel architectures will lead to 
computers of dramatically greater performance and capability.  How 
and why will this affect education?  Will the impact be incremental, 
as happens when one discovers a new elementary particle, and this 
appears as an extra chapter in a multivolume book on introductory 
physics?  Or will the impact be dramatic, as in biology where areas 
such as genetic and molecular biology have revolutionized the core 
knowledge taught in the field?  I believe the latter is a better 
analogy, and that as educators adopt the use of parallel computers, 
these machines will lead to major changes, both in the way we teach, 
and in what we teach.  Many agree with this assertion, and a few 
have started to implement its consequences.}
\par
Educators can address many educational challenges with parallel 
computers, and through realistic simulations, help scientists explain 
their predictions and discoveries.  For example, I was impressed by a 
set of talks about global climate change at a recent conference.  Each 
participant agreed that major, and probably undesirable changes in 
the environment were inevitable, unless strong action is taken soon.  
They may or may not have agreed that parallel computers will 
accurately predict the temperature rises coming from global 
warming.  However, no one could see how to explain to the public, 
and in particular, to politicians, the urgency of the situation. The key, 
I believe, lies in widespread implementation of parallel computers in 
science and education.

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Approaches to Physical Optimization}
\par\noindent
{\bf Geoffrey C. Fox}
\par\noindent
C$^3$P-959\ \ \ \ \ \ \ (Short Code:  Fox:91b)
\par
Physical Optimization is the use of analogies from nature to solve
optimization problems.  This approach leads to approximate solutions
with time complexities that are much lower than traditional exact
methods.  The algorithms parallelize straightforwardly and promise
the solution of many practical problems on the large scale parallel
computers that are expected in the future.  We describe and contrast four
related physical optimization methods;\ the well-known simulated
annealing and neural network approaches, as well as the important but
less well understood deterministic annealing and elastic networks
methods.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Parallel Problem Architectures and
their Implications for Portable Parallel Software Systems}
\par\noindent
{\bf Geoffrey C. Fox}
\par\noindent
C$^3$P-967\ \ \ \ \ \ \ (Short Code:  Fox:91c)
\par
We show how the structure or architecture of applications suggest the
nature of parallel software systems that will run portably on a variety
of parallel machines --- both those available now and those expected
during the coming decade.  The discussion is illustrated by lessons
learned from real applications implemented on current MIMD and SIMD
machines.  These are mainly academic problems and the extrapolation to
complex industrial and government applications is unproven but we
believe our methodology will still be applicable.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Numerical Studies of Electron
Dynamics in Oblique Quasi-Perpendicular Collisionless Shock Waves}
\par\noindent
{\bf P. C. Liewer, V. K. Decyk, J. M. Dawson, and B. Lemb\`{e}ge}
\par\noindent
C$^3$P-964\ \ \ \ \ \ \ (Short Code:  Liewer:91a)
\par
Linear and nonlinear electron damping of the whistler precursor wave
train to low Mach number quasi-perpendicular oblique shocks is studied
using a one-dimensional electromagnetic plasma simulation code with
particle electrons and ions.  In some parameter regimes, electrons are
observed to trap along the magnetic field lines in the potential of the
whistler precursor wavetrain.  This trapping can lead to significant
electron heating in front of the shock for low $\beta_e (\sim 10\%$ or
less).  Use of the 64-processor Caltech/JPL Mark~IIIfp hypercube
concurrent computer has enabled us to make long runs using realistic
mass ratios $(m_i/m_e = 1600)$ in the full particle PIC code and thus
simulate shock parameter regimes and phenomena not previously studied
numerically.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Two-dimensional Spin-1/2 Heisenberg
Antiferromagnet: A Quantum Monte Carlo Study}
\par\noindent
C$^3$P-897b\ \ \ \ \ \ \ (Short Code:  Makivic:91a)
\par
Spin-$1\over 2$ nearest neighbor Heisenberg antiferromagnet on a square
lattice is studied via a large scale Quantum Monte Carlo simulation.  We
developed a fast and efficient multi-spin coding algorithm on a parallel
supercomputer, based on Suzuki-Trotter transformation.  We performed
high statistics simulations on lattices as large as $128\times 128$
spins, in the temperature range of $0.25J$ to $2.5J$.  We calculated energy,
specific heat, uniform and staggered susceptibility, and staggered
correlation function, from which we deduce the correlation length.  For
temperatures higher than $J$, the results are in excellent agreement
with high-temperature series expansion.  At low temperatures, the long
wavelength behavior is essentially classical.  Our data show that the
correlation length and staggered susceptibility are quantitatively well
described by the renormalized classical picture at 2-loop level of
approximation.  From the divergence of correlation length, we deduce the
value of quantum renormalized spin stiffness, $\rho_s/J = 0.199(2)$.  We
give evidence that the correlation function is of Ornstein-Zernicke
type.  By comparing the largest measured correlation lengths with
neutron scattering experiments on $\rm La_2\,Cu\,O_4$, we deduce the
value of effective exchange coupling $J = 1450\pm 30\,\rm K$.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Large-Step Markov Chains for the
Traveling Salesman Problem}
\par\noindent
{\bf Olivier Martin, Steven W. Otto, and Edward Felten}
\par\noindent
C$^3$P-836b\ \ \ \ \ \ \ (Short Code:  Martin:91a)
\par
We introduce a new class of Markov chain Monte Carlo search procedures,
leading to more powerful optimization methods than simulated annealing.  
The main idea is to embed deterministic local search techniques into 
stochastic algorithms.  The Monte Carlo explores only local optima, and it 
is able to make large, global changes, even at low temperatures, thus 
overcoming large barriers in configuration space.  We test these procedures 
in the case of the Traveling Salesman Problem.  The embedded local searches 
we use are 3-opt and Lin-Kernighan.  The large change or step consists of a 
special kind of 4-change followed by local-opt minimization.  We test this 
algorithm on a number of instances.  The power of the method is illustrated 
by solving to optimality some large problems such as the LIN318, the 
AT\&T532, and the RAT783 problems.  For even large instances with randomly 
distributed cities, the Markov chain procedure improves 3-opt by over
1.6\%, and Lin-Kernighan by 1.3\% leading to a new best heuristic.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf A VLSI Neural Network for Color
Constancy}
\par\noindent
{\bf Andrew Moore, Geoffrey Fox, John Allman, and Rodney Goodman}
\par\noindent
C$^3$P-956\ \ \ \ \ \ \ (Short Code:  Moore:91a)
\par
A system for color correction has been designed, built, and tested
successfully; the essential components are three custom chips built
using sub-threshold analog CMOS VLSI.  The system, based on Land's
Retinex theory of color constancy, produces colors similar in many
respects to those produced by the visual system.  Resistive grids
implemented in analog VLSI perform the smoothing operation central to
the algorithm at video rates.  With the electronic system, the
strengths and weaknesses of the algorithm are explored.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Constrained Nets for Graph Matching
and Other Quadratic Assignment Problems}
\par\noindent
C$^3$P-973\ \ \ \ \ \ \ (Short Code:  Simic:91a)
\par
Some time ago Durbin and Willshaw proposed an interesting parallel
algorithm (the ``elastic net'') for approximately solving some geometric
optimization problems, such as the Traveling Salesman Problem.  Recently
it has been shown that their algorithm is related to neural networks of
Hopfield and Tank, and that they both can be understood as the
semiclassical approximation to statistical mechanics of related physical
models.  The main point of the elastic net algorithm is seen to be in
the way one deals with the constraints when evaluating the effective
cost function (free energy in the thermodynamic analogy), and not in its
geometric foundation emphasized originally by Durbin and Willshaw.  As a
consequence, the elastic net algorithm is a special case of the more
general physically based computations and can be generalized to a large
class of nongeometric problems.  In this paper we further elaborate on
this observation, and generalize the elastic net to the quadratic
assignment problem.  We work out in detail its special case, the graph
matching problem, because it is an important problem with many
applications in computational vision and neural modeling.  Simulation
results on random graphs, and on structured (hand-designed) graphs of
moderate size (20--100 nodes) are discussed.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf The Shape of the Invisible Halo:
N-Body Simulations on Parallel Supercomputers}
\par\noindent
{\bf M. S. Warren, W. H. Zurek, P. J. Quinn, and J. K. Salmon}
\par\noindent
C$^3$P-961\ \ \ \ \ \ \ (Short Code:  Warren:91a)
\par
We study the shapes of halos and the relationship to their angular
momentum content by means of N-body $(N\sim 10^6)$ simulations.  Results
indicate that in relaxed halos with no apparent substructure:
\item{i.)}The shape and orientation of the isodensity contours tends to
persist throughout the virialized portions of the halo.
\item{ii.)}Most $(\approx 70\%)$ of the halos are prolate.
\item{iii.)}The approximate direction of the angular momentum vector
tends to persist throughout the halo.
\item{iv.)}For spherical shells centered on the core of the halo, the
magnitude of the specific angular momentum is approximately proportional
to their radius.
\item{v.)}The shortest axis of the ellipsoid which approximates the
shape of the halo tends to align with the rotation axis of the halo.
This tendency is strongest in the fastest rotating halos.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Performance of Dynamic Load
Balancing Algorithms for Unstructured Mesh Calculations}
\par\noindent
{\bf Roy D. Williams}
\par\noindent
C$^3$P-913b\ \ \ \ \ \ \ (Short Code:  Williams:91a)
\par
If a finite element mesh has a sufficiently regular structure, it is
easy to decide in advance how to distribute the mesh among the
processors of a distributed-memory parallel processor, but if the mesh
is unstructured, the problem becomes much more difficult.  The
distribution should be made so that each processor has approximately
equal work to do, and such that communication overhead is minimized.}
\par
If the mesh is solution-adaptive, i.e., the mesh and hence the load
balancing problem change discretely during execution of the code, then
it is most efficient to decide the optimal mesh distribution in
parallel.  In this paper three parallel algorithms, Orthogonal Recursive
Bisection (ORB), Eigenvector Recursive Bisection (ERB) and a simple
parallelization of Simulated Annealing (SA) have been implemented for
load balancing a dynamic unstructured triangular mesh on 16 processors
of an NCUBE machine.
\par
The test problem is a solution-adaptive Laplace solver, with an initial
mesh of 280 elements, refined in seven stages to 5772 elements.  We
present execution times for the solver resulting from the mesh
distributions using the three algorithms, as well as results on
imbalance, communication traffic and element migration.
\par
The load balancing itself is fastest with ORB, but a very long run of SA
produces a saving of 21\% in the execution time of the Laplace solver.
ERB is only a little slower than ORB, yet produces a mesh distribution
whose execution time is 15\% faster than ORB.

\bigskip\starline\bigskip
\vbox{\par\noindent{\twelvepoint\bf Studies of Electron Collisions with
Polyatomic Molecules using Distributed-Memory Parallel Computers}
\par\noindent
{\bf C. Winstead, P. G. Hipes, M. A. P. Lima and V. McKoy}
\par\noindent
C$^3$P-965\ \ \ \ \ \ \ (Short Code:  Winstead:91a)
\par
We report elastic electron scattering cross sections from five to 30~eV
for the molecules $\rm C_2H_4$, $\rm C_2H_6$, $\rm C_3H_8$, $\rm
Si_2H_6$, and $\rm GeH_4$, obtained using an implementation of the
Schwinger multichannel method for distributed-memory parallel computer
architectures.  Our results, obtained within the static-exchange
approximation, are in generally good agreement with the available
experimental data.  These calculations demonstrate the potential of
highly parallel computation in the study of elastic and inelastic
collisions between low-energy electrons and polyatomic gases, for which
both experimental and theoretical data are at present scarce.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\bf Compiling Fortran90 Programs for Distributed
Memory MIMD Parallel Computers}
\par\noindent
{\it Min-You Wu and Geoffrey C. Fox}
\par\noindent
C$^3$P-948b\ \ \ \ \ \ \ (Short Code:  Wu:91a)
\par
This paper describes the design and motivation for a Fortran90 compiler,
a source-to-source parallelizing compiler, for distributed memory
systems.  We discuss the methodology of parallelizing Forran programs
and the principle of compiler design.  Then we describe compiler
directives, data partitioning and sequentialization, communication
insertion, and implementation of intrinsic functions.  Some basic
optimization techniques are also presented.  We use an introductory
example of Gaussian elimination to explain the compiling techniques.
Other sample programs in our test suite, such as FFT and the N-body
problem are briefly discussed with their performance.}

\bigskip\starline\bigskip
\vbox{\par\noindent{\bf Fortran90D Compiler for Distributed Memory MIMD
Parallel Computers}
\par\noindent
{\it Min-You Wu and Geoffrey C. Fox}
\par\noindent
C$^3$P-948c\ \ \ \ \ \ \ (Short Code:  Wu:91b)
\par
This paper describes the design and motivation for a Fortran90D compiler, 
a source-to-source parallel compiler for distributed memory systems.  We
discuss the methodology of parallelizing Fortran programs and the
principle of compiler design.  Different from Fortran77 parallelizing
compilers, a Fortran90D compiler does not {\it parallelize\/} sequential
constructs.  Only parallelism expressed by Fortran90D parallel
constructs is exploited.  This makes a Fortran90D compiler much easier
to implement.  We describe compiler directives, partitioning,
sequentialization, communication generation, and optimization
techniques.  We use an introductory example of Guassian elimination,
among other programs in our test suite, to explain the compilation
techniques.}
