Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP
Path: utzoo!mnetor!uunet!seismo!ut-sally!husc6!bloom-beacon!think!ames!lll-tis!ohlone!nelson
From: nelson@ohlone.UUCP (Bron Nelson)
Newsgroups: comp.arch
Subject: Re: What with these Vector's anyways?
Message-ID: <343@ohlone.UUCP>
Date: Fri, 24-Jul-87 02:47:52 EDT
Article-I.D.: ohlone.343
Posted: Fri Jul 24 02:47:52 1987
Date-Received: Sat, 25-Jul-87 13:55:35 EDT
References: <218@astra.necisa.oz> <142700010@tiger.UUCP>, <363@astroatc.UUCP> <8344@utzoo.UUCP>
Organization: Cray Research Inc., Livermore, CA
Lines: 33
Summary: Vector speed up on a Cray XMP

In article <8344@utzoo.UUCP>, henry@utzoo.UUCP (Henry Spencer) writes:
> > BTW:  The Cray-1 & XMP are also very-good Scalar machines!
> 
> It should be noted that this is an important reason why they sell so well
> (the Cray production runs are an order of magnitude larger than those of a
> lot of other supercomputer projects in the last two decades).  If a program
> is 90% vectorizable, than magically making the vector part of it *infinitely*
> fast will only speed it up by a factor of ten.

A good rule-of-thumb is that running a problem vectorized is about 10
times faster that doing the same problem scalar on an XMP (single
processor).  Thus, if some old problem you have is 90% vectorizable,
it will spend half of its execution time doing the part that is (still)
scalar.  So scalar performance is very important.

Now, it is very true that only a small fraction of the *number* of jobs
run in a typical day have any significant vectorizeable parts even if
you look at the sites that buy our machines: compilers and editors (and
your news reading program :-)) do not vectorize very well.  However the
kind of jobs that take the majority of the *cpu* time DO tend to have
significant vectorizable parts.  The big cpu/memory hogs tend to cycle
through huge volumes of data, frequently doing pretty much the same
thing to each datum (this is of course a vast over-simplification,
but you get the idea).  Some codes (for example, oil company's analysis
of seismic data at a potential drilling site) can be almost embarrassingly
vectorizable - 99+%.  And of course people designing large new codes tend
to consider how to make the solution vectorizable/parallelizable.  But
it IS a big selling point to be able to say "slap that crufty old monster
on this baby and she'll run like lightning from the word go."

-----------------------
Bron Nelson     {ihnp4, lll-lcc}!ohlone!nelson
Not the opinions of Cray Research