Multiflow

From Wikipedia, the free encyclopedia

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.

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[edit]

Technology roots[edit]

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[edit]

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[edit]

Innovative architecture[edit]

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[edit]

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[edit]

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[edit]

Customers[edit]

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[edit]

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[edit]

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.

External links[edit]