The ENIAC
The Moore School and the calculation problem
The Moore School had been one of the leading electrical engineering schools in the United States since the 1920s. It had been involved in the early development of alternating-current power systems, of high-voltage transmission, of electronic amplification, and of the early electronic computing machines of the late 1930s and early 1940s. The school was led in the 1930s and 1940s by Harold Pender, the dean, and by Irvin Travis and others. By 1942, when the United States entered the Second World War, the Moore School was already heavily involved in military electronics research, including the development of radar and of fire-control systems, and the school had a substantial team of graduate students and research associates working on classified projects.
The computing problem that brought the ENIAC into being was the production of ballistics tables. The United States Army Ordnance Department needed firing tables for every gun in service and for every shell in inventory, with the tables giving the elevation, the azimuth, the fuze-setting, and the time of flight for each combination of gun, shell, range, and weather. A complete set of tables for a single gun might require several hundred individual calculations, and each calculation required the solution of a non-linear differential equation with no closed-form solution. Before 1940, the tables were produced by human computers, the human calculators organised into squads at the Ballistic Research Laboratory at the Aberdeen Proving Ground, who worked through the calculations using mechanical desk calculators. The Aberdeen laboratory had a permanent computing staff of around two hundred, but the volume of tables required for the expanding war exceeded the capacity of the human computers. By 1942, the Aberdeen laboratory had a backlog of several months of uncomputed tables, and the table production was a serious bottleneck in the prosecution of the war.
Lieutenant Herman Goldstine, a mathematician with the Army Ordnance Department, was assigned in 1942 to oversee the table production. Goldstine had studied mathematics at the University of Chicago and had worked with the Aberdeen laboratory on a number of mathematical problems. Goldstine visited the Moore School in the spring of 1942 to inquire about the possibility of building an electronic computing device. He met John Mauchly, who had been working on the idea of an electronic computing machine since the mid-1930s, and who had published a short paper on the subject in 1942. Mauchly had been thinking about electronic computing since the late 1930s, and had discussed the idea with colleagues at Ursinus College, where he taught before joining the Moore School faculty in 1941. Mauchly introduced Goldstine to J. Presper Eckert, a brilliant young electrical engineer who had been working on similar problems since his undergraduate days. Eckert was the senior research associate in the Moore School at the time, with a particular interest in vacuum-tube electronics. Goldstine was convinced by the technical possibility of the proposal, and he returned to Aberdeen with the proposal that the Moore School should be contracted to build an electronic computing device. The proposal was approved in the summer of 1942, and the contract was signed on 9 April 1943. The total contract price was $486,804.22, and the contract specified delivery in 1945.
The design of the machine
The ENIAC was designed to perform decimal arithmetic, not binary. This choice, which was made by Mauchly and Eckert in 1943 and defended by them throughout the project, was a major departure from the design of the contemporary British computing efforts, which were based on binary. The choice of decimal was motivated by the problem of ballistics, where the engineers of the Aberdeen laboratory were accustomed to thinking in decimal arithmetic, and by the engineering difficulty of building a high-precision decimal counter in vacuum tubes. Mauchly and Eckert argued that the decimal representation would make the ENIAC easier to use for the ballistics problem, and that the additional complexity of decimal counting was justified by the operational advantages. The choice of decimal arithmetic would prove to be one of the most distinctive features of the ENIAC, and one of the most distinctive features of American computing practice, which would continue to favour decimal and hexadecimal representations for decades.
The basic element of the ENIAC was the decimal ring counter, a circuit of ten vacuum tubes arranged in a ring that stored a single decimal digit by the position of the active tube. Each ring counter contained ten vacuum tubes, with one tube conducting at any time. The position of the active tube represented the digit, and the ring could be stepped by a clock pulse to advance the count. The ENIAC contained thirty ring counters in its initial configuration, providing thirty decimal digits of storage for the two accumulators and the divisor/multiplier register. The ring counters were the most novel element of the ENIAC’s electronics, and they were the principal engineering challenge of the design. The challenge was to ensure that the ring counter would function reliably when one of the ten tubes was conducting and the others were cut off, with the conduction switching between the ten tubes as the count progressed. Eckert solved the problem by using a single direct-current-counter that was stable in both states, and by carefully tuning the cutoff characteristics of the ten tubes.
The accumulator was the main computational unit of the ENIAC, with twenty ring counters providing twenty decimal digits of precision. The ENIAC had two accumulators, each capable of holding a twenty-digit decimal number. The ENIAC also had a multiplier/divider/square-rooter unit that performed the multiplication and division operations, and a function table unit that read constants from the function tables, the read-only memory of the ENIAC. The function tables were mechanical switches that stored numerical constants in the form of switch positions, with each function table containing up to 104 decimal digits of constant data in 28 function tables per panel. The total ENIAC had 24 function table panels, providing a substantial read-only memory. The function tables were read by the ENIAC during the course of a calculation, with the appropriate constant being selected by the address set on the function table panel.
The programming of the ENIAC was done by setting switches and routing cables. The ENIAC had twenty accumulators and other units, with the units being interconnected by a web of cables that could be patched at a central switching panel. A calculation was set up by patching the right units together, by setting the initial conditions on the accumulators and the function tables, and by setting the sequence of operations on the master programmer. The master programmer was a sequencing device that stepped through the operations of the calculation in the order in which the operations had been set, with the sequencing being controlled by the settings of the master programmer. The amount of work required to set up the ENIAC for a calculation was substantial, with a typical calculation requiring several days of switch-setting and cable-patching by a team of several people. The ENIAC was not, in the modern sense, programmable by software. The ENIAC was programmable by hardware configuration.
Building the machine
The construction of the ENIAC began in the summer of 1943 and continued until the autumn of 1945, when the first ballistics calculation was run on the completed machine. The construction involved the assembly of seventeen thousand vacuum tubes, of which the most expensive were the Western Electric 6SN7 double triodes used in the ring counters. The vacuum tubes were tested before assembly, with each tube being burned in for several weeks to eliminate infant mortality. The Moore School set up a tube-testing facility that processed several thousand tubes per week, with the rejected tubes being set aside for use in less critical applications. The reliability of the vacuum tubes in the ENIAC was a major concern, and the engineering effort devoted to the tube selection was substantial. The completed ENIAC had a mean time between failures of about forty minutes, with the failures being almost always a single vacuum tube. The mean time to failure was improved as the design progressed, and the ENIAC in its later years ran for hours between failures.
The construction team included Arthur Burks, a graduate student in electrical engineering who became the chief engineer of the ENIAC, and a substantial group of other graduate students and research associates. The women who did much of the programming work and the ballistics calculations on the ENIAC in the 1940s were largely recruited from the Philadelphia area. Six women, known as the ENIAC programmers, were trained to program the ENIAC by setting switches and routing cables: Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas, and Ruth Lichterman. The women worked in teams of two at the ENIAC, with each team setting up the machine for a calculation and running the calculation. The work was painstaking, with a single calculation often requiring several days of preparation. The women were the first computer programmers, although the term “programmer” had not yet been coined for this work.
The ENIAC was completed in late 1945 and demonstrated in public on 14 February 1946. The dedication ceremony was attended by several hundred people, including representatives of the Army, the University of Pennsylvania, and the press. The ENIAC ran a ballistics calculation at the ceremony, with the results being read off the accumulators and printed on the console. The ENIAC was then disassembled and moved to the Aberdeen Proving Ground, where it was installed in Building 328 and operated by the Army. The ENIAC at Aberdeen was used for ballistics calculations, for weather prediction, and for atomic energy calculations. The ENIAC was operated continuously until 1955, when it was decommissioned. Parts of the ENIAC are now in the Smithsonian Institution, in the University of Pennsylvania, and in other museum collections.
What the ENIAC was and what it was not
The ENIAC was the first general-purpose electronic digital computer. The phrase “general-purpose” is important. Earlier electronic computing devices had been built for special purposes. The Colossus, built at Bletchley Park in 1943 and used for the cryptanalysis of German communications, was an electronic computing device, but it was hard-wired for the cryptanalysis problem and could not be readily reconfigured for other calculations. The Atanasoff-Berry Computer, built at Iowa State College in 1939 and 1942, was an electronic computing device, but it was hard-wired for the solution of systems of linear equations. The Zuse Z3, built in Germany in 1941, was an electronic computing device, but it was built with telephone relays and was destroyed in the bombing of Berlin in 1944. The ENIAC was the first electronic computing device that could be reconfigured by the setting of switches and the patching of cables to perform different calculations, and that could be operated on numerical data in the form of decimal digits. The ENIAC was the first electronic computing device that qualified as a general-purpose computer.
The ENIAC was not, however, a stored-program computer in the modern sense. The ENIAC’s program was not stored in the computer’s memory; the program was set by the patching of cables and the setting of switches. The change of program was a manual operation. The ENIAC could not, therefore, modify its own program during the course of a calculation. The ENIAC’s structure was based on a distinction between the data, which were stored in the ring counters, and the program, which was set in the switches. The distinction between data and program, which would later be dissolved by the stored-program concept, was preserved in ENIAC.
The stored-program concept was developed by John von Neumann in 1945 in a document known as the First Draft of a Report on the EDVAC, prepared for the Army by von Neumann and circulated to a small group of researchers at the Moore School, at Aberdeen, and elsewhere. The report described a computer in which the program was stored in the computer’s memory in the same form as the data, and in which the computer could modify its own program during the course of a calculation. The concept was based on von Neumann’s experience with the ENIAC project, in which the limitations of the ENIAC’s programming had become evident. The First Draft was distributed to a wide group of researchers, and the concept was incorporated into the EDVAC, the successor machine at the Moore School, and into the IAS machine at the Institute for Advanced Study, the Whirlwind at MIT, the EDSAC at Cambridge, and other post-war machines. The stored-program concept became the basis of the modern computer.
\n\n
How the ENIAC compares with its contemporaries
The ENIAC was not the only electronic computing device under construction during the Second World War. The Colossus at Bletchley Park in England was completed in February 1944 and was used for the cryptanalysis of the German Lorenz cipher. The Colossus was built by Tommy Flowers of the British Post Office Research Station, with funding from the British Foreign Office. The Colossus was an electronic special-purpose computer, with the program of the Colossus being fixed by the wiring of the machine. The Colossus was faster than the ENIAC for its specific problem, with the Colossus reading five thousand characters per second from a paper tape. The Colossus was kept secret after the war, with the existence of the Colossus not being made public until the 1970s.
The Zuse Z4, built in Germany by Konrad Zuse, was completed in 1945 and was the first commercial digital computer. The Z4 was a relay-based computer, with the Z4 using electromechanical relays rather than vacuum tubes. The Z4 was completed in Zurich after the war, with the Z4 being used for the structural calculations of the Swiss Federal Institute of Technology. The Z4 was the first commercial computer, with the Z4 being sold to a private customer in 1950.
The IBM ASCC (Automatic Sequence Controlled Calculator), also called the Harvard Mark I, was completed in 1944 and was used for the calculation of mathematical tables. The Harvard Mark I was a relay-based computer, with the Mark I using electromechanical relays rather than vacuum tubes. The Harvard Mark I was the first computer to be used in a scientific publication, with the Mark I being used by Howard Aiken and his team at Harvard for the calculation of the Bessel functions. The Harvard Mark I established the basic pattern of computer research at American universities.
The ENIAC was distinctive in its use of vacuum tubes for the basic logic, with the ENIAC’s vacuum-tube design being the model for the next generation of electronic computers. The ENIAC was distinctive in its use of decimal arithmetic, with the ENIAC’s decimal arithmetic being the model for the next generation of American commercial computers. The ENIAC was distinctive in its scale, with the ENIAC’s 17,468 vacuum tubes being the largest electronic system yet built. The ENIAC was distinctive in its application, with the ENIAC being built for a specific application (the calculation of ballistics tables) rather than as a research project. The ENIAC’s combination of vacuum tubes, decimal arithmetic, large scale, and specific application was the model for the post-war American computer industry.
The ENIAC in the history of computing
The ENIAC is best understood as the prototype of the modern stored-program computer, even though the ENIAC itself was not a stored-program computer. The ENIAC’s accumulators, function tables, and master programmers were the template for the registers, memory, and program counters of the later computers. The ENIAC’s vacuum-tube ring counters were the template for the vacuum-tube flip-flops of the later computers. The ENIAC’s patch cables were the template for the cable connectors of the later computers. The ENIAC’s switch banks were the template for the configuration switches of the later computers. The ENIAC’s decimal arithmetic was the template for the binary, octal, decimal, and hexadecimal arithmetic of the later computers.
The ENIAC’s project established the basic engineering pattern for the field. The pattern combined research on the design of the basic computing devices, with research on the design of the basic memory devices, with research on the design of the basic input-output devices, and with research on the design of the basic power and cooling systems. The pattern was first established at the Moore School, with the Moore School contributing to each of the basic areas. The pattern was adopted by other projects, including the EDVAC at the Moore School, the IAS machine at the Institute for Advanced Study, the Whirlwind at MIT, the EDSAC at Cambridge, and the Manchester Baby at the University of Manchester. The pattern was the basis of the modern computer industry.
The ENIAC was also a defining moment in the history of large-scale electronic engineering. The ENIAC was the first large-scale electronic system, with the ENIAC containing more electronic components than any previous system. The ENIAC’s vacuum tubes, crystal diodes, relays, resistors, capacitors, and connectors were the basic electronic components of the post-war electronic industry. The ENIAC’s techniques for the selection of reliable components, the testing of large-scale systems, the maintenance of large-scale systems, and the documentation of large-scale systems were the basic engineering techniques of the post-war electronic industry.
The women programmers in their own words
The ENIAC programmers were interviewed in the 1990s and early 2000s, after the Computer History Museum campaign to recognise them. The interviews preserve the women’s recollections of the work. Kay McNulty Mauchly (who later married John Mauchly) remembered being recruited to the Moore School by Sister Mary Kenna, the head of the mathematics department at Chestnut Hill College. Betty Holberton remembered being recruited by Adele Goldstine, who had organised the women programmers for the ENIAC project. Fran Bilas remembered setting switches on the ENIAC by hand, with the switches being labelled by hand with their function. Marlyn Wescoff remembered the ENIAC’s reliability, with the machine often running for hours at a time without failure. Ruth Lichterman remembered the social isolation of the work, with the women working in the same room as the machine, with the machine’s cooling fans making the room cold even in summer. Betty Snyder remembered the precision of the work, with the women’s job being to set up the ENIAC for a calculation, run the calculation, and report the results to the Aberdeen laboratory.
The ENIAC programmers’ work established the basic pattern of computer programming, with the women developing the techniques of switch-setting, cable-patching, operator-dispatching, and result-recording. The women’s work established the basic pattern of computer documentation, with the women writing the first operator’s manuals for the ENIAC. The women’s work established the basic pattern of computer testing, with the women developing the first procedures for testing the ENIAC’s operations. The women’s work established the basic pattern of computer debugging, with the women developing the first procedures for diagnosing and isolating ENIAC failures. The women’s work established the basic pattern of computer instruction, with the women training the next generation of ENIAC operators. The women’s work was, in this sense, the origin of the field of computer science.
The path from ENIAC to stored-program computers
The ENIAC was retired in 1955, replaced by more modern machines, but the impact of the ENIAC on the field of computing was decisive. The successor machine at the Moore School, the EDVAC, was begun in 1945 and completed in 1949, and the EDVAC was the first computer to incorporate the stored-program concept. The EDVAC was built by Eckert and Mauchly, who had left the Moore School in 1946 to found their own computer company, the Eckert-Mauchly Computer Corporation. The corporation was acquired by Remington Rand in 1950, and the first commercial computer, the UNIVAC I, was delivered in 1951. The UNIVAC I was used by the United States Census Bureau for the 1950 census, and it became the first computer to be used in a presidential election, when CBS used a UNIVAC I to forecast the result of the 1952 presidential election based on early returns. The UNIVAC I was followed by a generation of commercial computers that used vacuum tubes as their principal logic elements, including the IBM 701 (1952) and the IBM 650 (1954).
The transition from vacuum-tube computers to transistor computers was the work of the late 1950s and early 1960s, with the first all-transistor computer being the TRADIC at Bell Labs in 1954 and the first commercial all-transistor computer being the IBM 1401 in 1959. The transition from transistors to the microprocessor, the single-chip computer that integrates the central processing unit of a computer onto a single integrated circuit, was the work of the 1970s. The Intel 4004, released in 1971, was the first commercial microprocessor. The Intel 8080, released in 1974, was the first microprocessor to be widely used in personal computers. The transition from microprocessors to the modern integrated graphics processing unit was the work of the 1990s and 2000s, with the NVIDIA GeForce 256 of 1999 being widely considered the first modern GPU.
The ENIAC project established the basic organisational pattern that computer science departments and computer companies would follow for the next generation. The pattern combined research in the physics and engineering of computing devices, with research in the mathematics and logic of computation, and with research in the practical application of computers to scientific and administrative problems. The pattern was first established at the Moore School, at the Institute for Advanced Study, at MIT, and at the University of Manchester, with each of these institutions contributing to the formation of the field. The Moore School closed in 1970, with its undergraduate divisions merged into the Wharton School and the School of Engineering and Applied Science. The Moore School’s computer science program continued as part of the Department of Computer and Information Science.
The ENIAC itself was the source of several distinct lines of scientific and technical development. The first was the development of the decimal ring counter as a reliable vacuum-tube circuit, with the technology developed for the ENIAC being applied to a generation of vacuum-tube computers. The second was the development of the function table as a read-only memory, with the technology developed for the ENIAC being applied to the read-only memory of various computers in the 1950s and 1960s. The third was the development of the patch cable as a programming tool, with the cable-patching system of the ENIAC being the prototype for the cable-patching systems of the early 1950s. The fourth was the development of the master programmer as a sequencing device, with the master programmer of the ENIAC being the prototype for the sequencer and the microsequencer of later machines.
The legacy of the ENIAC
The ENIAC was a defining moment in the history of computing. The ENIAC was the first machine to demonstrate the basic logic of an electronic digital computer, with the system of accumulators, function tables, and master programmers being the template for the structure of the early electronic computers. The ENIAC was the first machine to demonstrate the basic principle of electronic computing, with the decimal ring counter being the prototype for the binary counters of later computers. The ENIAC was the first machine to demonstrate the basic principle of computer programming, with the system of switches and patch cables being the prototype for the programming systems of later computers. The ENIAC was the first machine to demonstrate the basic principle of computer debugging, with the system of detecting and isolating failing vacuum tubes being the prototype for the debugging procedures of later computers.
The ENIAC was also a defining moment in the history of engineering. The ENIAC was the largest electronic device that had been built up to that time, and the engineering effort to build the ENIAC required the development of new techniques for the layout of large-scale systems, for the selection of reliable vacuum tubes, for the testing of large-scale electronic systems, and for the maintenance of large-scale electronic systems. The techniques developed for the ENIAC were applied to the next generation of electronic computers, and they became the basic engineering practices of the computer industry. The ENIAC was, in this sense, the origin of the field of electronic engineering as a separate discipline.
The ENIAC was also a defining moment in the history of women in computing. The ENIAC programmers — Kay McNulty, Betty Jennings, Betty Snyder, Marlyn Wescoff, Fran Bilas, and Ruth Lichterman — were the first computer programmers in the modern sense, and they were the first women to work as professional computer programmers. The women were recruited from the Philadelphia area, with most of them having degrees in mathematics or physics from local colleges. The women worked in teams of two at the ENIAC, with each team setting up the machine for a calculation and running the calculation. The women were the first to develop the techniques of computer programming, including the techniques of switch-setting, cable-patching, and operator-dispatching. The women were recognised for their work in the 1990s, when the Computer History Museum in Mountain View, CA, dedicated a permanent exhibit to the ENIAC programmers. The women were inducted into the International Women in Technology Hall of Fame in 1997.
The ENIAC was decommissioned in 1955 and parts of it were donated to the Smithsonian Institution and to other museums. The Moore School was closed in 1970, with its computer science program continuing as part of the Department of Computer and Information Science. The original site of the ENIAC, Room 340 of the Moore School, was demolished in 1970. The ENIAC’s panel layout was reproduced in 2006 in the lobby of the Moore School Building at the University of Pennsylvania. The ENIAC’s developers, John Mauchly and J. Presper Eckert, were awarded the National Medal of Technology and Innovation in 1999 for their contributions to the development of the ENIAC. The ENIAC was inducted into the International Electrochemical Society Hall of Fame in 2010.
The ENIAC remains the central reference point for the history of computing. The ENIAC was the first general-purpose electronic digital computer, and the ENIAC project was the first project to demonstrate that a large-scale electronic computer could be built and operated. The ENIAC was the first computer to be used in a national emergency, and the ENIAC project was the first to demonstrate the strategic value of electronic computing. The ENIAC was the first computer to be recognised as a defining technology of the modern era, and the ENIAC project was the first to demonstrate the social value of electronic computing. The ENIAC remains the central reference point for the field, and the ENIAC project remains the template for the development of large-scale computing systems.
References
\n
- \n
- John Mauchly and J. Presper Eckert — Science History Institute, 2020.
- ENIAC in Action: Inventing the Modern Electronic Computer — Thomas Haigh, Mark Priestley, and Crispin Rope, MIT Press, 2016.
- ENIAC: The Triumphs and Tragedies of the World’s First Computer — Scott McCartney, Walker, 1999.
- The Computer from Pascal to von Neumann — Herman H. Goldstine, Princeton University Press, 1972.
- A History of Computing in the Twentieth Century — N. Metropolis, J. Howlett, and Gian-Carlo Rota, eds., Academic Press, 1980.
- The ENIAC: The First General-Purpose Electronic Computer — J. Presper Eckert and John Mauchly, Annals of the History of Computing, IEEE, 1981.
- The ENIAC Programmers — The Centre for Computing History, Cambridge, 2010.
- ENIAC: The Birth of the Computer Age — J. Presper Eckert, in IEEE Annals of the History of Computing, vol. 18, no. 1, 1996.
- The First Draft of a Report on the EDVAC — John von Neumann, 1945, archived at the University of Pennsylvania, available at the Internet Archive.
- The Advent of the Electronic Digital Computer — Brian Randell, in The Origin of Digital Computers, Springer, 1973.
- Probing the ENIAC — Mark Burks, in IEEE Annals of the History of Computing, 1980.
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
\n
“