Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!wuarchive!gem.mps.ohio-state.edu!tut.cis.ohio-state.edu!bloom-beacon!spdcc!merk!alliant!lewitt From: lewitt@Alliant.COM (Martin Lewitt) Newsgroups: comp.arch Subject: Re: VLIW Architecture Summary: lets get the history right Keywords: VLIW Message-ID: <3449@alliant.Alliant.COM> Date: 6 Oct 89 09:38:24 GMT References: <251FCB3F.12366@maccs.dcss.mcmaster.ca> <1050@m3.mfci.UUCP> <13050@pur-ee.UUCP> <1630@l.cc.purdue.edu> <1989Oct5.025841.2046@esegue.segue.boston.ma.us> Reply-To: lewitt@Alliant.COM (Martin Lewitt) Organization: Alliant Computer Systems, Littleton, MA Lines: 85 In article <1989Oct5.025841.2046@esegue.segue.boston.ma.us> johnl@esegue.segue.boston.ma.us (John R. Levine) writes: *** much deleted *** >To return to the original argument, John Ellis' book doesn't concern itself >with specific instruction sets because at the time he wrote it, VLIWs >existed only on paper. The concrete design of a VLIW happened only after >most of the rest of the Yale VLIW project left to build real hardware at >Multiflow. I was at Yale at the time and the longest instruction word we >had was 36 bits in our DEC-20. Or maybe 48 bits in a PDP-11. Ouch!! Why don't the Floating Point System's AP120B and FPS-164 processors qualify as VLIW? They were commercial products introduced in 1975 and 1981 respectively: 1) Both have 64 bit instructions, with fields controlling 10 operations in parallel, i.e., micro-coded. 2) Both have FORTRAN compilers, the 164 from its introduction in 1981 and the 120B in 1985 (though one may have been available from a third party earlier) 3) By 1983, the FORTRAN compiler for the 164 was "software pipelining", i.e., executing operations from different iterations of a loop in parallel in an instruction. 4) Both were installed on the Yale campus by 1985 (correct me on this one). 8-) I've tried to think of possible objections to their classification as VLIW: 1) The 64 bit instruction word isn't long enough. This quantitative argument falls to the qualitative, 10 operations controlled by a horizontal micro-instruction. 2) They were only "array processors" or "subroutine boxes". This is true, especially for the AP120B, but the 164 was able to run complete FORTRAN jobs from 1982 on. It is more of a back end or attached processor, like the CRAY. 3) No virtual memory or multi-tasking. What does this have to do with VLIW? 4) They were too easy to micro-program, humans could do it. True! And they were fun to program as well. The software pipelining compiler was faster though, and produced fine code. There were only a few hand coding tricks it couldn't handle, e.g., moving the loop control calculations to the floating point adder when the integer/address unit was too busy. The Multiflow machine was no mystery to FPS sales analysts. It was the FPS dream machine: UNIX, virtual memory, better compilers, etc. We had asked FPS to give us these features right from the beginning of the 164 back in 1981. By the time, Multi-flow delivered, it was too, late, Convex, Alliant and FPS's own ECL machine, 264 were already on the scene, and the high end workstations arrived in short order. It will be interesting to see if FPS gets the credit it deserves when the history is written, I doubt it. Will the historians do any better than the contemporaries? In 1985, an article about micro-programming appeared in Scientific American, written by a Stanford professor. He anticipated the day when there would be commercial machines compiling directly to micro-code. FPS had sold nearly 150 machines already. Let's get the history right. 1) The first commercially available VLIW machine was the FPS-164, not the Multiflow (by 6 years). 2) The "first affordable supercomputer" was the FPS-164, not the Convex (by 4 years). FPS was using the "affordable supercomputer" and "departmental supercomputing" phrases long before the Convex advertisements and literature took them up. 3) The first commercially available machine to compile complete HLL applications to micro-code was once again, the FPS-164 (well, actually the VAX since it was cross-compilation). 4) The first commercially available machine to successfully exploit parallel processors automatically using "dusty deck", serial FORTRAN, the Alliant FX8, (by 4 years and counting). 5) The first commercially available RISC machine was the FPS-164. (I'd love to see this one discussed, are VLIWs RISCy?) 8-) I don't know if I've got the history right, I've only been in the industry since '81, so feel free to propose "minor" adjustments. I'll gracelessly hide out when the heavyweights start swinging. > -- >John R. Levine, Segue Software, POB 349, Cambridge MA 02238,