[net.ai] Non-Von's are not Von's

kahn@UCLA-CS.ARPA (03/30/84)

From:  Philip Kahn <kahn@UCLA-CS.ARPA>

        The  ``parallel  architectures  community'' has mostly been interested
        in novel computer architectures to accelerate numeric computation
        (usually  represented as Fortran codes).

        What are the fundamental characteristics of AI computation that
        distinguish it from more conventional computation?
        Indeed, are there really any differences at all?


        I disagree with the claim that the "parallel architectures community"
has been trying to find a parallel Fortran.  Indeed, that is not possible,
since the best that could be attained would be *concurrent seriality*.
On the whole, I feel acceleration of numerical computation is not the primary
goal of those researching parallel architectures.  Rather, I feel the primary
thrust of this work has been to define inherently parallel structures and
their possible applications.

        Before we all espouse our personal viewpoints on this subject, I
feel it might be useful to agree upon our terms; they seem to vary from
person to person.  *Serial* is a single step move through a computation.
*Concurrent serial* is the simultaneous processing of more than one
serial computation.  *Parallel* is the local computation of global properties
by dedicated processors.

        Yes! There are differences between AI-motivated parallel
computation and conventional computation.  Conventional computation runs
on your standard store-bought Von Neumann machine that runs in a *serial*
fashion.  "Pseudo-conventional" machines are able to run *concurrent serial*
programs (e.g., Ada, Concurrent Pascal, etc.) utilizing several Von Neumann
processors.  *A truly parallel machine computes global properties based upon
local criteria.*  Each "criteria" is locally computed via a dedicated
processor.  The design of parallel machines is a tough problem.
A growing number of researchers feel that
*cellular automata* are the building block of all parallel structures.
The design of parallel machines using cellular automata involves the design
of local consistency conditions, oscillation behavior, equilibrium effects,
and a myriad of other non-conventional subjects.
Thus, I feel that there are in fact significant differences between parallelism
and "conventional" methods.