The ACS-1 and ACS-360 are two related
supercomputer
A supercomputer is a type of computer with a high level of performance as compared to a general-purpose computer. The performance of a supercomputer is commonly measured in floating-point operations per second (FLOPS) instead of million instruc ...
s designed by
IBM
International Business Machines Corporation (using the trademark IBM), nicknamed Big Blue, is an American Multinational corporation, multinational technology company headquartered in Armonk, New York, and present in over 175 countries. It is ...
as part of the Advanced Computing Systems project from 1965 to 1969. Although the designs were never finished and no models ever went into production, the project spawned a number of organizational techniques and architectural innovations that have since become incorporated into nearly all
high-performance computers in existence today. Many of the ideas resulting from the project directly influenced the development of the
IBM RS/6000
The RISC System/6000 is a family of RISC-based (Reduced Instruction Set Computer-based) Unix servers, workstations and supercomputers made by IBM in the 1990s. The RS/6000 family replaced the IBM RT PC computer platform in February 1990 ...
and, more recently, have contributed to the
Explicitly Parallel Instruction Computing
Explicitly parallel instruction computing (EPIC) is a term coined in 1997 by the Itanium, HP–Intel alliance to describe a computing paradigm that researchers had been investigating since the early 1980s. This paradigm is also called ''Independe ...
(EPIC) computing paradigm used by
Intel
Intel Corporation is an American multinational corporation and technology company headquartered in Santa Clara, California, and Delaware General Corporation Law, incorporated in Delaware. Intel designs, manufactures, and sells computer compo ...
and
HP in the
Itanium
Itanium (; ) is a discontinued family of 64-bit computing, 64-bit Intel microprocessors that implement the Intel Itanium architecture (formerly called IA-64). The Itanium architecture originated at Hewlett-Packard (HP), and was later jointly dev ...
processors.
After the ACS project folded, the engineers were given the choice to rejoin other divisions of IBM. Many declined as it would require them to return to the east coast from California. A number formed MASCOR in 1970 but this was short-lived as they were unable to raise capital.
Gene Amdahl
Gene Myron Amdahl (November 16, 1922 – November 10, 2015) was an American computer architect and high-tech entrepreneur, chiefly known for his work on mainframe computers at IBM and later his own companies, especially Amdahl Corporation. ...
took the opportunity to start his own company, building IBM-compatible mainframe computers using the
ECL designs worked on for ACS.
Amdahl Corporation
Amdahl Corporation was an information technology company which specialized in IBM mainframe-compatible computer products, some of which were regarded as supercomputers competing with those from Cray Research. Founded in 1970 by Gene Amdahl, a for ...
's 470V/6 were both faster and less expensive than IBM's own high-end designs.
History
IBM and CDC
IBM introduced its first
supercomputer
A supercomputer is a type of computer with a high level of performance as compared to a general-purpose computer. The performance of a supercomputer is commonly measured in floating-point operations per second (FLOPS) instead of million instruc ...
, the
IBM 7030 Stretch
The IBM 7030, also known as Stretch, was IBM's first transistorized supercomputer. It was the fastest computer in the world from 1961 until the first CDC 6600 became operational in 1964."Designed by Seymour Cray, the CDC 6600 was almost three tim ...
, in May 1961. They had to withdraw it from the market when tests at the launch customer,
Los Alamos Scientific Laboratory
Los Alamos National Laboratory (often shortened as Los Alamos and LANL) is one of the sixteen research and development laboratories of the United States Department of Energy (DOE), located a short distance northwest of Santa Fe, New Mexico, in ...
, demonstrated it had very poor real-world performance. Almost immediately, IBM organized two development projects, Project X at the
IBM Poughkeepsie Laboratory and Project Y at the
IBM Thomas J. Watson Research Center. Project X was tasked with designing a machine that would run 10 to 20 times as fast as Stretch, while Y was to be 100 times faster.
In the spring of 1962,
Control Data Corporation
Control Data Corporation (CDC) was a mainframe and supercomputer company that in the 1960s was one of the nine major U.S. computer companies, which group included IBM, the Burroughs Corporation, and the Digital Equipment Corporation (DEC), the N ...
(CDC) announced that they had installed two computers at
Lawrence Radiation Laboratory
Lawrence may refer to:
Education Colleges and universities
* Lawrence Technological University, a university in Southfield, Michigan, United States
* Lawrence University, a liberal arts university in Appleton, Wisconsin, United States
Preparator ...
and had received a contract for a third, a much more powerful design. That new machine was officially announced in August 1963 as the
CDC 6600
The CDC 6600 was the flagship of the 6000 series of mainframe computer systems manufactured by Control Data Corporation. Generally considered to be the first successful supercomputer, it outperformed the industry's prior recordholder, the I ...
, causing IBM CEO
Thomas J. Watson Jr. to write a now-famous memo asking how it was that this small company could produce machines that outperformed those from IBM.
At a meeting in September 1963, IBM decided to shore up the high-end of what was then known as the New Product Line, or NPL. Project X was directed to implement the NPL
instruction set
In computer science, an instruction set architecture (ISA) is an abstract model that generally defines how software controls the CPU in a computer or a family of computers. A device or program that executes instructions described by that ISA, s ...
, becoming a high-end machine in that lineup. When NPL was launched in 1964 as the
System/360
The IBM System/360 (S/360) is a family of mainframe computer systems announced by IBM on April 7, 1964, and delivered between 1965 and 1978. System/360 was the first family of computers designed to cover both commercial and scientific applicati ...
, Project X became the Model 92, later renamed Model 91. Eventually, about a dozen machines in the Model 90 series would be sold.
Project Y was never directed to use NPL, as it was a longer-term project aimed purely at the scientific market. Development was assigned to Jack Bertram and his Experimental Computers and Programming Group and started in earnest in late 1963. Bertram brought in
John Cocke,
Frances Allen
Frances Elizabeth Allen (August 4, 1932August 4, 2020) was an American computer scientist and pioneer in the field of optimizing compilers. Allen was the first woman to become an IBM Fellow, and in 2006 became the first woman to win the Turing ...
,
Brian Randell
Brian Randell (born 1936) is a British computer scientist, and emeritus professor at the School of Computing, Newcastle University, United Kingdom. He specialises in research into software fault tolerance and dependability, and is a noted ...
, Herb Schorr, and
Edward H. Sussenguth, among others. Schorr developed the initial instruction set and recruited his former student,
Lynn Conway
Lynn Ann Conway (January 2, 1938 – June 9, 2024) was an American computer scientist, electrical engineer, and transgender activist.
In the 1960s, while working at IBM, Conway invented generalized dynamic instruction handling, a key advance ...
, to work on a system simulator.
Move to California
The System/360 was an immediate runaway success, but production line problems plagued deliveries and much of the company was dedicated to fixing them. Meanwhile, CDC announced they would be introducing a new machine that was 10 times the performance of the 6600. Watson was convinced that the 360 instruction set would not be suitable for the new design and was worried that development would be slowed by the turmoil at the labs due to the 360 problems. In the spring of 1965, he approved the creation of a new division in California that would be closer to their customers at the weapons labs. A building in
Sunnyvale, California
Sunnyvale () is a city located in the Santa Clara Valley in northwestern Santa Clara County, California, United States.
Sunnyvale lies along the historic El Camino Real (California), El Camino Real and U.S. Route 101 in California, Highway 1 ...
was purchased in 1965 and set up as the IBM Advanced Computing Systems. Max Paley would be the lab director.
At a steering meeting in August 1965, Paley, Bertram, and Schorr gave presentations on the design so far. The machine would use a 48-bit word length, as that was the standard for scientific computing. The machine would have a clock cycle time of 10 nanoseconds, about 10 times faster than the 6600, with six or seven internal cycles per clock. The
arithmetic logic unit
In computing, an arithmetic logic unit (ALU) is a Combinational logic, combinational digital circuit that performs arithmetic and bitwise operations on integer binary numbers. This is in contrast to a floating-point unit (FPU), which operates on ...
s (ALUs) that performed most of the mathematics would be
pipelined, as in the 6600, and it would dispatch multiple instructions per cycle.
Branching performance would be improved with a buffer that would begin executing both sides of the branch.
Harwood Kolsky gave a presentation on the various competing designs, while
Gene Amdahl
Gene Myron Amdahl (November 16, 1922 – November 10, 2015) was an American computer architect and high-tech entrepreneur, chiefly known for his work on mainframe computers at IBM and later his own companies, especially Amdahl Corporation. ...
and
Chen Tze-chiang talked about their work on the high-end 360 Model 92. Kolsky had worked at Los Alamos for seven years before joining the Stretch project, while Amdahl had left IBM after being passed over to lead Stretch development but returned to IBM Research in 1960 and joined the Project X effort. In late 1964, Amdahl took a teaching position at
Stanford University
Leland Stanford Junior University, commonly referred to as Stanford University, is a Private university, private research university in Stanford, California, United States. It was founded in 1885 by railroad magnate Leland Stanford (the eighth ...
, wanting to return to the west coast. In January 1965 he was named an
IBM Fellow
An IBM Fellow is a position at IBM appointed by the CEO. Typically only four to nine (eleven in 2014) IBM Fellows are appointed each year, in May or June. Fellow is the highest honor a scientist, engineer, or programmer at IBM can achieve.
Over ...
for his work on the Model 92. As a Fellow, Amdahl was entitled to work at any IBM facility of his choosing and decided to join ACS at the invitation of Bob Evans.
Even at this early meeting, Amdahl made the argument that it would make much more sense to make the ACS compatible with the 360, as had been the case with Project X. While it might run marginally slower than the ACS, due largely to it using having sixteen 32-bit registers instead of thirty-two 48-bit ones in the new concept, it would offer customers of the Model 92 an upgrade path to much higher performance and leverage all of the software for the 360, especially the
compiler
In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
technology developed for that machine.
Design matures
In early 1966 the Project Y design was finalized as ACS-1, with the only major change being the removal of the 192-bit extended floating-point format. In 1966, a new building with was built at 2800 Sand Hill Road in
Menlo Park, California
Menlo Park ( ) is a city at the eastern edge of San Mateo County, California, San Mateo County in the San Francisco Bay Area of California, United States. It is bordered by San Francisco Bay on the north and east; East Palo Alto, California, Eas ...
, near the
Stanford Linear Accelerator
SLAC National Accelerator Laboratory, originally named the Stanford Linear Accelerator Center,
is a federally funded research and development center in Menlo Park, California, United States. Founded in 1962, the laboratory is now sponsored ...
and the project moved there late in the year. A significant change to the design occurred during this period. Originally, the compiler was responsible for moving instructions out of a large
core memory
Core or cores may refer to:
Science and technology
* Core (anatomy), everything except the appendages
* Core (laboratory), a highly specialized shared research resource
* Core (manufacturing), used in casting and molding
* Core (optical fiber), ...
or
thin film memory
Thin-film memory is a high-speed alternative to magnetic-core memory developed by Sperry Rand in a government-funded research project.
Instead of threading individual ferrite cores on wires, thin-film memory consisted of 4-micrometer thick do ...
store into a smaller cache of
static RAM
Static random-access memory (static RAM or SRAM) is a type of random-access memory (RAM) that uses latching circuitry (flip-flop) to store each bit. SRAM is volatile memory; data is lost when power is removed.
The ''static'' qualifier differ ...
(although that term was not in use at the time) inside the CPU. Reviewing the system, Schorr and Dick Arnold concluded it would not work, and decided to reimplement it as a single-level with hardware caching of 32 or 64 kWords.
Another concept developed for the ACS was dynamic instruction scheduling, or DIS. The ALU and indexing units, which calculated addresses, both had six-slot buffers from which it could select two instructions to execute out-of-order. This allowed the system to execute queued instructions while earlier instructions were waiting for data from memory or previous calculations. The outputs from these calculations being executed out of order would then be placed back in memory at the correct time, giving the illusion that everything had been executed in the order it was found in the
machine code
In computer programming, machine code is computer code consisting of machine language instructions, which are used to control a computer's central processing unit (CPU). For conventional binary computers, machine code is the binaryOn nonb ...
. Lynn Conway, who had been hired to develop a software simulation of the ACS, developed a system that used a bit-matrix to track which instructions were ready to be executed and which were waiting.
Using the simulator, Conway benchmarked a number of high-performance computing workloads against the
IBM 7090
The IBM 7090 is a second-generation Transistor computer, transistorized version of the earlier IBM 709 vacuum tube mainframe computer that was designed for "large-scale scientific and technological applications". The 7090 is the fourth member o ...
, CDC 6600 and
S/360 Model 91. In comparison to the 7090, IBM's older scientific offering, ACS-1 would perform the Lagrangian Hydrodynamics Calculation (LHC) 2,500 times faster. On the more complex Neutron Diffusion (ND) code, it outperformed the 7090 by almost 1,300 times, and was about 60 times as fast as the 6600.
Allen, Cocke, and Jim Beatty led the development of the compilers for the machine. This represented a significant effort as the system was to be highly advanced and aggressively optimize code. Among its features was the ability to unwind loops, schedule instructions around the
basic block
In compiler construction, a basic block is a straight-line code sequence with no branches in except to the entry and no branches out except at the exit. This restricted form makes a basic block highly amenable to analysis. Compilers usually decom ...
concept, and separate those optimizations that were code-based vs. platform-based. The compiler would be used by both a
PL/1
PL/I (Programming Language One, pronounced and sometimes written PL/1) is a procedural, imperative computer programming language initially developed by IBM. It is designed for scientific, engineering, business and system programming. It has b ...
front-end as well as an expanded version of
Fortran IV.
In a November 1967 project review, Herb Schorr outlined a delivery plan that would ship the first machine in 1971. The plan estimated that over 100,000 lines of Fortran and assembly code would be needed for the
operating system
An operating system (OS) is system software that manages computer hardware and software resources, and provides common daemon (computing), services for computer programs.
Time-sharing operating systems scheduler (computing), schedule tasks for ...
and nearly 70,000 lines for the compilers, assembler, and library routines. He estimated the cost of development to be $15 million for the software alone.
Design "shootout"
Amdahl continued to agitate for a 360-compatible version of the machine. In January 1967,
Ralph L. Palmer asked
John Backus
John Warner Backus (December 3, 1924 – March 17, 2007) was an American computer scientist. He led the team that invented and implemented FORTRAN, the first widely used high-level programming language, and was the inventor of the Backus–N ...
,
Robert Creasy, and Harwood Kolsky to review the project and Amdahl's concept. Kolsky concluded that the 360-compatible version would be too difficult, and pointed out that the ACS was aimed at the CDC 6600 market, not the 360's, so if the customer was interested in compatibility, 6600 compatibility would seem more useful. The next month, Amdahl once again argued for 360 compatibility for marketing reasons.
Amdahl's continued arguments for 360 compatibility placed him increasingly at odds with Bertram. Bertram responded by "quarantining" him and making sure that no one was allowed to talk to him. Whenever someone would visit, within minutes someone else would arrive and call the first visitor into a meeting. Around the same time, another ACS team member, circuit designer John Earle, was being removed from the main team due to his working style which was causing friction in the team. Earle had been beaten up in a fight in Philadelphia, and when he returned from the hospital Bertram assigned Earle to Amdahl, apparently as a form of punishment.
This backfired badly, as over the next month Amdahl was able to convince Earle that a 360-compatible version was possible, and Earle went ahead and designed it. The result was the Amdahl-Earle Computer, or AEC/360. Using many of the concepts in ACS-1 they produced a design that was slightly slower than it, but cost perhaps 75% as much to build, with only 90,000 gates instead of 270,000 (a gate requires about five transistors using the ECL logic of the era). Much of the reduction was due to the fewer and smaller registers, which accounted for half of the gates in the ACS-1. The loss of performance due to fewer registers was to be made up by a faster 8 nanosecond clock, possible due to a streamlined internal design.
In December 1967, Kolsky was sent to meet with Amdahl to get a more detailed description of the proposed design. Around the same time, Amdahl began calling people within IBM to tell them about the new design. As word of the concept spread around the System Development Division in New York, the division's vice president
Erich Bloch
Erich Bloch (January 9, 1925 – November 25, 2016) was a German-born American electrical engineer and administrator. He was involved with developing IBM's first transistorized supercomputer, 7030 Stretch, and mainframe computer, System/360. He ...
began to organize an internal review. The ACS team responded with a "frantic" redesign that reduced the number of gates from 270,000 to 200,000 with little effect on performance, which strongly suggested it was overdesigned.
Bloch selected Carl Conti from IBM Poughkeepsie to handle the review, which occurred in March 1968. Amdahl presented performance estimates based on hand-calculated cycle counts. Conti accepted Amdahl's arguments that on integer benchmarks, the AEC/360 would be up to five times as fast as the ACS-1, it would be up to 2.5 times slower on floating-point, and the complex branching system of ACS seemed to offer 10 to 20% at best and could be adapted to the AEC if desired. But a key point made by Conti was that if the ACS system was so reliant on the compilers for its performance, moving that code to some other machine could result in far different outcomes and that could be considered a disadvantage. He also concluded that while the AEC would be closer to 108,000 gates, it was still half as complex as the ACS.
A final review was performed in April, but this was brief and seemingly already decided. In May, IBM announced the ACS-1 would be cancelled and the AEC/360, to be known as the ACS-360 from that point, would move forward. Although Amdahl's competing design had much to do with this, it was not the only reason. Amdahl had also argued that the $15 million would better be spent on improving the operating systems on the 360, which would improve the entire lineup, not just the AEC. But perhaps the most serious blow to the ACS was the continued success of the 360. In January 1968,
NASA
The National Aeronautics and Space Administration (NASA ) is an independent agencies of the United States government, independent agency of the federal government of the United States, US federal government responsible for the United States ...
had taken delivery of a 360 Model 95, which IBM described as "the fastest, most powerful computer now in user operation." Although the ACS would have outperformed the Model 95 by a wide margin, by this time Watson Jr. was considering withdrawing from the supercomputer market entirely.
Many of the retrospective articles on the ACS project note that the original machine would have been a world leader. Conway notes that "In hindsight, it is now recognized that had the ACS-1 been successfully built, it would have been the premier supercomputer of the era." The decision to cancel the original design rested mostly on the cycle counts which had not been tested as the simulator she had developed had not been modified to use the new instruction set. Likewise, Amdahl's claim of an 8 nanosecond cycle was accepted by the Conti review although Mark Smotherman suggests it is not realistic.
Cancellation
Most of the ACS upper management team left, and Amdahl was placed in command. The AEC/360 continued development along the proposed lines, with the only major change being the introduction of generalized
register renaming
In computer architecture, register renaming is a technique that abstracts logical processor register, registers from physical registers.
Every logical register has a set of physical registers associated with it.
When a machine language instructio ...
as part of the out-of-order system and changes to the
branch prediction
In computer architecture, a branch predictor is a digital circuit that tries to guess which way a branch (e.g., an if–then–else structure) will go before this is known definitively. The purpose of the branch predictor is to improve the flow ...
system to work with the 360 instruction set.
While calculating the cost of the machine, Amdahl concluded that there was no way its sales could turn a profit. This was a serious risk to the company, as introducing a high-end machine that was guaranteed to lose money could be seen as anti-competitive behaviour, an attempt to take the market away from companies like CDC. IBM faced a similar problem with Stretch, but over time it was shown that the R&D in that project had been widely used in the company and if it was billed out then it was slightly positive. To allow ACS/360 to more clearly turn a profit, Amdahl suggested producing three models of the same basic system, the original ACS/360, a smaller model with the performance, and an even smaller version with , which would still make it the fastest machine in IBM's lineup. This proposal was rejected.
In May 1969, IBM upper management instead decided to cancel the entire project, apparently at Amdahl's suggestion. What had initially been intended to be a project to compete with the fast-moving CDC had now stretched on for the better part of a decade and showed little evidence that it would release a machine in the short term. Amdahl later claimed its cancellation was due primarily to it upsetting IBM's carefully planned pricing structure. The company as a whole had an understanding that machines above a certain performance level would always lose money and that introducing a machine that was as fast as the ACS/360 would require it to be priced in a way that would force their other machines to be reduced in price.
[ He has also claimed to have heard rumors that it had been deliberately set up to fail so that the technology could be used in other projects and the R&D cost written off on taxes.
Shortly after the announcement of the project's cancellation, in August 1969, IBM announced the IBM System/360 Model 195, a re-implementation of the Model 91 using ]integrated circuit
An integrated circuit (IC), also known as a microchip or simply chip, is a set of electronic circuits, consisting of various electronic components (such as transistors, resistors, and capacitors) and their interconnections. These components a ...
s that made it twice as fast as the Model 85, which at that time was the fastest machine in the lineup. To address the high-end market, a vector processing
In computing, a vector processor or array processor is a central processing unit (CPU) that implements an instruction set where its Instruction (computer science), instructions are designed to operate efficiently and effectively on large Array d ...
task force was started in Poughkeepsie.
When the ACS project was cancelled, many of the engineers were not interested in returning to the main IBM research campus in New York and wished to remain in California. Some ended up at IBM's hard drive
A hard disk drive (HDD), hard disk, hard drive, or fixed disk is an electro-mechanical data storage device that stores and retrieves digital data using magnetic storage with one or more rigid rapidly rotating hard disk drive platter, pla ...
research facility in San Jose, California
San Jose, officially the City of San José ( ; ), is a cultural, commercial, and political center within Silicon Valley and the San Francisco Bay Area. With a city population of 997,368 and a metropolitan area population of 1.95 million, it is ...
, while many others left to form a new company, Multi Access System Corp, or MASCOR. This failed to raise capital and folded after only a few months. Amdahl resigned in September 1970 and formed his own company to build 360-compatible machines, introducing the Amdahl 470/6 in 1975. Amdahl Corporation
Amdahl Corporation was an information technology company which specialized in IBM mainframe-compatible computer products, some of which were regarded as supercomputers competing with those from Cray Research. Founded in 1970 by Gene Amdahl, a for ...
would become a major vendor of IBM-compatible systems into the 1980s, with a 20% or better market share through the 1970s and 80s.
Influence
Although neither the ACS-1 nor the ACS-360 was ever manufactured, the IBM Advanced Computing Systems group responsible for their design developed architectural innovations and pioneered a number of RISC
In electronics and computer science, a reduced instruction set computer (RISC) is a computer architecture designed to simplify the individual instructions given to the computer to accomplish tasks. Compared to the instructions given to a comp ...
CPU design techniques that would become fundamental to the design of modern computer architectures and systems:
* Aggressive reduction in the number of logic gate levels for pipeline stages to reduce the cycle time
* Tight integration between processor and memory
* Cache memory with streamlined I/O to/from cache
* Compiler optimization techniques
* Virtual-memory operating systems
* Multiple instruction decode and issue (a first)
* Use of a branch target buffer (a first)
* Multithreading implemented in hardware (a first for IBM)
* Dynamic instruction scheduling/out-of-order execution
In computer engineering, out-of-order execution (or more formally dynamic execution) is an instruction scheduling paradigm used in high-performance central processing units to make use of instruction cycles that would otherwise be wasted. In t ...
* Hardware register renaming
In computer architecture, register renaming is a technique that abstracts logical processor register, registers from physical registers.
Every logical register has a set of physical registers associated with it.
When a machine language instructio ...
* Instruction predication
* Level-sensitive scan design
Within the field of electronics Level-sensitive scan design (LSSD) is part of an integrated circuit manufacturing test process. It is a DFT scan design method which uses separate system and scan clocks to distinguish between normal and test mode ...
(used by IBM)
* Fixed-head hard disks
* Air-cooled high-speed LSI circuits
* Advanced simulation tools used in the design process
See also
* IBM Future Systems project, a contemporary project to develop machines that could directly run high-level programming language
A high-level programming language is a programming language with strong Abstraction (computer science), abstraction from the details of the computer. In contrast to low-level programming languages, it may use natural language ''elements'', be ea ...
s.
References
Citations
Bibliography
*
*
*
External links
IBM Advanced Computing Systems (ACS) — 1961–1969
— Documentation project for the IBM ACS-1 supercomputer maintained by Mark Smotherman
{{IBM
Advanced Computing Systems project
Advanced Computing Systems project