An interview with Conducted by J. C. Nash on

An interview with Conducted by J. C. Nash on
An interview with
James H. Wilkinson
Conducted by J. C. Nash
on
13 July, 1984
University of Waterloo, Waterloo, Ontario, Canada
with permission of J. C. Nash
Society for Industrial and Applied Mathematics
3600 University City Science Center
Philadelphia, PA 19104-2688
Copyright 2004, Society for Industrial and Applied Mathematics
Transcript donated to the Computer History Museum by the
Society for Industrial and Applied Mathematics
© Computer History Museum
Mountain View, California
ABSTRACT
James H. Wilkinson recalls his early interest and involvement in scientific computing. He
recounts his pre- electronic computer calculations at the Cambridge Maths Laboratory
and at the National Physical Laboratory in Teddington on applications such as supersonic
flow, thermodynamics and ballistics and the importance of getting mathematicians to take
numerical analysis seriously. He discusses his postwar work with Alan Turing on the
design and programming of the Pilot-ACE and how it informed his work in round off
error analysis and solving eigenvalue problems.
Key words: supersonic flow, thermodynamics, ballistics, fragmentation, floating point
error numerical linear algebra, eigenvalues, rounding error, acceleration methods, power
method, Pilot-ACE, Douglas Hartree, Charles E. T. Goodwin, Alan Turing, Maurice
Wilkes, Leslie Fox, Frank W. J. Olver, Charles W. Clenshaw, Michael Woodger, Harry
Huskey, David Wheeler, Cambridge Maths Laboratory, National Physical Laboratory,
Bushy Park (NPL), Aberdeen Proving Ground (USA), Fort Halstead(Sevenoaks, Kent)
12/8/2005
WILKINSON
2
This interview took place on July 13, 1984 at the Ninth Householder Gatlinburg
Conference held at the University of Waterloo, Waterloo, Ontario, Canada. The
interviewer is J.C. Nash.
NASH: How did you get involved in scientific computing?
WILKINSON: I always liked arithmetic. I was not one of those mathematicians who
dislike numbers. I really enjoyed computing with pencil and paper. I well remember
learning of Horner's method at school and immediately using it to find the real root of a
sextic [a polynomial in x^6] to several decimals without a computer of any kind. Yes, it
is fair to say that I had a natural liking for arithmetic.
Then I took an Honours Maths course at Cambridge and in three brief years that
enthusiasm was almost completely extinguished.
NASH: With Hardy? [G.H. Hardy, a pure mathematician famous for abhorring
applications]
WILKINSON: Yes, I knew him quite well, oddly enough, mainly via cricket. I met him
at a cricket match and we got acquainted. He wasn't, of course, a great personal friend of
mine; remember, I was a young lad and he was an internationally famous mathematician.
If at the end of those three years somebody had forecast that I was going to spend the
greater part of my life in the computing business, I would have told him he was crazy.
Then in 1939 the war came. I had either to go into a government department or into the
infantry and that was a fairly easy choice to make. The government department happened
to be in Cambridge, so I had the good fortune to stay in Cambridge for another four
years. I worked in what was known then as the Maths Laboratory and our assignment was
to solve day-to-day problems arising in connection with the war effort. So I worked on a
variety of rather shaggy and untidily formulated problems. Naturally we would first try to
solve them by analytical techniques and when that failed (as it usually did), we would try
to solve them by numerical methods on desk computers. Gradually the tide turned and
my interest in computing revived.
NASH: 'Desk computers' meaning hand cranked...
WILKINSON: Hand cranked computers. We did have some electrical machines: Fridens
and Marchants, but there weren't many of them and I was not fortunate enough to get
one. However, we soon got very skilled at using the hand computers; I particularly liked
the Brunsviga and became so familiar with it that I doubt whether I could have been
faster on a Friden. Most of my war-time computing was done on a Brunsviga, though
later at the NPL [Ed. U.K. National Physical Laboratory, Teddington] I used a Facit hand
12/8/2005
WILKINSON
3
computer, a beautifully designed machine. As I said, I worked on a variety of problems. I
worked on supersonic flow, the thermodynamics of explosives, internal and external
ballistics and fragmentation.
NASH: What does 'internal ballistics' mean?
WILKINSON: Internal ballistics is the study of the reactions which go on inside a gun; it
includes the study of the detonation wave,the motion of the shot and the recoil of the gun.
Fragmentation is concerned with the break-up of an exploding shell and is mainly
statistical. But gradually the main mathematical problem of interest to me became the
solution of partial differential equations associated with supersonic flow, and I solved one
or two such problems with curved shock waves on a desk computer, a very laborious
occupation.
NASH: With finite-difference methods?
WILKINSON: Yes, and by the method of characteristics which I found very interesting.
There was no systematic study of partial differential equations in my Cambridge course.
We solved PDE's by separation of variables and even this was done in an ad hoc way.
And so here for the first time there was something directly associated with the work
which really captured my imagination. You see I had intended to pursue classical analysis
and probably would have become a functional analyst in due course, but here was
something quite different which I really liked. I read Courant and Hilbert volume 2 in
German (with the aid of a dictionary) and was fascinated by it.
The war service lasted for about six years. I was very fortunate in having gifted
colleagues. From the rather small department at Cambridge, four of us went on to become
Fellows of the Royal Society: Hill, Moran, Sneddon and I. Most of the rest became chief
superintendents or returned to the academic world and became professors. So you see,
compared with the average government department, the staff was exceptionally highly
qualilfied.
NASH: Were you aware at that time of the work of Hartree?
WILKINSON: Oh yes.
NASH: He was doing a lot of calculations.
WILKINSON: We had a differential analyser [DA] at Cambridge which was the next on
the production line after the one that was delivered to Manchester (Presumably you know
about the Manchester DA?)
NASH: I don't know that one.
WILKINSON: Hartree used the Manchester DA. Ours looked identical to it but since it
was in fact the next one on the production line it was a rather nicer model.
12/8/2005
WILKINSON
4
NASH: Did that come out of the work of Vannevar Bush?
WILKINSON: Yes, it was Bush's design. Because it was there at Cambridge some people
worked on analog side, but I was always on the digital side and the DA and analog
computing in general never appealed to me.
NASH: So you moved on from this Cambridge maths group.
WILKINSON: Yes, the Cambridge Maths Lab. was rather a small outstation in the
Ministry of Supply. After four years at Cambridge, they decided to assemble a number of
such groups together and we were moved down to Fort Halstead. [Ed. near Sevenoaks,
Kent]. It really was a fort at the the time of the Napoleonic wars but it was in no sense a
fort then. This became the main station for the more theoretical side of research in
connection with armaments. In fact, the division in which I worked was called the
Division of Theoretical Armaments, if you can imagine such a name. N.F. Mott, who
would later win a Nobel prize in physics, was our superintendent. (My wife worked in the
same division.) And so I spent the last two years or so at Fort Halstead; it was a rather
bigger setting than the Maths Lab. at Cambridge but we were still doing much the same
work. However we were in rather closer contact with Service personnel; there were
representatives of the Army, Navy, Air Force and problems which trickled from them
were often formulated in rather 'popular' terms.
One difficulty was that they did not seem to have much idea of how difficult a problem
was. They might ask one to solve a sextic [Ed. the roots of a polynomial of degree 6] one
day and be rather suprised that you could solve it because they remembered vaguely that
"one couldn't solve polynomials of a degree higher than four". The next day they might
ask you to solve four or five simultaneous non-linear, partial differential equations and
they would not fully appreciate the disparity between the two tasks. It was a rather
chastening experience at times, because failure was much more common than success.
Often the problems were just too difficult even by numerical methods.
The nearest equivalent in the USA to Fort Halstead is Aberdeen Proving Grounds. Our
reports were all confidential of course so we couldn't publish in standard journals.
Reports were automatically forwarded to Aberdeen Proving Grounds. Sometimes we
would receive back papers of a theoretical nature and sometimes related experiments had
been done at Aberdeen Proving Grounds. In fact I have a rather nice story in that
connection with a partial differential equation I solved which was for the detonation of a
stick of RDX/TNT in a steel casing. I solved this by the method of characteristics and it
has a curved shock wave. My report was duly sent off to Aberdeen Proving Grounds
where they experimented with a shell of the dimensions I had treated. In particular they
photographed the detonating shell and produced a curve which fitted beautifully on my
theoretical curve. However, what they did not know was that I had used the wrong
adiabatic in my computation. For a detonating explosive this is a pretty complicated affair
because of the very high pressure in the gases behind the detonation wave. I had been
provided with the wrong adiabatic.
12/8/2005
WILKINSON
5
NASH: This is the boundary value function?
WILKINSON: Yes, that's right. In the meantime I had repeated the calculation with the
correct adiabatic and the new theoretical curve did not agree nearly so well. So much for
photography! The camera can lie.
NASH: Did you ever figure out why the fit between the wrong calculation and the
photograph was so good?
WILKINSON: No, that was never resolved. The episode came right at the end of my
career at Fort Halstead. I'm not certain that the corrected computation was ever sent to
Aberdeen Proving Grounds. The war had in fact ended although we couldn't get our
release immediately.
As I have said, by that time I had become interested in computing again and my
experience is instructive in connection with the problem of getting able mathematicians
to take numerical analysis seriously. In spite of a natural liking for computing, which
many mathematicians never have anyway, a classical education in mathematics had
contrived to kill it in about three years. If the war had not lasted so long, it is unlikely that
my interest would have been rekindled. You see I HAD to compute whether I liked it or
not. I could scarcely sit sulking for six years waiting for the war to end. The interest had
returned slowly and if the war had taken only three years no doubt I would have gone
back to Cambridge, continued with my classical education and forgotten all about
computing. The attractions of numerical analysis are somewhat elusive and you need
some experience to appreciate them. This is a central problem we are up against in trying
to get good people to take numerical analysis seriously. Their background doesn't make it
the natural thing to do, particularly given all the pressures to which they are subjected. I
can't imagine Hardy ever encouraging me to solve any problem, however interesting, by
numerical techniques.
NASH: So you moved on from there.
WILKINSON: When the war in Europe was over, I began to think to where I was going
to go next. I was offered a fellowship at Cambridge.
NASH: You had just the undergraduate degree at that time?
WILKINSON: I never took a Ph.D. [Ed. Dr. Wilkinson took the Sc.D. later, a doctoral
level degree based on published works rather than thesis.] A Ph.D. wasn't terribly
important in the U.K. at that time. By the end of six years we had reputations such that
there was little to be gained by taking a Ph.D. then.
I thought quite seriously of going back to Cambridge, but it was at this stage that I began
to hear rumours about electronic computers and these appeared to me to provide facilities
for solving partial differential equations in a reasonable way. There was clearly no future
12/8/2005
WILKINSON
6
in solving them on hand computers. Shortly afterwards I discovered that a Mathematics
Division was being set up at NPL. I got in touch with E.T. Goodwin who had been a
colleague of mine at Cambridge in the Maths Lab. He was one of the first to join this new
division. He invited me to have a chat with him at NPL and there I met Turing who I
knew already by reputation as something of an eccentric. Turing and I had a long
discussion and I was very impressed with him. Presumably he must have been reasonably
satisfied with me since he said if I came to NPL he would like me to work with him. I
think that this offer and my friendship with Goodwin were the decisive factors. So in
May '46, six and a half years after I joined the government service, I moved to NPL (as I
thought then, temporarily) instead of going back to the University.
Up to that time Turing had worked alone on the logical design of an electronic computer.
When I arrived, he had presented his plans to what you might call a "review committee"
at NPL. This consisted of a small group of Fellows from the Royal Society. The
committee decided that Turing's ideas were basically sound and they gave him a mandate
to go ahead and recruit the appropriate staff.
Up to that time everything associated with the project had been done by Turing himself.
He was a man with an original and inventive mind. His design had practically nothing in
common with the group of computers which arose out of discussions at the Moore School
of Electrical Engineering at the University of Pennsylvania. Mauchly and Ekert had
already successfully completed the construction of the first electronic computer, the
ENIAC (this was not a stored program computer) and their influence was at its peak. The
design of the computer EDSAC built at Cambridge by Maurice Wilkes was based on
discussions he had at a symposium held there.
I came to NPL in order to work with Turing but, in spite of the fact that he had no other
staff, it was agreed that I should work for him half-time. The other half of the time I was
to work in what we would now call the Numerical Analysis Section. It was then called
the Desk Computing Section and it was the most active section in the division. Among its
members, I should mention E.T. Goodwin, L. Fox, F.W.J. Olver and C.W. Clenshaw, all
of whom had considerable experience in numerical methods.
However, Turing was not the sort of person for whom one could work half-time. The
plan was that I was to learn numerical analysis with Goodwin and Fox since I was in no
sense then a numerical analyst. During the war I had merely worked in an ad hoc fashion
on a series of day-to-day problems. I was to learn the basic tricks of the trade and after
mastering each field I was to try to program the relevant algorithms for Turing's current
machine. In the light of the experience gained in trying to do this, Turing and I would
continually modify the design. This was quite an assignment; to learn the whole of
numerical analysis and design a computer, too. A full-time occupation!
NASH: How long did that stage last ?
WILKINSON: That will emerge. But as you will gather, in the event I worked for Turing
virtually full-time. But my dual appointment had one real advantage. Life with Turing
12/8/2005
WILKINSON
7
was just one continuous debate and I found it very stimulating. However, from time to
time he would have a particularly black mood and I would take the opportunity provided
by my dual appointment to spend a few days with Goodwin and Fox and learn some more
numerical analysis.
But to return to the computer. When I went to NPL in May '46, Turing was working on
what he called Version 5 of the computer though I never saw any documents relating to
versions 1 to 4. Turing was not a great documenter and no doubt the earlier versions were
buried in the rubble on his desk.
Perhaps I should attempt to give some idea of the flavour of Version 5, a typical
Turingesque creation.
It was a serial machine using mercury delay lines for storage, with a pulse repetition rate
of what I still call a mega-cycle, being rather old-fashioned in such matters.
NASH: You mean?
WILKINSON: The basic pulse frequency was provided by a master clock which had a
one mega-cycle pulse rate. It worked in binary, of course. That decision was taken early
on and was regarded as
irrevocable. The word length was 32 binary digits, which is rather better than nine
decimals.
NASH: They were fixed point ?
WILKINSON: Yes. They were fixed point but one of the earliest things that I did (at
Turing's request) was to program a set of subroutines for doing floating-point arithmetic.
These were later to become rather important in the history of NPL. Right from the start
Turing was impressed with the importance of speed. It is possibly not widely known that
at that time most people weren't. For instance, Wilkes at Cambridge (who quite early
became one of our principal competitors) took the view then that electronic computers
were so fast that it was much more important to get one built than to make special efforts
to increase its speed, and his views were generally shared. Turing took the opposite view
and most of the special features of his machine were designed to make it as fast as
possible. There was merit in both views but it was certainly true that the machines we
were designing then were not nearly so fast as they appeared to be. However, Turing's
obsession with speed certainly made for a very untidy machine. A great weakness of
mercury delay lines is access time. In order to make them reasonably economic it is
necessary to store a number of words in each delay line. Clearly, if one stores consecutive
instructions in consecutive positions in a delay line, one could perform only one
instruction per major cycle and indeed the early machines (other than ACE) that were
based on mercury delays suffered from this weakness. [Ed. ACE - for Automatic
Computing Engine - was the name given to Turing's machine.]
NASH: 'Major cycle' meaning?
12/8/2005
WILKINSON
8
WILKINSON: Major cycle meaning the time of circulation of the main storage unit(s)
each of which held 32 words of 32 binary digits and hence had a circulation time of 1024
microseconds i.e. approximately a milli-second. A conventional design would have
meant that the maximum speed of operation was one instruction per milli-second.
NASH: Because unlike a dynamic RAM where you can get at any cell with one or two
clock cycles, this had to use a thousand clock cycles.
WILKINSON: The other two early machines to work -- EDSAC at Cambridge (which
Wilkes built) and SEAC at the National Bureau of Standards (which Alexander built) -did, in fact, store consecutive instructions in consecutive positions so that by the time one
instruction had been executed the next one had been "missed" and one had to wait a full
cycle for it to emerge. To avoid this Turing stored consecutive instructions in such
relative positions that the next instruction emerged just when the previous one was
completed. Since different instructions took different times for their execution,
consecutive instructions were irregularly spaced in the store. As you can well imagine,
this made for what one would call "difficult" coding. I'm not sure that "difficult" is the
right word. I would say such coding was tiresome or tedious. Also it made the design of
automatic programming languages more laborious while at the same time it made them
more desirable. However, this feature of the machine turned out to be rather important; it
meant we could do up to sixteen instructions per major cycle, i.e. about sixty-four microseconds per instruction.
This practice later became known as "optimum coding" or "latency coding", but Turing
never used that term. It was characteristic of him to see his machine as the basic one, all
the others being out of step.
NASH: The total memory was?
WILKINSON: Well, Turing envisioned a memory of 200 long delay lines, which would
have given 6400 words.
NASH: 24 K bytes?
WILKINSON: Yes, and although that may sound rather small now, it was really very
ambitious for that time. I am sure Turing would never have contemplated or supported
the building of a smaller
machine.
NASH: What actually got built?
WILKINSON: We'll move on to that. Shortly after I joined NPL, Turing moved on to
version six and then rapidly to seven and eight. Those were four-address code machines.
12/8/2005
WILKINSON
9
[Ed. A machine which had up to 4 address operands after an instruction, one of which
would be to give the memory location of the next instruction.]
The earlier machine, version 5, is hard to describe in these terms. But its successors
performed instructions of the type A+B to C and selected the position D of the next
instruction, which
was necessary because they were not in consecutive positions.
NASH: A complete instruction would occupy one word?
WILKINSON: Yes, but it was a more powerful instruction than that on a conventional
one-address code machine. Another striking difference in Turing's design was that he had
a number of one-word delay lines and the arithmetic and logical operations were
distributed among them. On a conventional one-address code machine the use of one
accumulator leads to a tremendous bottleneck. One is always taking one number out of
the accumulator to put in another. By having a number of one-word stores (delay lines)
this is avoided. You see, this was all related to Turing's objective of making his computer
faster.
NASH: And when a word had an instruction, it would also have an address in it?
WILKINSON: Oh, yes.
NASH: So it wasn't like a modern microcomputer with instruction, operand, operand.
WILKINSON: No.
If Turing had stayed at NPL he would have gone for the full scale computer with two
hundred delay lines and quite frankly we had neither the facilities nor the experience to
embark on such an ambitious project. It should be appreciated that the full-sized
computer was far larger than Wilkes was planning, and eventually built as EDSAC.
Although I have used the term 'optimum coding', most programs fell a good deal short of
the optimum speed attainable. To achieve this would have been far too tedious. However,
when it came to very important subroutines such as floating-point arithmetic, optimum
speed was almost achieved. As I mentioned before, I produced the first set of floatingpoint routines, but when in 1947 Donald Davies, Mike Woodger, Gerald Alway, Billy
Curtis, and John Norton joined the team, they all played a part in polishing them up.
NASH: This was all on paper?
WILKINSON: Naturally, we had no working computer. Because of the optimum coding,
floating-point arithmetic (and other important routines such as double-length arithmetic)
was much faster on Turing's machines than it was on its competitors. The speed of
floating-point arithmetic turned out to be very important for me. When we finally built
our computer we dusted down our early routines and polished them up further. By the
12/8/2005
WILKINSON
10
standards of the time they were very fast indeed and this enabled me to get really
extensive working experience with floating-point computation before it was practical
elsewhere. I am sure this is why floating-point error analysis first made headway at NPL.
Turing continued with the logical design of machines but after a while he began to get
very dissatisfied. The policy had been adopted that the actual construction of the
computer should be undertaken by some other government department such as the
Ministry of Supply, where personnel experienced in pulse techniques as a result of
working on radar were available.
I never liked that decision, but the Director of NPL, Sir Charles Darwin (great-grandson
of the great Charles Darwin) was not a very easy man to argue with. Remember, I was
quite a junior member of the NPL staff at that time. But as I saw it, there were only two
possibilities. Either the external group would be successful, in which case if they had any
imagination at all they would take control of the computer themselves. Alternatively they
might fail. It seemed to me that we were in a no-win situation and I couldn't understand
why Turing accepted the proposal. This attempt to get the machine built outside
continued very unsuccessfully and Turing got more and more morose about it.
NASH: This would be about what time, '47?
WILKINSON: Yes, until finally, very belatedly in 1947, Darwin agreed to set up a very
small electronics group (not a division) at NPL. It was recruited mainly from people from
other divisions of NPL and inevitably most of the recruits were far from being experts in
electronics, so they were going to have to learn on the job. A disaster struck almost
immediately. The person who was put in charge of the team -- a Dr. Thomas -- is often
critized but in my view rather unjustifiably. Thomas was much more interested in
industrial electronics than in building a computer. I do not feel that this was
unreasonable; it was not easy to have the imagination to foresee that computers were to
become one of the most important developments of the century. However, from our point
of view Thomas' preferences were unfortunate. But worse was to come. Thomas and
Turing had absolutely nothing in common and were scarcely capable of being civil to
each other. So there we have the situation where the leaders of the two groups were
completely incompatible.
This, naturally, made Turing even more unhappy, and he began to talk seriously of
leaving. Finally, he left in 1948 and joined the group led by Freddy Williams and Tom
Kilburn at Manchester. They were making rapid strides in the construction of a computer
based on what became known as the "Williams-Kilburn store". Turing's decision was, in
my opinion, an unfortunate one. He should have returned to Cambridge where he still
held a Fellowship at Kings.
I was left in charge of a team which consisted of six people, including myself. We had
virtually no contact with the electronics group, and at that stage Goodwin, who was in
charge of the Desk Computing Section, had a long discussion with me. He said, "You
know this enterprise looks now as though it's going to founder. Before you can be held
12/8/2005
WILKINSON
11
responsible for its failure, would you not prefer to become a member of the Desk
Computing Section?"
Well, I just couldn't accept that. By this time I was hooked on computers, so I said I
would sweat it out and see what could be done.
Then a miracle occurred. Thomas left and went into industry with ICI, where he had
always belonged. The person who succeeded him, F.M.Colebrook, was an old radio
engineer with very little knowledge of pulse techniques but a great fund of common
sense. When he'd been in the post about two weeks, he came over to see me and he said,
"You and I appear to be holding a very unhealthy baby." He went on to invite the four
senior members of our group to join him in the Electronics Section on a semi-permanent
basis and attempt to achieve something together.
NASH: The four of you being?
WILKINSON: Alway, Davies, Woodger, and myself. Woodger later made his reputation
in programming languages in connection with Algol. Davies later became the
Superintendent of the Electronics Division (as the small electronics section eventually
became) and never really assumed wholehearted membership of the Mathematics
Division. Alway came back with me to Mathematics.
NASH: So you started off then learning how to deal with the people.
WILKINSON: Yes, learning how to work together and learning electronics at the same
time; but remember that most of the electronics group were having to learn about pulse
techniques so we were all in the same boat.
NASH: This is when? The beginning of '48?
WILKINSON: This would be about May or June of 1948. Colebrook was a remarkable
tactician and soon we were all working rather well together. There were one or two
uneasy weeks but soon the animosity died down. E. Newman was in technical charge of
the electronics group; he had worked at EMI during the war and already knew quite a lot
about pulse techniques. He and I got on remarkably well and that was a great help. In
those days supplies were a problem, but fortunately one member of the electronics group,
W. Wilson, a giant of a man, knew everybody in the supply world and was able to solve
this problem satisfactorily. After we had spent a month or two building bits and pieces
and generally finding our feet, Colebrook said "Why don't we get together now and try to
build a pilot machine, the success of which will demonstrate to the authorities that we are
competent and therefore ensure the continuation of the enterprise". Then in the light of
success -- we didn't hint at failure -- we would then go on and build the full scale ACE.
Now it so happened that we had done a little experimental work in 1947 in Mathematics
Division when Harry Huskey had spent a sabbatical year with us. At that time we had
12/8/2005
WILKINSON
12
designed just such a miniature machine based on Turing's Version 5. This enterprise had
been stopped by Darwin when the Electronics section was formed.
To a large extent, we resurrected this machine, incorporating of course a substantial
number of improvements. It was to be called the Pilot-ACE and effectively it would be
the smallest machine based on the logic of Version 5 which would demonstrate the
practicality of it.
NASH: And that would be how large a machine?
WILKINSON: I suppose I was largely responsible for deciding on the size and scope of
the machine but any of the other three could by that time equally well have done so. In
order to have some specific objective, I decided that it should be capable of solving fully
automatically a set of eight to ten linear equations by Gauss elimination. This it would do
in a matter of a second or two, very impressive for that time.
NASH: So you needed to store at least a hundred fifty numbers and the word width was
thirty-two bits?
WILKINSON: In fact we decided to have ten long delay lines, that is 320 words. We
started to design the chassis in late '48, some chassis being designed by the
"mathematicians" and some by the "engineers". In the event, the mathematicians
probably designed slightly more than half the chassis. I must emphasize that I am now
talking about the detailed electronic design, not just the logical design. We put our newly
won knowledge of electronics to immediate use.
NASH: How long did the construction phase take?
WILKINSON: We started to send our blueprints to the NPL workshop towards the end of
that year. As each chassis arrived from the workshop, we put it into the main frame.
NASH: Literally a main frame.
WILKINSON: Yes, there really was a frame. We decided to use a plug-in assembly and
planned to have spares of key chassis.
By the standards of the time it was an incredibly small machine physically, and yet it was
in many regards more powerful than either EDSAC or SEAC. Direct comparisons are not
really possible but Pilot-ACE was substantially faster on most problems and it could
solve some problems the other two couldn't.
NASH: And the clock cycle was still one mega-cycle?
WILKINSON: Yes, still one mega-cycle, a slightly tough decision.
12/8/2005
WILKINSON
13
Wilkes had decided on 500 Kc. Certainly some of the problems we had would have been
a lot easier at 500 Kc's. [Ed. Kc = kilocycle = KHz].
NASH: It is interesting that the Apple II is a one mega-cycle or
one mega hertz machine, by comparison. [Ed. I was thinking here
of the instruction rather than clock rate.]
WILKINSON: Yes, that's right.
The completed chassis would have started to arrive, I imagine, well through '49;,I'm
afraid progress was not documented. It so happened that the first chassis to arrive had
been designed by Alway and myself, two of the mathematicians of the team, and
naturally we put them into the main frame and got them working.
NASH: Did they work more or less the first time?
WILKINSON: Oh no, it took a little while but there were no major design faults.
NASH: You didn't have a lot of patches to do.
WILKINSON: No, on the whole it went pretty well.
Then when the next chassis arrived -- which Alway and I had not designed -- we assisted
in its installation because we already knew about the earlier chassis. Thus, without any
conscious decision being taken, Alway and I became the debuggers.
NASH: Weren't the chassis somewhat different from each group? Or were these different
components?
WILKINSON: Of course, the various chassis had entirely different functions. Thus
several were associated with the line counter, several with the logical control and then
there was one chassis for each delay line. (The latter were, of course, all identical.)
NASH: The line-counter is?
WILKINSON: This was the section which counted the basic 32 pulses in a word time.
NASH: All this is now on one chip?
WILKINSON: Yes, of course, and much more. Our units were vast by today's standards
in spite of being small by the standards of the contemporary design. Pilot-ACE was also
unique among the early computers in being extremely mobile. The main frame was on
wheels and when the computer was finished, we wheeled it back to Maths Division
without affecting its performance.
NASH: Was it power hungry?
12/8/2005
WILKINSON
14
WILKINSON: It consumed somewhat less than ten kilowatts, which was quite low.
NASH: Yes, that's quite low.
WILKINSON: But we didn't have any forced cooling and perhaps the construction was a
little too compact for that. When we were assembling it, we were, of course, standing in
front of it all day. It was like working in front of a 10 kilowatt fire, a rather trying
experience.
NASH: It was generating about the same energy as ten electric kettles.
WILKINSON: Ten kettles spread over an area about three feet by fifteen feet.
NASH: Did you have much component trouble?
WILKINSON: Not really. Our main problem was with germanium diodes, which
fortunately we didn't use on the scale as SEAC. We used them for some gating
requirements. Because our machine was so compact and didn't have forced cooling the
diodes were working at a temperature which was much higher than specified by the
manufacturer.
NASH: So they would fail?
WILKINSON: Yes, there were some good diodes and some bad diodes. The bad diodes
would fail after perhaps a week in the computer.
NASH: Exactly as the experience of today.
WILKINSON: A good diode on the other hand would go on almost indefinitely, so bad
diodes were eventually weeded out.
NASH: So you had a literal burn in with a hot chassis.
WILKINSON: Then came a key stage in the assembly of the computer. This was the day
the first delay line chassis was integrated. This was designed by Newman and as usual he
joined Alway and myself while it was installed but from then on he stayed with us. The
three of us worked well together, and debugged the whole of the rest of the machine.
NASH: When did the first program run?
WILKINSON: On May the tenth, 1950. It is interesting that unlike Wilkes, who had built
everything he intended to have and then made it work, we added chassis by chassis as
they were completed and as soon as it was possible to do something (which was as soon
as we had the control unit working, the adder and the subtracter, the logical operations
and one long delay line), we tried it.
12/8/2005
WILKINSON
15
NASH: How would you feed the data in?
WILKINSON: Oh, at that point we fed the instructions in (in binary) from a set of 32
keys. When it worked on May the tenth, it would could perform only the simplest of
programs. In fact our first program achieved the following: it took the binary number set
up on the 32 keys and every major cycle it added that number into the accumulator until
it overflowed. Now, in addition to the 32 input keys we had a set of 32 output lights.
When an overflow took place, the program put on the next light. So successive lights
would come on at a speed which was directly related to the size of the number on the
switches. Now this program, admittedly rather small, had to be fed in one instruction at a
time, in binary from the 32 keys. At the time the design of the delay lines needed
improving; the amplifiers were somewhat unstable. So we kept feeding in the program
and it kept being forgotten before we could complete the input. So I said to Alway:"Let's
try it four or five more times and if it doesn't work, we'll call it a day and go home."
Well, we put it in about four times and suddenly all the lights came on. Well, this could
have happened in any case, and it didn't guarantee the program was working. However,
we made the input number smaller and the lights came on more slowly.
NASH: So the amplifiers had settled down?
WILKINSON: Yes. Then we doubled the number, and the lights came up twice as fast.
We made the number three times as large and they came up three times as fast. On a
binary machine that was quite convincing, so we said:"It must be working" and went
home rejoicing. That program later became rather famous on the machine. It was known
affectionately as "Successive Digits" or SUCK DIGS.
Sometime before this , Teddy Bullard (later Sir Edward) had succeeded Darwin, and
when he visited the Electronics Section (in late April, 1950) he asked me how it was
going. I replied that we should have something going in a week or two. Bullard was a
very forthright chap, and he said with some scorn "Come on, you can't pull the wool over
my eyes. I've heard it's going very badly." (He had heard this, quite justifiably, via Harry
Huskey.) I said "You may well have heard this and indeed it was true, but it's coming
along nicely now and in a week or two, I confidently expect it to be working."
NASH: So you were right on target.
WILKINSON: Naturally, when it did work, I tried to get in touch with him as I had
promised to do. I tried to 'phone him. He wasn't there. Now the machine wasn't really
very good at that stage and might stop working at any time. The director could not be
traced and I was pacing up and down, saying:"The bloody director is never here when
you want him" when he stepped into the room via the window. His opening words were
"Here's the bloody director. I hear it's working."
12/8/2005
WILKINSON
16
I showed him this program and he played with it and agreed that it was working. Then he
turned to me with a grin and said "It may be working, but the program's somewhat less
than epoch-making," with which we had to agree, but it was very heartening for us.
We continued to add the chassis one by one, and by the end of June most of it was
assembled. We didn't at that time have a multiplier, nor had we planned to have one, on
Pilot-ACE.
NASH: You would use successive addition?
WILKINSON: Yes, it was to be done by a subroutine, optimum coded so that it was not
too slow. In fact, the optimum coded version was about as fast as the automatic multiplier
on EDSAC. So as soon as it began to do significant things, Bullard began to press us to
have an Open Day and to demonstrate it to the world. Well, I was a bit anxious about that
because it wasn't really reliable enough. The amplifiers on the delay lines were still
inclined to be unstable. However, Bullard was a very impetuous man and he finally
landed us with these 'demonstration days'.
NASH: When was that?
WILKINSON: It would have been November of 1950. By that time we could do a variety
of significant things, but it was still not a very reliable machine.
NASH: Was a cool day more helpful than a hot day? And a dry day better than a wet
one?
WILKINSON: One of the troubles we had at that time was with the power supply. Not
our power supplies but that of the Central Electricity Generating Board. For instance, in
the evening when everyone arrived home and switched on electric fires, the voltage
would drop suddenly, and that gave us problems.
NASH: Historically there was a coal shortage at that time?
WILKINSON: Yes. Such things added to our difficulties. We knew, too, that when
SEAC had had its first demonstration - a little before us - it had been a fiasco, even
though SEAC had, in general, been working reasonably well. During the whole of the
time allotted to the press demonstration, it never once worked. You will find the early
years abound with such bad luck stories.
I must confess to having been pessimistic. We decided to have two popular programs for
the daily press. For the first, they would give us a 6 figure decimal number and the
computer would tell them if it were a prime, and if not, output a factor.
For the second program, they would give us any date from the year zero up to the year
9999 and it would output what day of the week it was. It covered both the Julian and
Gregorian calendars and dealt with all leap years. In all, quite an amusing little program.
12/8/2005
WILKINSON
17
Mike Woodger produced that program.
NASH: And where did he discover the technique?
WILKINSON: He worked it out for himself. Such programs are good fun of course, but
they leave one mercilessly exposed to the vulgar gaze. Someone puts in the current date
which is Wednesday,say, and the machine promptly says Thursday! So they're very much
more dangerous. If you tell the press it's solving a partial differential equation, you can
swear blind it's solving a partial differential equation and they would be hard put to prove
it is not. Finally, we were to have one serious program; this traced skew rays through a
set of lenses.
Well, we decided on this last program and announced it only to find that we couldn't get
the program to work. Two days before the press show it had still never worked, and we
didn't know whether the program had a bug, or whether it was due to computer
malfunction. Then, just two days before the show, Alway and I accidentally found it was
a minor machine fault which was not invoked at all in our other programs.
We got all three programs working then, just in time. The arrangement was that Bullard
would entertain the popular press and I would give the demonstrations. The whole thing
was to cover three days; one day with the popular press, one with the technical press, and
a third day for VIPs including our competitors. Wilkes had his machine running in
Cambridge and was justifiably proud of it. Williams and Kilburn from Manchester were
also coming.
NASH: They had a machine too, didn't they?
WILKINSON: They had a little hook-up at that time but it could scarcely be called a
computer. They hadn't built the Mark I by that time. Their little hook-up was the first
anywhere ever to run a stored program. It worked in 1947 and found the highest common
factor of two numbers. This was, of course, a great deal smaller even than the Pilot-ACE.
However, it WAS an impressive 'first' and I well remember being very heartened when I
saw it working.
My point then, is that Open Day was doomed to be a failure. The plan for the first day
was that Bullard was to entertain the press upstairs, while downstairs we made sure the
computer was working. We were to receive a signal when Bullard was almost through.
We did, and immediately the machine stopped working. We found out, almost at once,
that it was a chassis associated with one of the delay lines. We plugged in a spare, but
unfortunately we knew that the amplifier, as it warmed up, would become unstable; the
amplifier would then need to be retuned and in ten minutes all would be fine from then
on.
12/8/2005
WILKINSON
18
So we were expecting to run into trouble almost as soon as the demonstration started.
Well, the press arrived. They threw numbers at us and the computer factorized them like
a charm. It was indefatigable!
We moved on to the 'dates' program. It worked as it had never worked before: the day of
Trafalgar, Waterloo, King George V's birthday.
NASH: You were very lucky.
WILKINSON: We moved on to the ray tracing. It traced rays like a fiend; nothing could
stop it. It continued in this vein from ten till one o'clock. Then the press went away to
lunch. We immediately looked at the output from the delay line, that is the shape of the
pulse coming out. It was the best output we'd ever seen! Further press representatives
came in the afternoon; still a faultless performance.
The next day we had the technical press and it was the same story. Never before had it
worked for anything approaching this time period without a fault. The third day the VIPs
came. Surely it would let us down now? Not a bit of it. Wilkes was there. I have always
found him a very fair man, but naturally he was not prepared to give anything away. He
didn't get a chance; it was perfect. It had already been decided that there would be a
fourth day when it would be put on show for the staff of NPL. This was a Saturday. The
computer had a small fault before our audience arrived but we soon put this right and
again it performed flawlessly. The chances of such a performance must have been a
million to one against.
On Monday we came in feeling rather jubilant. The computer was down and it took us
about a week to get it working again!
NASH: What did it have as peripherals at that time?
WILKINSON: By that time the input and output was by Hollerith punched cards. We
never had tapes.
NASH: And would these be hand-fed or machine-fed cards?
WILKINSON: Machine-fed. The reader fed 200 cards per minute.
NASH: Did you have to make that reader?
WILKINSON: We had a Hollerith section in Maths Division, so that there was quite a lot
of expertise in that sector. In fact this side of the work was done by Stan Gill who was
then at NPL but was later better known for his work at Cambridge with Wilkes and
Wheeler.
NASH: Using the IBM-type tabulator?
12/8/2005
WILKINSON
19
WILKINSON: It was the card reader which read at 200 cards per minute; the output card
punch operated at 100 cards per minute. We never had any direct printout from PilotACE.
NASH: You would run the cards through a listing machine?
WILKINSON: Yes, that's right.
Now the Pilot-ACE had been conceived in an atmosphere of crisis. There was the danger
that if we did not make some progress the project might be closed down. I had never
really formulated any clear idea what we were going to do next but it had never been my
intention that we would use Pilot-ACE for serious computation. It suddenly dawned on
me after the fantastic success of the demonstration that we were expected to take the
computer back to Mathematics Division and do day-to-day computing on it. You know, I
hadn't thought of it in those terms; I had always thought that when it was successful the
authorities would say:"Good. It works very nicely. Now go ahead and build the fullscale ACE." But, of course, that was not possible now. So we embarked upon a short
program of improvements to the computer, including the addition of an automatic
multiplier, and then we took it back to Maths Division. The Pilot-ACE was used up to
mid-1955, so for four and a half years. It worked pretty well by the standards of
computers at that time; rather better than its competitors.
NASH: Programmed in machine code?
WILKINSON: Programmed always in machine code. We didn't start writing
programming languages until later. In 1951 English Electric decided it wanted to get into
computers and agreed to start by copying a working computer. So it copied Pilot-ACE
with some improvements and called it DEUCE. This was effectively an engineered
version of Pilot-ACE; it was marketed and sold over 30 copies which was then
considered to be a substantial number.
NASH: Was there a full ACE?
WILKINSON: Yes, we later built a full-scale ACE at NPL, and despite what has been
written about Turing's plans, the full ACE realized everything that Turing had in his
designs and a good deal more. However, in retrospect, the construction of ACE can be
seen to have been a mistake. It was completed in 1958. By that time new techniques had
been developed. Alway, Woodger and myself played no part in the construction of ACE
(we were back in Maths Division) but I do not imply that this was the reason for its
comparative lack of success.
NASH: It was still using mercury delay lines [for memory]?
WILKINSON: It was. This in itself was a bad decision, I think. However, it was an
interesting machine and fun to use. Had it been completed in 1956 it might have been a
different story.
12/8/2005
WILKINSON
20
NASH: So you used Pilot-ACE. Did you use DEUCE?
WILKINSON: Yes. NPL had the first DEUCE to be built. So we used Pilot-ACE up to
mid '55. Then the DEUCE arrived.
NASH: The DEUCE was a little bigger?
WILKINSON: Yes it was a little bigger (physically it was a lot bigger and therefore did
not get so hot) but the principal change was the addition of a drum drive. After we came
back to the Maths Division the Electronics section worked on the development of a drum
and this was added to Pilot-ACE after we had been using it for about a year. The first
drum stored 8096 words. The transfer of information from the drum to the so-called highspeed store was completely autonomous so that computing could continue while the
transfer was taking place. This meant, for instance, that for matrix work, we could work
just about as fast as if we had the full number of delay lines [Ed. as in the full ACE
design] because the transfers were always done while the previous data were being used.
NASH: And did you ever add direct printing?
WILKINSON: No, never. Neither Pilot-ACE nor DEUCE, or for that matter on ACE.
The only output throughout their lives was by punched cards.
NASH: DEUCE lasted until about '62?
WILKINSON: As a matter of fact, the NPL DEUCE continued to be used long after we
had the full-scale ACE. We had numerous long-term visitors and many of them had
written programs for DEUCE which they had cleaned up rather well. They were reluctant
to re-write them; it's an old story.
NASH: And all these machines had the same machine code?
WILKINSON: There were slight changes in the light of experience. We realized there
were some things we could do even within the basic limitations of the Pilot-ACE which
would make it much more flexible to use and those were incorporated in DEUCE.
NASH: And DEUCE had programming languages?
WILKINSON: We began to develop programming languages on it.
NASH: An assembler?
WILKINSON: Oh yes. And there was a rather nice matrix interpretive scheme, not very
sophisticated, but very effective. It enabled you to do the sort of thing that Cleve is
demonstrating here but not, of course, in so convenient a way. [Ed. Prof. Cleve Moler of
the University of New Mexico, whose MATLAB will hopefully be discussed in a later
12/8/2005
WILKINSON
21
issue.] One could build up quite complicated matrix operators from standard "bricks" as
we used to call them. It was much nicer than using subroutines.
NASH: Interpreted?
WILKINSON: Yes.
NASH: The ACE and DEUCE work led to two books from you -- Rounding Errors in
Algebraic Processes, in 1963, and later the Algebraic Eigenvalue Problem, in 1965.
WILKINSON: Well, that's rather a long story. In spite of popular belief, I was not born
with a passionate interest in linear algebra or rounding errors.
NASH: But it's what you're best known for.
WILKINSON: As I've mentioned earlier on, I intended to work on partial differential
equations and was itching to get back to them. One of the earliest things I did was to
rework the problem on RDX/TNT I had done at Fort Halstead and I was delighted to find
that the results (using the right adiabatic!) were correct. But then, to my immense
surprise, we were deluged with a succession of problems in the numerical linear algebra.
The aircraft companies were interested in building bigger planes and this led to much
bigger free vibration problems. They also needed to solve the flutter problem in many
more variables than hitherto. All this work gave rise to matrix problems. The director of
NPL, Bullard, was interested in the origin of the Earth's magnetic field. He'd reduced
this, by the time he came to me, to an algebraic eigenvalue problem. I also did computing
for Aldermaston [Ed. UK Atomic Weapons Research Centre], and rather surprisingly the
work they asked me to do was also in the linear algebra field. Because of its peculiar
design features, Pilot-ACE was exceptionally efficient in that area relative to other
computers.
NASH: It had double precision accumulation of inner products?
WILKINSON: Yes. Double precision accumulation was very efficient on all ACE-type
machines. Even before we added the drum storage, the way Turing had organized the use
of the card reader made it possible for us to do unsymmetric eigenvalue problems up to
order 60 in spite of the small memory.
NASH: By feeding information out and back in?
WILKINSON: Not exactly. This was achieved as follows. The matrix was stored in
binary with two numbers on each row of a card. To perform an iteration the cards would
be read at top speed and all the computation was done between the rows of the cards.
There was about 15 milliseconds between the rows of the cards, and to deal with two
elements of the matrix took 12 msecs.
NASH: So you were computing as it was reading?
12/8/2005
WILKINSON
22
WILKINSON: Yes. The net effect was that we could work almost as fast as we would
have done if the data had all been in our mercury delay lines. In fact, if EDSAC had had
enough storage to hold the full matrix, it still could not have computed as fast as we were
using the cards. This was all part of Turing's design. It was a rather ragged, slightly
untidy machine, but a very interesting one, and its design certainly owed very little to
others.
NASH: So when did you actually start writing "Rounding Errors..."?
WILKINSON: That is rather a long story. As a result of actually solving a large number
of matrix problems, I bacame aware that the algorithms I was using were much more
stable than everybody had expected. Naturally I began to wonder why. This started me
on rounding error analysis. The first analyses I did were in connection with polynomials.
I moved on to analysis in the field of linear algebra around '55-'56, but I didn't start to
publish my work until '58-'59 . You see, I hadn't acquired the habit of submitting my
work to the standard journals. During the war we weren't allowed to publish and then I
had spent several years designing a machine and then building it but I had no intention of
making my career in those fields. Then when the computer was built we were so hardpressed using it that I didn't write things up. So if you look at my publication record
you'll find amazingly little published before 1957, and then a sudden outburst. I was
really writing up what I had been doing in the last four or five years.
NASH: The Stationery Office produced "Rounding Errors..."
WILKINSON: Yes, that came out in 1963. I sent off the finished manuscript of the
Algebraic Eigenvalue Problem by the beginning of 1964. By the time it had gone through
the Press, it came out about March of 1965.
NASH: It actually has the Clarendon imprint, so it went through the delegates and was
one of Oxford University Press's flagship books.
Did you move on to KDF9 about that time?
WILKINSON: Yes. Well, we'd always retained our connection with English Electric
after they built DEUCE and although the KDF9 design had broken away from the Turing
concepts, the ability to accumulate inner products in double precision was retained,
fortunately for me.
NASH: Rather than going into that machine, I'd like to ask your opinions on the
following. Today a lot of people are coming into computing with no background in
calculation. Many of the machines they're using don't have the properties that ACE did,
with double precision accumulation of inner products. People have very little knowledge
of this. How can these ideas be got across to them?
12/8/2005
WILKINSON
23
WILKINSON: It's a really difficult question and I wouldn't claim to know the complete
answer to it. Our experience with the Pilot-ACE was really rather special. In order to get
the most out of a machine with such a small store, user cooperation was essential on a
scale which in many ways is not achieved even now. This gave one an intimacy with the
machine; we were forced to look at the numbers and thereby achieved a deep
understanding of what was going on. One can, of course, do this with modern computers;
indeed the potential for doing it is actually greater, but one has to realize what it is one
should be doing and why. For iterative methods we used acceleration techniques which
were actually under the direct control of the operator. For instance, when we were using
the power method for the determination of the dominant eigenvector of a matrix we could
follow the progress of the vector on a cathode ray tube screen. We had a cathode ray
display which showed the contents of any long delay line. We would look at the screen
(which showed 32 components of the current vector) and we would see how fast it was
converging. We would put a piece of paper over it and we could say, for example, "It's
gaining a binary digit every three iterations so the ratio of the dominant to the
subdominant eigenvalue must be about 2 to the power 1/3 ." We could then set up a shift
of origin on the input keys that would give much faster convergence. This work was
commonly done by assistants who were in no sense qualified mathematicians but they
became very expert indeed. It is surprising how well they understood the battery of
acceleration techniques available and how efficiently they used them. When later we
went over to more automatic techniques they complained we were "taking the guts out of
their work". They really loved these early programs.
The familiarity and intimacy gained with the computing process was fully comparable
with that which one gets on a hand desk machine where perforce you see every number.
But on ACE that familiarity was gained quickly and painlessly. This experience was
invaluable. Is there any way you can get it now? Of course there is, but one needs to
know what is worth having and to have the incentive to output it.
NASH: I would say my own experience is that we are transferring large machine,
"faceless" programs down to the personal computers where in fact one can go back to the
ACE/DEUCE ideas.
WILKINSON: Yes. I agree. The potential is there and it's much greater really than it was
on ACE/DEUCE. But in my experience, many people who do computing are reluctant to
look at numbers. At Stanford the general level of our students has been pretty high but I
would say their main weakness is in their inability to look at outputs and extract the
meaningful information there is in them. In fact, somewhat to my surprise, they are
generally less efficient at this than the assistants I used to have at NPL in the
ACE/DEUCE days, in spite of having far superior mathematical qualifications. Most of
those assistants had experience with desk computers and had learned to "look at
numbers". The Pilot-ACE forced them to continue with this habit.
I certainly do not want to suggest that the way to acquire this habit is to serve an
apprenticeship on hand desk computers, but we have yet to learn how to instill the
relevant knowledge.
12/8/2005
WILKINSON
24
Was this manual useful for you? yes no
Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Download PDF

advertisement