All Topics  
ILLIAC IV

 
ILLIAC IV

   Email Print
   Bookmark   Link






 

ILLIAC IV



 
 
The ILLIAC IV was one of the most infamous supercomputer
Supercomputer

A supercomputer is a computer that is at the frontline of current processing capacity, particularly speed of calculation. Supercomputers introduced in the 1960s were designed primarily by Seymour Cray at Control Data Corporation , and led the market into the 1970s until Cray left to form his own company, Cray Research....
s ever. Last in a series of research machines, the ILLIACs
ILLIAC

ILLIAC was the name given to a series of supercomputers built at the University of Illinois at Urbana-Champaign. In all, five computers were built in this series between 1951 and 1974....
 from the University of Illinois
University of Illinois at Urbana-Champaign

The University of Illinois at Urbana-Champaign is a public university research university in the state of Illinois, United States. It is the oldest and largest campus in the University of Illinois system....
, the ILLIAC IV design featured fairly high parallelism
Parallel computing

Parallel computing is a form of computing in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved Concurrency ....
 with up to 256 processors, used to allow the machine to work on large data sets in what would later be known as vector processing
Vector processor

A vector processor, or array processor, is a Central processing unit design where the instruction set includes operations that can perform mathematical operations on multiple data elements simultaneously....
.






Discussion
Ask a question about 'ILLIAC IV'
Start a new discussion about 'ILLIAC IV'
Answer questions from other users
Full Discussion Forum



Encyclopedia


Illiac 4 Parallel Computer
The ILLIAC IV was one of the most infamous supercomputer
Supercomputer

A supercomputer is a computer that is at the frontline of current processing capacity, particularly speed of calculation. Supercomputers introduced in the 1960s were designed primarily by Seymour Cray at Control Data Corporation , and led the market into the 1970s until Cray left to form his own company, Cray Research....
s ever. Last in a series of research machines, the ILLIACs
ILLIAC

ILLIAC was the name given to a series of supercomputers built at the University of Illinois at Urbana-Champaign. In all, five computers were built in this series between 1951 and 1974....
 from the University of Illinois
University of Illinois at Urbana-Champaign

The University of Illinois at Urbana-Champaign is a public university research university in the state of Illinois, United States. It is the oldest and largest campus in the University of Illinois system....
, the ILLIAC IV design featured fairly high parallelism
Parallel computing

Parallel computing is a form of computing in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved Concurrency ....
 with up to 256 processors, used to allow the machine to work on large data sets in what would later be known as vector processing
Vector processor

A vector processor, or array processor, is a Central processing unit design where the instruction set includes operations that can perform mathematical operations on multiple data elements simultaneously....
. The machine was finally ready for operation in 1976, after a decade of development that was now massively late, massively over budget, and outperformed by existing commercial machines like the Cray-1
Cray-1

The Cray-1 was a supercomputer designed by a team including Seymour Cray for Cray Research. The first Cray-1 system was installed at Los Alamos National Laboratory in 1976, and it went on to become one of the best known and most successful supercomputers in history....
.

Background

By the early 1960s computer designs were approaching the point of diminishing returns
Diminishing returns

In economics, diminishing returns is also called diminishing marginal return or the law of diminishing returns. According to this relationship, in a production system with fixed and variable inputs , beyond some point, each additional unit of variable input yields less and less output....
. At the time, computer design focused on adding as many instructions as possible to the machines CPU, a concept known as "orthogonality", which made programs smaller and more efficient in use of memory. It also made the computers themselves fantastically complex, and in an era when many CPUs were hand-wired from individual transistors, the cost of additional orthogonality was often very high. Adding instructions could potentially slow the machine down; maximum speed was defined by the signal timing in the hardware, which was in turn a function of the overall size of the machine. The state of the art
State of the art

The state of the art is the highest level of development, as of a device, technique, or scientific field, achieved at a particular time. It also applies to the level of development reached at any particular time usually as a result of modern methods....
 hardware design techniques of the time used individual transistor
Transistor

In electronics, a transistor is a semiconductor device commonly used to Electronic amplifier or switch Electronics signals. A transistor is made of a solid piece of a semiconductor material, with at least three terminals for connection to an external circuit....
s to build up logic circuits, so any increase in logic processing meant a larger machine. CPU
Central processing unit

A central processing unit is an electronic circuit that can execute computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread usage....
 speeds appeared to be reaching a plateau.

Several solutions to these problems were explored in the 1960s. One, then known as overlap but today known as an instruction pipeline
Instruction pipeline

File:5 Stage Pipeline.svgAn instruction pipeline is a technique used in the design of computers and other digital electronic devices to increase their instruction throughput ....
, allows a single CPU
Central processing unit

A central processing unit is an electronic circuit that can execute computer programs. This broad definition can easily be applied to many early computers that existed long before the term "CPU" ever came into widespread usage....
 to work on small parts of several instructions at a time. Normally the CPU would fetch an instruction from memory, "decode" it, run the instruction and then write the results back to memory. While the machine is working on any one stage, say decoding, the other portions of the CPU are not being used. Pipelining allows the CPU to start the load and decode stages (for instance) on the "next" instruction while still working on the last one and writing it out. Pipelining was a major feature of Seymour Cray
Seymour Cray

Seymour Roger Cray was a United States electrical engineer and supercomputer architect who designed a series of computers that were the fastest in the world for decades, and founded the company Cray Research which would build many of these machines....
's groundbreaking design, the CDC 7600
CDC 7600

The CDC 7600 was the Seymour Cray-designed successor to the CDC 6600, extending Control Data's dominance of the supercomputer field into the 1970s....
, which outperformed almost all other machines by about ten times when it was introduced.

Another solution to the problem was parallel computing
Parallel computing

Parallel computing is a form of computing in which many calculations are carried out simultaneously, operating on the principle that large problems can often be divided into smaller ones, which are then solved Concurrency ....
; building a computer out of a number of general purpose CPUs. The "computer" as a whole would have to be able to keep all of the CPUs busy, asking each one to work on a small part of the problem and then collecting up the results at the end into a single "answer". Not all tasks can be handled in this fashion, and extracting performance from multiple processors remains a problem even today, yet the concept has the advantage of having no theoretical limit to speed – if you need more performance, simply add more CPUs. General purpose CPUs were very expensive, however, so any "massively parallel
Massively parallel

Massively parallel is a description which appears in computer science, life science, medical diagnostics, and other fields.A massively parallel computer is a distributed memory computer system which consists of many individual nodes, each of which is essentially an independent computer in itself, and in turn consists of at least one...
" design would either be too expensive to be worth it, or have to use a much simpler CPU design.

Solomon


Westinghouse explored the latter solution in a project known as Solomon. Since the highest performing computers were being used primarily for math processing in science and engineering, they decided to focus their CPU design on math alone. They designed a system in which the instruction stream was fetched and decoded by a single CPU, the "control unit" or CU. The CU was attached to an array of processors built to handle floating point
Floating point

In computing, floating point describes a system for numerical representation in which a String of digits represents a rational number.The term floating point refers to the fact that the radix point can "float": that is, it can be placed anywhere relative to the Significant figures of the number....
 math only, the "processing element"s, or PEs. Since much of the complexity of a CPU is due to the instruction fetching and decoding process, Solomon's PEs ended up being much simpler than the CU, so many of them could be built without driving up the price. Modern microprocessor
Microprocessor

A microprocessor incorporates most or all of the functions of a central processing unit on a single integrated circuit . The first microprocessors emerged in the early 1970s and were used for electronic calculators, using Binary-coded decimal arithmetic on 4-bit Word ....
 designs are quite similar to this layout in general terms, with a single instruction decoder feeding a number of subunits dedicated to processing certain types of data. Where Solomon differed from modern designs was in the number of subunits; a modern CPU might have three or four integer
Integer

The integers are natural numbers including 0 and their negative and non-negative numberss . They are numbers that can be written without a fractional or decimal component, and fall within the set ....
 units and a similar number of floating point
Floating point

In computing, floating point describes a system for numerical representation in which a String of digits represents a rational number.The term floating point refers to the fact that the radix point can "float": that is, it can be placed anywhere relative to the Significant figures of the number....
, in Solomon there were 256 PE's, all dedicated to floating point.

Solomon would read instructions from memory, decode them, and then hand them off to the PE's for processing. Each PE had its own memory for holding operands and results, the PE Memory module, or PEM. The CU could access the entire memory via a dedicated memory bus
Memory bus

The memory bus is the Bus which connects the main memory to the memory controller in computer systems. Originally, general-purpose buses like VMEbus and the S-100 bus were used, but to reduce latency , modern memory busses are designed to connect directly to DRAM chips, and thus are designed by chip standards bodies such as JEDEC....
, whereas the PE's could only access their own PEM. Although there are problems, known as embarrassingly parallel
Embarrassingly parallel

In parallel computing, an embarrassingly parallel workload is one for which little or no effort is required to separate the problem into a number of parallel tasks....
, that can be handled by entirely independent units, these problems are generally rare. To allow results from one PE to be used as inputs in another, a separate network connected each PE to its eight closest neighbors. Similar arrangements were common on massively parallel machines in the 1980s.

Unlike modern designs, Solomon's PEs could only run a single instruction at a time, and every PE had to be running the same instruction. That means the system was only useful when working on data sets that had "wide" arrays that could be spread out over the PEs. These sorts of problems are not uncommon in scientific processing, and are very common today when working with multimedia
Multimedia

Multimedia is media and content that utilizes a combination of different content format. The term can be used as a noun or as an adjective describing a medium as having multiple content forms....
 data. The concept of applying a single instruction to a large number of data elements at once is now common to most microprocessor designs, where it is referred to as SIMD
SIMD

In computing, SIMD is a technique employed to achieve data level parallelism....
, for "Single Instruction, Multiple Data". In Solomon, the CU would normally load up the PEMs with data, scatter the instructions across the PEMs, and then start feeding the instructions to the PE's, one at every clock cycle.

Under a contract from the US Air Force's RADC
RADC

RADC may be:* Rome Air Development Center, the former name of the United States Air Force's Rome Laboratory*Royal Army Dental Corps, part of the British Army...
 research arm, they had built a breadboard
Breadboard

A breadboard is a reusable sometimes solderless device used to build a prototype of an electronic circuit and for experimenting with circuit designs....
 prototype machine in 1964, but the RADC contract ended and Westinghouse decided not to follow it up on their own.

ILLIAC IV


When Solomon ended the principal investigator, Daniel Slotnick, managed to gain the interest of Burroughs, who at that time were not able to serve the high-end scientific market. However, development of such a machine for an unknown customer base was risky, and Slotnick arranged for the University of Illinois
University of Illinois at Urbana-Champaign

The University of Illinois at Urbana-Champaign is a public university research university in the state of Illinois, United States. It is the oldest and largest campus in the University of Illinois system....
 to be both initial customer and development partner. As the performance of the machine was much more than the University could make good use of, it was expected that time on the machine would be rented out to commercial users. In 1964 the University signed a contract with DARPA to fund the effort, which became known as ILLIAC IV, following in line from a number of earlier research machines developed there. Development started in 1965, and a first-pass design was completed in 1966.

In many ways the machine was treated as an experimental design, so it included the most advanced features then available. The logic circuits were based on ECL
Emitter coupled logic

In electronics, emitter-coupled logic, or ECL, is a logic family in which current is steered through Bipolar junction transistors to implement logic functions....
 integrated circuit
Integrated circuit

In electronics, an integrated circuit is a miniaturized electronic circuit that has been manufactured in the surface of a thin Wafer of semiconductor material....
s (ICs), whereas many machines of the era still relied on individual transistor
Transistor

In electronics, a transistor is a semiconductor device commonly used to Electronic amplifier or switch Electronics signals. A transistor is made of a solid piece of a semiconductor material, with at least three terminals for connection to an external circuit....
s or low-speed ICs. Texas Instruments
Texas Instruments

Texas Instruments , better known in the electronics industry as TI, is an United States company based in Dallas, Texas, Texas, United States, renowned for developing and commercializing semiconductor and computer technology....
 was contracted for the ECL based ICs. Each PE was given 2048-words of 240 ns thin film memory
Thin film memory

Thin-film memory is a high-speed variation of core memory developed by UNIVAC in a government-funded research project.Instead of threading individual ferrite cores on wires, thin-film memory consisted of 4 micrometre thick dots of permalloy, an iron-nickel alloy, deposited on small glass plates by vacuum evaporation techniques and a mask....
 (later replaced with semiconductor
Semiconductor

A semiconductor is a material that has electrical conductivity between those of a Electrical conductor and an electrical insulation; it can vary over that wide range either permanently or dynamically....
 memory) for storing results. Burroughs also supplied the specialized disk drives, which featured a separate stationary head for every track and could offer speeds up to 500 Mbit/s and stored about 80 MB
Megabyte

Megabyte is a SI prefix-multiple of the unit byte for digital information computer storage or transmission and is equal to 106 bytes....
 per 36"
Inch

An inch is the name of a Units of measurement of length in a number of different systems, including Imperial units, and United States customary units....
 disk. They also provided a Burroughs B6500 mainframe to act as a front-end controller. Connected to the B6500 was a laser optical recording medium, a write-once system that stored up to 1 Tbit
Terabit

A terabit is a unit of information or computer storage, abbreviated Tbit .1 terabit = 1012 bits = 1,000,000,000,000 bits . 1 terabit is equal to 125 gigabytes or 122 gibibytes....
 on a plastic disk covered with a thin metal film.

The ILLIAC was a 64-bit
64-bit

64-bit CPUs have existed in supercomputers since the 1960s and in RISC-based computer workstation and Server s since the early 1990s. In 2003 they were introduced to the mainstream personal computer arena, in the form of the x86-64 and 64-bit PowerPC processor architectures....
 design, in a pre-ASCII
ASCII

American Standard Code for Information Interchange , is a coding standard that can be used for interchanging information, if the information is expressed mainly by the written form of English words....
 era when 48-bit
Bit

A bit is a binary numeral system numerical digit, taking a value of either 0 or 1. Binary digits are a basic unit of information Computer data storage and transmission in digital computing and digital information theory....
 machines were more common and no word length could be considered "standard". The CPU had sixty-four 64-bit registers
Processor register

In computer architecture, a processor register is a small amount of Computer storage available on the CPU whose contents can be accessed more quickly than storage available elsewhere....
 and another four 64-bit accumulators. The PEs had only six 64-bit registers, each with a special purpose. One of these, RGR, was used for communicating data to neighboring PEs, moving one "hop" per clock cycle. Another, RGD, indicated whether or not that PE was currently active. The PEs had instruction formats for 64, 32 and 8-bit data, and could be placed into a 32-bit mode that made it appear that there were 128 PEs.

The design goal called for a computer with the ability to process 1 billion floating point operations per second, or in today's terminology, 1 GFLOPS. To do this the basic design would require 256 PEs running on a 13 MHz clock, driven by four CPUs. Originally they intended to house all 256 PEs in a single large mainframe
Mainframe computer

Mainframes are computers used mainly by large organizations for critical applications, typically bulk data processing such as census, industry and consumer statistics, Enterprise Resource Planning, and financial transaction processing....
, but the project quickly ran behind schedule. Instead, a modification was made to divide the ALUs into quadrants of 64 with a single CU each, housed in separate cabinets. Eventually it became clear that only one quadrant would become available in any realistic timeframe, reducing performance from 1 GFLOPS to about 200 MFLOPS.

Work at the University was primarily aimed at ways to efficiently fill the PEs with data. Unless the "problem" being fed into the computer could be parallelized in SIMD fashion, the ILLIAC would be no faster than any other computer, and much slower than designs from companies like Control Data, which featured much higher clock rates. In order to make this as easy as possible, several new computer languages were created; IVTRAN and TRANQUIL were parallelized versions of FORTRAN
Fortran

Fortran is a general-purpose programming language, procedural programming language, imperative programming language programming language that is especially suited to numerical analysis and scientific computing....
, and Glypnir was a similar conversion of ALGOL
Algol

Algol , known colloquially as the Demon Star, is a bright star in the constellation Perseus . It is one of the best known eclipsing binary, the first such star to be discovered, and also one of the first variable stars to be discovered....
. Generally these languages provided support for loading arrays of data "across" the PEs to be executed in parallel, and some even supported the unwinding of loops into array operations.

ILLIAC moves


When the computer was being built in the late 1960s, it was met with hostility by protesters who were suspicious of the University's tie with the Department of Defense
United States Department of Defense

The United States Department of Defense is the federal department charged with coordinating and supervising all agencies and functions of the government relating directly to national security and the Military of the United States....
 (through ARPA), and felt that the University had sold out to a conspiracy. The protests reached a boiling point on 9 May 1970, in a day of "Illiaction". Three months after the August 24th bombing at a University of Wisconsin mathematics building, the University of Illinois decided to back out of the project, and have it moved to a more secure location. The work was picked up by NASA
NASA

The National Aeronautics and Space Administration is an agency of the Federal government of the United States, responsible for the nation's public list of space agencies....
, then still cash-flush in the post-Apollo
Project Apollo

The Apollo program was a human spaceflight program undertaken by NASA during the years 1961?1975 with the goal of conducting manned moon landing missions....
 years and interested in almost anything "high tech". They formed a new Advanced Computing division, and had the machine moved to Moffett Field, California, home of Ames Research Center.

The move slowed development, and the machine was not completed until 1972. By this time the original $8 million estimated from the first design in 1966 had risen to $31 million, while the performance had dropped even further, from 1 GFLOPS to 250 MFLOPS to perhaps 100 MFLOPS with peaks of 150. NASA also decided to replace the B6500 with a PDP-10, which were in common use at AMES, but this required the development of new compilers and support software. When the ILLIAC was finally turned on in 1972 it was found to be barely operable, failing continually. Efforts to correct the reliability allowed it to run its first complete program in 1974, and go into full operation in 1975. Even "full operation" was somewhat limited; the machine was operated only Monday to Friday and had up to 40 hours of planned maintenance a week. The first full application was run on the machine in 1976, the same year the Cray-1
Cray-1

The Cray-1 was a supercomputer designed by a team including Seymour Cray for Cray Research. The first Cray-1 system was installed at Los Alamos National Laboratory in 1976, and it went on to become one of the best known and most successful supercomputers in history....
 was released with roughly the same performance.

Nevertheless the ILLIAC was increasingly used over the next few years, and Ames added their own FORTRAN version, CFD. On problems that could be parallelized the machine was still the fastest in the world, outperforming the CDC 7600
CDC 7600

The CDC 7600 was the Seymour Cray-designed successor to the CDC 6600, extending Control Data's dominance of the supercomputer field into the 1970s....
 by two to six times, and it is generally credited as the fastest machine in the world until 1981. For NASA the machine was "perfect", as its performance was tuned for programs running the same operation on lots of data, which is exactly what computational fluid dynamics
Computational fluid dynamics

Computational fluid dynamics is one of the branches of fluid mechanics that uses numerical methods and algorithms to solve and analyze problems that involve fluid flows....
 is all about. The machine was eventually decommissioned in 1982, and NASA's advanced computing division ended with it.

Burroughs was able to use the basic design for only one commercial system, the Parallel Element Processing Ensemble
Parallel Element Processing Ensemble

The Parallel Element Processing Ensemble was one of the very early parallel computing systems. This computer was designed and built in the mid 1970s by Burroughs Corporation at their Great Valley Labs engineering facility in Paoli, Pennsylvania....
, or PEPE. PEPE was designed to allow high-accuracy tracking of 288 incoming ICBM warheads, each one assigned to a modified PE. Burroughs built only one PEPE system, although a follow-on design was built by Bell Labs
Bell Labs

Bell Laboratories is the research organization of Alcatel-Lucent and previously of the American Telephone & Telegraph Company .Bell Laboratories has had its headquarters at Berkeley Heights, New Jersey, and it has research and development facilities throughout the world....
.

Aftermath


Although the ILLIAC effort ended in uninspiring results, attempts to understand the reasons for the failure of the ILLIAC IV architecture pushed forward research in parallel computing. During the 1980s a number of companies used the same approach to build even more parallel machines, with compilers that could make better use of the parallelism. The Thinking Machines
Thinking Machines

Thinking Machines Corporation was a supercomputer manufacturer founded in Waltham, Massachusetts in 1982 by W. Daniel Hillis and Sheryl Handler to turn Hillis's doctoral work at MIT on parallel computing architectures into a commercial product called the Connection Machine....
 CM-1 and CM-2
Connection Machine

The Connection Machine was a series of supercomputers that grew out of W. Daniel Hillis research in the early 1980s at Massachusetts Institute of Technology on alternatives to the traditional von Neumann architecture of computation....
 are excellent examples of the "classic" ILLIAC IV concept, although they also included far better interconnectivity between their PE's in order to avoid data bottlenecks that reduced the problem set suitable for use on the ILLIAC.

Most supercomputers of the era took another approach to higher performance, using a single very high speed vector processor
Vector processor

A vector processor, or array processor, is a Central processing unit design where the instruction set includes operations that can perform mathematical operations on multiple data elements simultaneously....
. Similar to the ILLIAC in concept at least, these processor designs loaded up many data elements into a single custom processor instead of a large number of low-powered ones. The classic example of this design is the Cray-1
Cray-1

The Cray-1 was a supercomputer designed by a team including Seymour Cray for Cray Research. The first Cray-1 system was installed at Los Alamos National Laboratory in 1976, and it went on to become one of the best known and most successful supercomputers in history....
, which had performance similar to the ILLIAC, but was able to provide this high performance on a much wider variety of problems, not just those that were highly parallel. There was more than a little "backlash" against the ILLIAC design as a result, and for some time the supercomputer market looked on massively parallel designs with disdain, even when they were successful. As Seymour Cray
Seymour Cray

Seymour Roger Cray was a United States electrical engineer and supercomputer architect who designed a series of computers that were the fastest in the world for decades, and founded the company Cray Research which would build many of these machines....
 famously quipped, "If you were plowing a field, which would you rather use? Two strong oxen or 1024 chickens?"

But time has proven the ILLIAC approach to be the better one for almost all scientific computing. Today, supercomputers are almost universally made up from large numbers of commodity computers, precisely the concept that the ILLIAC pioneered. Progress in compiler technology explains much of this, although the rapid, and perhaps unexpected, continued improvement in microprocessor design rendered custom vector designs slower in most workloads.

See also

  • Amdahl's law
    Amdahl's law

    Amdahl's law, also known as Amdahl's argument, is named after Computer architecture Gene Amdahl, and is used to find the maximum expected improvement to an overall system when only part of the system is improved....
  • ORDVAC
    ORDVAC

    The ORDVAC or Ordnance Discrete Variable Automatic Computer, an early computer built by the University of Illinois at Urbana-Champaign for the Ballistics Research Laboratory at Aberdeen Proving Ground, was based on the IAS machine architecture developed by John von Neumann, which came to be known as the von N...
  • ILLIAC I
    ILLIAC I

    The ILLIAC I , a pioneering computer built in 1952 by the University of Illinois at Urbana-Champaign, was the first computer built and owned entirely by a US educational institution, Manchester University UK having built Manchester 1 in 1948....
  • ILLIAC II
    ILLIAC II

    The ILLIAC II was a revolutionary super-computer built by the University of Illinois at Urbana-Champaign that became operational in 1962. The concept, proposed in 1958, pioneered ECL circuitry, pipelining, and transistor memory with a design goal of 100x speedup compared to ILLIAC I....
  • ILLIAC III
    ILLIAC III

    The ILLIAC III was a fine-grained SIMD pattern recognition computer built by the University of Illinois at Urbana-Champaign in 1966.This ILLIAC's initial task was image processing of bubble chamber experiments used to detect nuclear particles....
  • Parallel Element Processing Ensemble
    Parallel Element Processing Ensemble

    The Parallel Element Processing Ensemble was one of the very early parallel computing systems. This computer was designed and built in the mid 1970s by Burroughs Corporation at their Great Valley Labs engineering facility in Paoli, Pennsylvania....


External links

  • at bitsavers.org