AN APPRAISAL OF THE CALCULATOR
The IBM Automatic Sequence-Controlled Calculator at Harvard is a landmark in the development of machines that think. Its capacity for many problems for which it is suited is far beyond the capacity of a hundred human computers.
Speed
The time required in the machine for adding, subtracting, transferring, or clearing numbers is ³/₁₀ of a second. This is the time of one machine cycle or of reading one coding line. Multiplication takes at the most 6 seconds, and an average of 4 seconds. Division takes at the most 16 seconds, and an average of 11 seconds. Each, however, requires only 3 lines of coding, or ⁹/₁₀ of a second’s attention from the sequence mechanism; interposed operations fill the rest of the time. To calculate a logarithm, an exponential, or a sine to the full number of digits obtainable by means of the automatic subroutine takes at the most 90, 66, and 60 seconds, respectively. To get three 24-digit numbers from feeding a punch card takes ⅓ second. To punch a number takes from ½ second up to 3 seconds. To print a number takes from 1½ seconds up to 7 seconds.
Cost and Value
The cost of the machine was somewhere near 3 or 4 hundred thousand dollars, if we leave out some of the cost of research and development, which would have been done whether or not this particular machine had ever been built. A staff of 10 men, consisting of 4 mathematicians, 4 operators, and 2 maintenance men, are needed to keep the machine running 24 hours a day. This might represent, if capitalized, another 1 or 2 hundred thousand dollars. If a capital value of $500,000 is taken as equivalent to $50,000 a year, then the cost of the machine in operation 24 hours a day is in the neighborhood of $150 a day or $6 an hour.
The value of the machine, however, is very much greater. If 100 human beings with desk calculators were set to work 8 hours a day at $1.50 an hour, the cost would be $1200 a day, or 8 times as much. Yet it is very doubtful that the work they could produce would equal that turned out by the machine, either in quality or quantity, when the machine is well suited to the problem.
Reliability
By reliability we mean the extent to which the results produced by the machine can be relied on to be right. The machine contains no built-in device for making its operations reliable. So, if we wish to check a multiplication, for example, we can do the multiplication a second time, interchanging the multiplier and the multiplicand. But if, say, digit 16 of the product were not transferring correctly, we would get the same wrong result both ways and we would not have a sufficient check. Thus, when we set up a problem for the machine to do, one of the big tasks we have is checking. We have to work out ways of making sure that the result, when we get it, is right and ways of instructing the machine to make the tests we want. This is not a new task. Whenever you or I set out to solve a problem, we have to make sure—usually by doing the problem twice, and preferably by doing it a different way the second time—that our answer, when we get it, is correct. One of the chief tasks for the mathematician, in making a sequence-control tape for the machine, is to put into it sufficient checks to make sure that the results are correct.
We can use a number of different kinds of partial checks: the check counter; differences, and smoothness ([see Supplement 2]); watching the results printed on typewriter 1; mathematical checks; comparison with known specific values; etc.
In actual experience on the machine, human failures, such as failure to state the problem exactly or failure to put it on the machine correctly, have given about as much trouble as mechanical failures. The machine operates without mechanical failure about 90 to 95 per cent of the time. The balance of the time the machine is idle while being serviced or repaired. The machine is serviced by mechanics trained and supervised at Harvard.
Often when we change the machine from one problem to another problem, we find some kind of trouble. Consequently, we need to work out in detail the first part of any calculation placed on the machine. We then compare the results step by step with the results produced by the machine. Any mathematician working with the machine needs considerable training in order to diagnose trouble quickly and guide the maintenance men to the place where repair or replacement is needed. Once you find the trouble, you can fix it easily. Without disturbing the soldered connections, you can easily pull out from its socket a relay that is misbehaving and plug in a new relay. With a screwdriver you can change a counter position—detach it from its socket and replace it by another one that is working correctly.
One “bug” that will long be remembered around the Laboratory was a case involving a 5 that would incorrectly come in to a number every now and then. It did not happen often—only once in a while. After a week of search the bug was finally located: the insulation on a wire that carried a 5 had worn through in one spot, and once in a while this wire would shake against a post that could carry current and took in the 5!
Efficiency
In many respects, this machine is efficient and well-balanced. Its reading and writing speed is close to its calculating speed. We can punch or print a result on the average for every 10 additions or 1½ multiplications. The memory of 72 numbers in the machine is extremely useful; a smaller memory is a serious limitation on the achievements of a computing machine. The machine can do many kinds of arithmetic and logic. It is well educated and can compute automatically some rather complicated mathematical functions, like logarithm or sine. It has done difficult and important problems. It has computed and tabulated ([see Supplement 2]) Bessel functions, definite integrals, etc. It can solve differential equations ([see Chapter 5]) and many other problems in mathematics, physics, and engineering.
On the other hand, no calculator will ever again be built just like this one, useful though it is. Electronic computing is easily 100 times as fast as relay computing; nearly every future calculator will do its computing electronically. Many other improvements will be made. For example, in this calculator, there are 72 addition-subtraction mechanisms, yet only one of these can be used at a time. Also, the machine has only one combined multiply-divide unit. So we have to organize any computation with few multiplications, and with still fewer divisions, for they take longer still.
Until 1947, we had to organize any computation in this calculator into one single fixed sequence of operations. In other words, there was no way to move from one subroutine to another subroutine depending on some indication that turned up in our computation. Recently, the Harvard Computation Laboratory decided to remedy this condition and provided the Subsidiary Sequence Mechanism equivalent to 10 subroutines of 22 lines of coding each. These are on relays and plug wires and may be called for by the sequence-control tape or by each other. This provision has added greatly to the efficiency of the calculator.
Whatever else can be said about the Harvard IBM Automatic Sequence-Controlled Calculator, it must be said that this was the first general-purpose mechanical brain using numbers in digit form and able to do arithmetic and logic in hundreds of thousands of steps one after another. And great credit must go to Professor Howard H. Aiken of Harvard and the men of International Business Machines Corporation who made this great mechanical brain come into existence.
Chapter 7
SPEED—5000 ADDITIONS A SECOND:
MOORE SCHOOL’S ENIAC
ELECTRONIC NUMERICAL INTEGRATOR AND CALCULATOR
Another of the giant brains that has begun to work is named ENIAC. This name comes from the initial letters of the full name, Electronic Numerical Integrator and Calculator. Eniac was born in 1942 at the Moore School of Electrical Engineering, of the University of Pennsylvania, in Philadelphia. Eniac’s father was the Ordnance Department of the U. S. Army, which provided the funds to feed and rear the prodigy.
In the short space of four years, Eniac grew to maturity, and in February 1946 he began to earn his own living by electronic thinking. Eniac promptly set several world’s records. He was the first giant brain to use electronic tubes for calculating. He was the first one to reach the speed of 5000 additions a second. He was the first piece of electronic apparatus containing as many as 18,000 electronic tubes all functioning together successfully. As soon as Eniac started thinking, he promptly made relay calculators obsolete from the scientific point of view, for they have a top speed of perhaps 10 additions a second.
At the age of 5, he moved to Maryland at a cost of about $90,000, and his permanent home is now the Ballistic Research Laboratories at the U. S. Army’s Proving Ground at Aberdeen, Md.