Multiflow

Last updated

Multiflow Computer, Inc., founded in April, 1984 near New Haven, Connecticut, USA, was a manufacturer and seller of minisupercomputer hardware and software embodying the VLIW design style. Multiflow, incorporated in Delaware, ended operations in March, 1990, after selling about 125 VLIW minisupercomputers in the United States, Europe, and Japan.

Contents

While Multiflow's commercial success was small and short-lived, its technical success and the dissemination of its technology and people had a great effect on the future of computer science and the computer industry. Multiflow's computers were arguably the most novel ever to be broadly sold, programmed, and used like conventional computers. (Other novel computers either required novel programming, or represented more incremental steps beyond existing computers.)

Along with Cydrome, an attached-VLIW minisupercomputer company that had less commercial success, Multiflow demonstrated that the VLIW design style was practical, a conclusion surprising to many. While still controversial, VLIW has since been a force in high-performance embedded systems, and has been finding slow acceptance in general-purpose computing.

Early history

Technology roots

The VLIW (for Very Long Instruction Word) design style was first proposed by Joseph A. (Josh) Fisher, a Yale University computer science professor, during the period 1979-1981. VLIW was motivated by a compiler scheduling technique, called trace scheduling, that Fisher had developed as a graduate student at the Courant Institute of Mathematical Sciences of New York University in 1978. Trace scheduling, unlike any prior compiler technique, exposed significant quantities of instruction-level parallelism (ILP) in ordinary computer programs, without laborious hand coding. This implied the practicality of processors for which the compiler could be relied upon to find and specify ILP.

VLIW was put forward by Fisher as a way to build general-purpose instruction-level parallel processors exploiting ILP to a degree that would have been impractical using what would later be called superscalar control hardware. Instead, the compiler could, in advance, arrange the ILP to be carried out nearly in lock-step by the hardware, commanded by long instructions or a similar mechanism. While there had previously been processors that achieved significant amounts of ILP, they had all relied upon code laboriously hand-parallelized by the user, or upon library routines, and thus were not general-purpose computers and did not fit the VLIW paradigm.

The practicality of trace scheduling was demonstrated by a compiler built at Yale by Fisher and three of his graduate students, John Ruttenberg, Alexandru Nicolau, and especially John Ellis, whose doctoral dissertation on the compiler won the ACM Doctoral Dissertation Award in 1985. Encouraged by their compiling progress, Fisher's group started an architecture and hardware design effort called the ELI (Enormously Long Instructions) Project.

Business beginnings

ELI, which was to have 512-bit instruction words and initiate 10-30 RISC operations per cycle, was never built. Instead, Fisher, Ruttenberg, and John O'Donnell, who had led the ELI hardware project, started Multiflow in 1984 after failing to interest any mainstream computer companies in partnering in the ELI project. Originally, Multiflow was to have become a division of the workstation company Apollo Computer, but eventually it sought venture capital funding, closing its first round of financing in January, 1985, when the company already had about 20 employees. Donald E. Eckdahl, a former head of the NCR computer division, joined the company in 1985 as its CEO.

Multiflow delivered its first working VLIW minisupercomputers in early 1987 to three beta-sites: Grumman Aircraft, Sikorsky Helicopter, and the Supercomputer Research Center. A Trace 14/200 was demonstrated to the public at a supercomputing conference in May, 1987, in Santa Clara, California.

Technology

Innovative architecture

Multiflow's first computers were called the Trace 7/200 and Trace 14/200. The 7/ in the computer model number signified that the processor could initiate seven operations each cycle, using a 256-bit long instruction composed of 7 32-bit operations and a 32-bit utility field. The 7 operations were 4 integer/memory, 2 floating, and a branch. The 14/ models had twice as many of each instruction, and thus 512-bit long instruction words. Like many scientific-oriented processors of its day, the Trace had no traditional cache memory.

Multiflow also announced a 28/ model at the outset, and eventually these were built and sold to a few customers. The 28/ had 1024-bit instruction words. Having ordinary programs compiled for computers like these was unquestionably revolutionary, as no earlier computer had offered compiled ILP even like that of the 7/ models. The 28/ systems pushed these limits far beyond either academic or industrial conception. While only a few customer programs contained enough ILP to keep a 28/ busy, when they did the performance was remarkable, since the processor would then initiate close to all 28 operations on average.

Hardware

Each 7/ processor datapath comprised a control unit board, an integer ALU board, and a floating point board. The 14/ added a second integer ALU board and a second floating point board. Before many systems were in the field, faster 3rd party floating-point chips became available, and the /200 family was replaced by the object-code incompatible 7/300 and 14/300, and the 14/300 became by far the company's most popular model. In about 1988, a /100 entry level series was introduced as well, but these were essentially /300 systems with a slower clock. All the processors were built using CMOS gate arrays for the integer ALUs and registers, 3rd-party floating point chips, and medium-scale integrated circuits for the control and other portions.

In 1988, the company started development of an ECL /500 family, which was to feature a 14/ that could also be used as a multiprocessor of two 7/ models, but that system was not completed before the company ceased operations.

One example Trace system is in storage at the Computer History Museum.

Innovative software

Multiflow also produced the software tools for the systems it built. The systems ran Berkeley Unix. Probably, at the time the Multiflow systems were delivered, no computer that issued instructions longer than a single operation at a time had ever run a compiled mainstream operating system. Yet the entire Unix operating system and the usual tools all ran, with the usual portions compiled, on all the company's models.

The compiler was particularly noteworthy, as could be expected given Multiflow's technology. The company built a new compiler, in a similar style to that developed at Yale, but industrial-strength and with the incorporation of much commercially-necessary capability. In addition to implementing aggressive trace scheduling, it was known for its reliability, for its incorporation of state-of-the-art optimization, and for its ability to handle simultaneously many different language variants and all of the different object-code incompatible models of the Multiflow Traces. (While code from a 7/X00 could run correctly on a 14/X00, the nature of the architecture mandated that it would have to be recompiled to run faster than it did on the 7/.)

The compiler was generating correct code by 1985, and by 1987 it was producing code that found significant amounts of ILP. After 1987, with the press of customers and prospects, its development emphasized features and functionality, though performance-oriented improvement continued.

The compiler was so robust, and so good at exposing ILP independent of the system it was targeted for, that after Multiflow closed, the compiler was licensed by many of the largest computer companies. It has been reported that this included Intel, Hewlett-Packard, Digital Equipment Corporation, Fujitsu, Hughes, HAL Computer Systems, and Silicon Graphics. Other companies known to have licensed the technology include Equator Technologies, Hitachi and NEC. Compilers built starting from that code base were used for advanced development and benchmark reporting for the most important superscalar processors of the 1990s. Descendants of the compiler were still in wide use 20 years after it first started generating correct code (notably, Intel's icc "Proton" compiler and the NEC Earth Simulator compiler), and are often used as benchmark targets for new compiler development. MIT and the University of Washington are among the universities that received and used the compiler for advanced research purposes.

The Multiflow compiler was written in C. It pre-dated the popular use of C++ (Multiflow was a beta-site for the language). The compiler designers were strong believers in the object-oriented paradigm, however, and the compiler had a rather idiosyncratic style that encapsulated the structures and operations in it. This caused a steep learning curve for the many developers who used it after Multiflow's demise, but one that was usually considered a good investment because of the unique combination of ambitious compiling and rock-solid engineering the compiler offered.

Customers and business history

Customers

While a few of Multiflow's sales went to organizations wishing to learn more about the new VLIW design style, most systems were used for simulation in product development environments: mechanical, aerodynamic, defense, crash dynamics, chemical, and some electronic. Customers ranged from a major metropolitan air-quality board to a major consumer detergent, food and sundries company, along with the expected heavy industry companies, research laboratories and universities. In 1987, GEI Rechnersysteme GmbH, a division of Daimler-Benz, began distributing Traces in Germany with great success, despite fierce competition from other minisupercomputer companies. In the following three years, Multiflow opened offices or had distributors in most of Western Europe and Japan, and opened offices in many US metropolitan areas.

Multiflow's end

Multiflow ended operations on March 27, 1990, two days after a large deal contemplated with Digital Equipment Corporation came apart. At that point, the board determined that the prospects for successful additional financing, in the amounts necessary to bring Multiflow to maturity, were too unlikely to justify the company's continuation. Multiflow's failure is often blamed anecdotally on “good technology, but bad marketing,” on “good software, but slow, conservative hardware,” on some property of its innovative technology, or even on the isolated location of its headquarters. The more likely cause was that its business plan was incompatible with seismic shifts in the computer industry. Building a full-scale, general-purpose computer company seemed to require many hundreds of millions of dollars (US) by 1990. But the killer micro revolution meant there would be a steady march of ever faster and cheaper competition. The economies inherent in microprocessors were inaccessible to startups in general, and incompatible with VLIWs, which would have required too much silicon for the densities of the time. (The first VLIW microprocessor was the Philips Life, the ancestor of today's TriMedia, delivered several years later.) Since the founding of Sun and SGI in the early 1980s, no new general-purpose computer company has succeeded without building computers for which there was an existing large software base, and none of the many minisupercomputer startup companies of the 1980s eventually succeeded.

Corporate culture

Multiflow was staffed by engineers, computer scientists, and other computer professionals who were attracted to the combination of a novel and challenging technology, an uphill battle, and the remarkable social experience of working in the most uniformly talented group they were ever likely to be a part of. The system was so novel that its engineering was widely expected to fail. Despite that, even though none of the employees (besides Eckdahl) had ever held senior engineering positions, Trace systems and their software were delivered on time, were robust, and exceeded their promised performance. In great part this was due to the talent level of those attracted to the company, and to the tremendous learning environment it was from the outset.

Following Multiflow's closing, its employees went on to have a widespread effect on the industry. The small core group of engineers and scientists, numbering about 20, produced 4 fellows in major American computer companies (2 of whom were Eckert-Mauchly Award winners), several founders of successful startups, and leaders of major development efforts at large companies. The only nontechnical person in the core group, hired out of business school, went on to lead corporate development at a major research lab. As Multiflow grew, it continued the tradition of hiring highly talented people: as one example, the documentation writer became one of the most influential editors in computer publishing. Multiflow's effect on the computer industry was very much its people in addition to its technology.

Related Research Articles

Central processing unit Central computer component which executes instructions

A central processing unit (CPU), also called a central processor, main processor or just processor, is the electronic circuitry that executes instructions comprising a computer program. The CPU performs basic arithmetic, logic, controlling, and input/output (I/O) operations specified by the instructions in the program. This contrasts with external components such as main memory and I/O circuitry, and specialized processors such as graphics processing units (GPUs).

Kendall Square Research

Kendall Square Research (KSR) was a supercomputer company headquartered originally in Kendall Square in Cambridge, Massachusetts in 1986, near Massachusetts Institute of Technology (MIT). It was co-founded by Steven Frank and Henry Burkhardt III, who had formerly helped found Data General and Encore Computer and was one of the original team that designed the PDP-8. KSR produced two models of supercomputer, the KSR1 and KSR2. It went bankrupt in 1994.

MIPS is a family of reduced instruction set computer (RISC) instruction set architectures (ISA) developed by MIPS Computer Systems, now MIPS Technologies, based in the United States.

x86 Family of instruction set architectures

x86 is a family of complex instruction set computer (CISC) instruction set architectures initially developed by Intel based on the Intel 8086 microprocessor and its 8088 variant. The 8086 was introduced in 1978 as a fully 16-bit extension of Intel's 8-bit 8080 microprocessor, with memory segmentation as a solution for addressing more memory than can be covered by a plain 16-bit address. The term "x86" came into being because the names of several successors to Intel's 8086 processor end in "86", including the 80186, 80286, 80386 and 80486 processors.

In computer science, an instruction set architecture (ISA), also called computer architecture, is an abstract model of a computer. A device that executes instructions described by that ISA, such as a central processing unit (CPU), is called an implementation.

Very long instruction word (VLIW) refers to instruction set architectures designed to exploit instruction level parallelism (ILP). Whereas conventional central processing units mostly allow programs to specify instructions to execute in sequence only, a VLIW processor allows programs to explicitly specify instructions to execute in parallel. This design is intended to allow higher performance without the complexity inherent in some other designs.

IA-64 Instruction set architecture of the Itanium family of 64-bit Intel microprocessors

IA-64 is the instruction set architecture (ISA) of the Itanium family of 64-bit Intel microprocessors. The basic ISA specification originated at Hewlett-Packard (HP), and was evolved and then implemented in a new processor microarchitecture by Intel with HP's continued partnership and expertise on the underlying EPIC design concepts. In order to establish what was their first new ISA in 20 years and bring an entirely new product line to market, Intel made a massive investment in product definition, design, software development tools, OS, software industry partnerships, and marketing. To support this effort Intel created the largest design team in their history and a new marketing and industry enabling team completely separate from x86. The first Itanium processor, codenamed Merced, was released in 2001.

The Intel i860 is a RISC microprocessor design introduced by Intel in 1989. It is one of Intel's first attempts at an entirely new, high-end instruction set architecture since the failed Intel iAPX 432 from the beginning of the 1980s. It was released with considerable fanfare, slightly obscuring the earlier Intel i960, which was successful in some niches of embedded systems, and which many considered to be a better design. The i860 never achieved commercial success and the project was terminated in the mid-1990s.

In computer architecture, 64-bit integers, memory addresses, or other data units are those that are 64-bit (8-octet) wide. Also, 64-bit central processing unit (CPU) and arithmetic logic unit (ALU) architectures are those that are based on processor registers, address buses, or data buses of that size. 64-bit microcomputers are computers in which 64-bit microprocessors are the norm. From the software perspective, 64-bit computing means the use of machine code with 64-bit virtual memory addresses. However, not all 64-bit instruction sets support full 64-bit virtual memory addresses; x86-64 and ARMv8, for example, support only 48 bits of virtual address, with the remaining 16 bits of the virtual address required to be all 0's or all 1's, and several 64-bit instruction sets support fewer than 64 bits of physical memory address.

Digital signal processor Specialized microprocessor optimized for digital signal processing

A digital signal processor (DSP) is a specialized microprocessor chip, with its architecture optimized for the operational needs of digital signal processing. DSPs are fabricated on MOS integrated circuit chips. They are widely used in audio signal processing, telecommunications, digital image processing, radar, sonar and speech recognition systems, and in common consumer electronic devices such as mobile phones, disk drives and high-definition television (HDTV) products.

Explicitly parallel instruction computing (EPIC) is a term coined in 1997 by the HP–Intel alliance to describe a computing paradigm that researchers had been investigating since the early 1980s. This paradigm is also called Independence architectures. It was the basis for Intel and HP development of the Intel Itanium architecture, and HP later asserted that "EPIC" was merely an old term for the Itanium architecture. EPIC permits microprocessors to execute software instructions in parallel by using the compiler, rather than complex on-die circuitry, to control parallel instruction execution. This was intended to allow simple performance scaling without resorting to higher clock frequencies.

Minisupercomputers constituted a short-lived class of computers that emerged in the mid-1980s, characterized by the combination of vector processing and small-scale multiprocessing. As scientific computing using vector processors became more popular, the need for lower-cost systems that might be used at the departmental level instead of the corporate level created an opportunity for new computer vendors to enter the market. As a generalization, the price targets for these smaller computers were one-tenth of the larger supercomputers.

Cydrome (1984−1988) was a computer company established in San Jose of the Silicon Valley region in California. Its mission was to develop a numeric processor. The founders were David Yen, Wei Yen, Ross Towle, Arun Kumar, and Bob Rau.

Josh Fisher American computer scientist

Joseph A "Josh" Fisher is an American and Spanish computer scientist noted for his work on VLIW architectures, compiling, and instruction-level parallelism, and for the founding of Multiflow Computer. He is a Hewlett-Packard Senior Fellow (Emeritus).

FR-V (microprocessor)

The Fujitsu FR-V is one of the very few processors ever able to process both a very long instruction word (VLIW) and vector processor instructions at the same time, increasing throughput with high parallel computing while increasing performance per watt and hardware efficiency. The family was presented in 1999. Its design was influenced by the VPP500/5000 models of the Fujitsu VP/2000 vector processor supercomputer line.

Trace scheduling is an optimization technique developed by Josh Fisher used in compilers for computer programs.

PRISM was Apollo Computer's high-performance CPU used in their DN10000 series workstations. It was for some time the fastest microprocessor available, a high fraction of a Cray-1 in a workstation. Hewlett-Packard purchased Apollo in 1989, ending development of PRISM, although some of PRISM's ideas were later used in HP's own HP-PA Reduced instruction set computer (RISC) and Itanium processors.

History of general-purpose CPUs History of processors used in general purpose computers

The history of general-purpose CPUs is a continuation of the earlier history of computing hardware.

The ST200 is a family of very long instruction word (VLIW) processor cores based on technology jointly developed by Hewlett-Packard Laboratories and STMicroelectronics under the name Lx. The main application of the ST200 family is embedded media processing.

RISC-V is an open standard instruction set architecture (ISA) based on established RISC principles. Unlike most other ISA designs, RISC-V is provided under open source licenses that do not require fees to use. A number of companies are offering or have announced RISC-V hardware, open source operating systems with RISC-V support are available, and the instruction set is supported in several popular software toolchains.