\section{Methodology}

Our approach is to directly measure the network characteristics of
each of the programs on an Ethernet LAN.  

\subsection{Environment}

Nine DEC 3K/400 Alpha (21064 at 133 Mhz) workstations running OSF/1 2.0 
were used as our testbed.  The built-in ethernet adaptors were married to a 
multi-segment bridged Ethernet LAN, so all machines shared a common 
collision domain and an aggregate 1.25 MB/s of bandwidth.  Since these 
machines are office workstations and other machines share the LAN, all 
measurements were performed in the early morning hours (4-5 am) to avoid 
other traffic.  The exception was DSD, which was run during a 22.6  hour 
period.  Since DSD is designed to use very little resources, it is not
expected that network traffic or workstation usage should have skewed
the results much.  Also, a longer run was needed for DSD in order to 
collect enough data to be useful.

\subsection{Compilation}

Each of the six Fx programs can be compiled for an arbitrary number of
processors.  Due to the stress these programs place on machines and
networks, it was decided to compile them for four processors.  The
programs were compiled with version 2.2 of Fx and version 3.3 of the
DEC Fortran compiler. The basic level of optimization was used with
the latter compiler.  The object files were linked with version 3.3.3
of PVM and with version 2.2 of the Fx/PVM run-time system.

DSD was compiled using version 2.6.3 of g++ for Alpha OSF/1 machines.
All files were compiled with the -g flag.  The object files and libraries
were linked using version 3.11 of the DEC OSF/1 linker ld.

\subsection{Measurement}

To measure the network traffic, one of the workstations was configured
with the DEC packet filter software.  The measurement workstation was
not used to run any Fx program.  Instead, it ran TCPDUMP and collected
a trace of all the packets on the LAN generated by each test program.
For the Fx programs, including AIRSHED, each outer loop was iterated
100 times, except for SEQ, which was iterated five times.  The DSD
application was run over a period of 22.6 hours in order to to capture
its long term behavior.

Each of our traces captured all the packets on the network, providing
a time stamp, size, protocol, source and destination for each packet.
For DSD, only UDP packets were extracted from the network.  Due to the
long testing interval, a trace file including all network traffic
would have been prohibitively large.  We considered the size of the
packet to include the data portion, TCP or UDP header, IP header, and
Ethernet header and trailer.  Where sensible, we produced a trace for
a single connection by extracting all packets sent from one host to
another.
