🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: comp.arch
Article #2074

Re: What is a coprocessor? ... and is the i860 one?

#2074
From: Mike Butts
Date: Thu, 31 Aug 1989 16:19
46 lines
3319 bytes
From article <21709@cup.portal.com>, by mslater@cup.portal.com (Michael Z Slater):
> 2. If a coprocessor is something like an 8087 that executes from the
>    same instruction stream as the main processor, then what is a good name
>    for an independent processor that works with another processor?
>    Attached processor?  Slave processor?
> 
Some history, for what it's worth...

From the late 1970's thru to the present, FPS built array processors with
architectures very much like the i860, only with small memories (4K to 32K
words) where the i860s have caches.  These were attached to PDP-11s and VAXes
and the like thru a high-bandwidth interface and were used as "subroutine
boxes."  A FORTRAN program running on the host that needed a dot product or an
FFT would call a subroutine, which would DMA the data into the FPS AP120-B's
memory, cause it to execute a routine which had been previously loaded into
the instruction RAM, and then ship the results back.  You would code the 120B
in assembler, which was tricky since it had 64-bit instructions with multiple
parallel operation fields, or, later, there was a FORTRAN compiler.  FPS and
the industry called this an "attached processor."

Then in 1981, FPS came out with the 164, which had a host connection much like
the 120B's and could not stand alone, but which had a very large main memory
for code and data, an instruction cache, facilities to allow multiple users to
share the machine (although it did stop short of virtual memory), and was built
to run entire large applications, like ANSYS and NASTRAN.  It depended
primarily on the host VAX for I/O, but did have its own high-speed disk, file
system and OS.  It had an excellent optimizing FORTRAN compiler that could
schedule multiple operations into the parallel, pipelined instructions.  FPS
initially called this an "attached processor" as well, but later called the 164
a "scientific computer," as it was being used as a "baby Cray."

Indeed, don't most scientific computers, like the Crays, depend on a host GP
system for much of their I/O?  Where do you draw the line?

To summarize, I would call a machine which has its own instruction stream,
but which is slaved to a host's instruction stream, an "attached processor." 
In a broad sense such a machine is not that different from a co-processor,
except that its "instruction set" is programmable and its "operands" may be
entire matrices.  I would call a machine which executes entire
numeric-intensive applications, such as an FPS-164, a Cray, or an i860 with a
large main memory, a "scientific computer."
-- 
Michael Butts, Research Engineer       KC7IT           503-626-1302
Mentor Graphics Corp., 8500 SW Creekside Place, Beaverton, OR 97005
...!{sequent,tessi,apollo}!mntgfx!mbutts  OR  mbutts@pdx.MENTOR.COM
Opinions are my own, not necessarily those of Mentor Graphics Corp.
Technical Details
Message-ID: <1989Aug31.161908.1557@mentor.com>
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!cs.utexas.edu!uunet!zephyr.ens.tek.com!tektronix!sequent!mntgfx!mbutts
References: <21709@cup.portal.com>

Show Full Headers
Complete Article Headers
Path: arc1-ca.pugleaf.net!utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!cs.utexas.edu!uunet!zephyr.ens.tek.com!tektronix!sequent!mntgfx!mbutts
From: mbutts@mentor.com (Mike Butts)
Newsgroups: comp.arch
Subject: Re: What is a coprocessor? ... and is the i860 one?
Message-ID: <1989Aug31.161908.1557@mentor.com>
Date: 31 Aug 89 16:19:08 GMT
References: <21709@cup.portal.com>
Organization: engr
Lines: 46