Subject: Response to Grassl

From: [email-masked]
Date: Fri, 31 Dec 93 15:30:15 GMT

RESPONSE TO CHARLES GRASSL
                   --------------------------

>The lable multi-processors is accurate but too general.  Nearly all
>computers support multiple processing of some sort.

     I agree

>Node and processors are often used incorrectly in an interchangable
>fashion.  A node is a network location and a processor is a CPU of some
>sort.  On a CRAY T3D there are two CPUs, we call them Processor
>Elements (PEs), per node.  The Intel Paragon has two i860 CPUs at each
>node site, one for computation and one for communication.

    A very good point. Thanks for the clarification. I will use the
    distinction which is an important one to make. It will probably 
    mean that most references to node (if they really mean processor 
    at a node) will be replaced by processor.

>MPP is a generic name.  The US agency ARPA is trying to change the use
>of the lable "MPP" to Scalable MuliProcessor (SMP).  I object to the
>latter label because there is not an adequate defition of "scalable".

    I agree, and indeed I object to both MPP and SMP, as we don't know 
    what either Massive or Scalable is supposed to mean. Everything is 
    scalable to some extent, and nothing is infinitely scalable. 
    The only sensible question is by how much and in what manner does
    a particular design scale when more processors are added. A very
    complex question which is rarely properly answered, if indeed the
    answer is known at all.  I will try to avoid these terms, but will
    probably have to mention them.
 
>Message-passing computers would encompass all modern computers.

    Are you sure? Does the C90 pass messages, for example? It provides
    no message-passing constructs in its normal Fortran, and it is
    intended to be programmed with shared-memory language constructs
    which imply a "Direct Memory Access" (DMA) model of memory. Perhaps we 
    need to be careful to distinguish hardware features (does the hardware
    actually send something that can be construed as a message), from
    the programming model (does the software provide SEND/RECV primitives).
    As yet I am not sure on this one?? 

>Distributed memory seems to be what we are benchmarking.  The key
>differentiator of MPP systems is their non-local memory access
>patterns.

    The PARKBENCHmarks are actually either message-passing programs
    and/or HPF programs. They therefore can be used on and can test 
    any computer whose software supports these models of programming.
    This statement is quite independent of the nature of the hardware
    which may or may not, at the hardware level, send messages or
    have data parallel (i.e. SIMD as opposed to MIMD) control.
    However, we have no benchmarks which use the shared memory or DMA 
    model of parallel programming. Come to think of it, HPF is a special
    rather restricted case of DMA (there are certainly no messages).  
    My view is that our benchmarks test the efficiency of certain
    prgramming models on a particular computer, and it should be clearly
    stated that this does not imply anything about the underlying
    hardware.    Other views please.

>I recommend using the label "distributed memory computers".

    I have noted this preference, but still have an open mind.

Thanks for your contribution

                    Roger Hockney