GBIS Benchmark Header File: io1

   ===                                                            ===
   ===            GENESIS Distributed Memory Benchmarks           ===
   ===                                                            ===
   ===                            IO1                             ===
   ===                                                            ===
   ===              Input/Output Performance Assessment           ===
   ===                                                            ===
   ===      Versions:  Std F77, PARMACS, PVM 3.1, Subset HPF      ===
   ===                                                            ===
   ===        Original authors: M.F. Guest and A.P. Rendell       ===
   ===    PARMACS + Subset HPF: V.S. Getov                        ===
   ===                     PVM: R. Cloke                          ===
   ===                                                            ===
   ===               Inquiries: HPC Centre                        ===
   ===                          Computing Services                ===
   ===                          University of Southampton         ===
   ===                          Southampton SO17 4BJ, U.K.        ===
   ===                                                            ===
   ===   Fax: +44 703 593939   E-mail:    ===
   ===                                                            ===
   ===          Last update: July 1994; Release: 3.0              ===
   ===                                                            ===

1. Description

In this benchmark kernel the Input/Output (I/O) performance is assessed. 
Each node will write to disk (by default) 12.5 MBytes of data which is
subsequently read twice; once in a sequential fashion and once in a
random fashion.  The benchmark uses standard Fortran direct access I/O
and will perform several writes/reads using progressively smaller record
lengths.  The code will self verify.  On the Intel iPSC/860 the load
module occupies less than 1 MByte on each processor. 

To build the programs makefiles
have been provided.  These operate under GNU make.  Where appropriate,
the host program is only used to configure the system and load the node
program.  The host program will wait for a termination message to be
sent to it from the node program before it finishes. 

2. Machine Dependent Code

File naming: It is necessary to define the name of the directory where
the scratch data files will reside.  This is specified by the character
string bname, which is initialized in a data statement found in file
``io1.f'' (for std F77 and subset hpf versions), ``node.u'' (for PARMACS
version) or ``io1n.f'' (for PVM 3.1 version).

The amount of data written by each node can be changed by altering the
value of TBYTE in the file ``''.  This value should be set so
that sufficient data is written to make sure it is actually written to
disk, and not simply cached in memory. 

3.  Running the Benchmark

The benchmark is run by initiating the program ``io1''.  For the PARMACS
and PVM versions this will load the node program onto each node. 

As stated above this benchmark will write out 12.5 MBytes from each node
on the machine. For a scalable I/O subsystem the time to run the
benchmark should remain constant regardless of the number of nodes
used. The disk scratch disk space required will be 12.5 MBytes multiplied
by the number of nodes used.

The benchmark should preferably be run on 1 node, then progressively the
number of nodes should be doubled.  As a minimal requirement results
should be obtained on 1, 16 and 64 processors if available.  The time
required should be roughly 3*12.5 multiplied by the I/O rate per node in

$Id: ReadMe,v 1.3 1994/07/07 17:13:21 rjc Exp igl $


High Performance Computing Centre

Submitted by Mark Papiani,
last updated on 10 Jan 1995.