Meeting to Discuss Atlas Order Code
Dr Howlett
11/8/1960
1 Present
- A E R E Harwell
- Mr. E.H. Cooke-Yarborough
- Dr. W.M. Lomer
- Dr. J. Howlett
- Dr. A.R. Curtis
- Manchester University
- Professor T. Kilburn
- R.A. Brooker
- Dr. R.B. Payne
- Ferranti Ltd
- Mr. E. T. Warburton
- Dr. S. Gill
- C.H. Devonald
- Dr. R.H. Kerr
- P.D. Hall (part-time)
- K. Lonsdale (part-time)
2 Discussion at University of Manchester
The meeting was held to discuss comments made by Dr. Curtis in a document
dated July 1960 entitled "Comments on the Atlas Order Code".
There was also some discussion on a later document
entitled "The Optimum Configuration of ATLAS Computer:
Analysis of a 3-Dimensional Multigroup Diffusion Computation",
which had been received a few days before the meeting.
These will be referred to as Document 1 and Document 2 respectively.
The meeting began with a discussion on the desirability of compatibility
between ATLAS computers. Many people present felt that it was very desirable to
achieve as much compatibility as possible between ATLAS machines,
but Dr. Curtis maintained that programming compatibility was a minor
consideration, that the few programs at other installations which
might be useful to the U.K.A.E.A. could easily be adapted, and that it was
more important that an ATLAS purchased for U.K.A.E.A. should be designed to
suit the Authority. He agreed that it should be possible to convey information
from one computer to another via e.g. magnetic tape, but he said that he
would oppose any arguments based on achieving complete compatibility
between any two computers.
Professor Kilburn said that he was concerned about the impression which
might be created by Document 2 in the minds of those who may be called upon
to advise on the purchase of other ATLAS computers, possibly outside the Authority;
Dr. Curtis had concentrated on estimating the computing efficiency of
various arrangements without explicitly relating it to the price. Dr.
Curtis replied that the document was intended to relate solely to the
needs of the A.E.A. and that it was obviously necessary that the persons on the
circulation list should see it. He stated emphatically that he was in full
agreement that the design of MUSE was the best to meet the needs of the University.
Professor Kilburn asked why Dr. Curtis had chosen the particular size of
job which he had studied in Document 2. Dr. Curtis explained that there were
two reasons for this. Firstly, there were special reasons why the 3-Dimensional
Multigroup Diffusion Computation would not be likely to be required for more than
100,000 mesh points. Secondly, the size of a
practical job is related to the speed of the machine because
it is not worthwhile attempting jobs for which a single run occupies more
than two or three hours of machine time.
He described the example as a "fairly simple 3-dimensional field
calculation and the same conclusion would hold for all such calculations.
Professor Kilburn explained that he was not attempting to dissuade the
Authority from purchasing a large ATLAS, but was concerned about the
possibility that people may draw the wrong conclusions about the practicability
of cheaper versions for other kinds of work.
Dr. Gill asked for a clarification of point (d) in the introduction
to Document 2 which was ambiguous.
Dr. Curtis confirmed that he had intended to say that general
computing work would be ten to twenty times more expensive on the IBM 709
than it would be on ATLAS.
Professor Kilburn said that the assumptions which had been made by Dr.
Curtis concerning the overlap of computation with drum and tape transfers were
wrong. Computation could proceed in any case.
If both program. and data were in the core store,
then the computation could proceed at three-quarters of its normal speed
if there were eight tape transfers proceeding simultaneously,
at half-speed during a drum transfer, and at one-quarter speed if all tape
and drum channels were transferring simultaneously.
Dr. Gill distributed a few copies of some notes which had just been
prepared by Dr. D. Howarth of Ferranti Ltd., showing that with the correct
assumptions considerably greater efficiencies are obtained than those quoted by
Dr. Curtis and that the drum would probably be more efficient than the
magnetic tape as a backing store. Dr. Lomer stated that the A.E.A. would
obviously have to study the Document 2 carefully and it was agreed that the
matter should be discussed at another meeting.
Dr. Curtis asked for a written description of the logical design
concerned with drum and tape transfers so that he could understand the way
in which these affected the progress of computations.
Professor Kilburn pointed out that magnetic tape mechanisms were likely to be
the most unreliable parts of a computer installation and that a suitable
number of spares (perhaps 20%) should be allowed for.
He had certainly obtained this impression concerning the I.B.M. installation
at Risley. Dr.
Curtis was surprised at this since the impression which he had obtained from other
I.B.M. installations was that tape mechanisms were reliable but he had not
actually checked with Risley.
The rest of the discussion was devoted to Document 1 which was gone through
in some detail although it was necessary towards the end to concentrate
on those points which Dr. Curtis felt were the more important.
Professor Kilburn began by asking whether the document implied that an A.E.A.
machine would have a different order code from that of MUSE;
if so he felt that the present meeting was pointless.
Dr. Curtis said that his document was essentially a list of queries.
He also explained that his reference to an "attitude" in the
introduction referred solely to the matter of the use of backing stores and the
time-sharing of programs, and not to the order code.
It transpired that many of the comments made by Dr. Curtis were in fact
merely requests for information, since he relied on the privately
circulated design notes prepared by Ferranti Ltd. and had not sought
any further information before writing Document 1. Most of his comments
on the actual design were suggestions for the inclusion of further basic operations.
Professor Kilburn explained that the extent to which basic operations
were provided was chosen with good reason.
There were, for example, already six entry paths into the accumulator.
If more of these were provided more equipment would be required and all
the operations in the accumulator would be slowed down.
Dr. Payne explained that so far as extracoded instructions were
concerned the list was not to be considered as final.
It was, in fact, merely a collection of those which had so far been proposed.
We should know within about a week the details of the basic accumulator
instructions and then, within about a month, it should be possible to
prepare details of all proposed types of extracode instructions and to make a
decision about those which could actually be included in the final list.
Dr. Curtis asked whether he could participate in discussions on this.
The following numbers relate to the numbering of the comments in Document 1:
- (1) Professor Kilburn said that the list of basic instructions
already seen by Dr. Curtis was intended to be complete although it
may turn out in due course that a few further functions are obtained at
no extra cost.
- (2) Dr. Curtis said that the case for a separate exponent
on AL was not strong, but there were a number of reasons why it would be useful.
One of the most important is that the less significant
half of numbers should be obtainable with its own exponent; Dr.
Kerr pointed out that this can be done with the instructions provided,
since al is extracted by first clearing AM and then allowing al to be standardised.
Another reason is that the quotient and remainder resulting from division
should each be available with its own exponent.
Mr. Warburton pointed out that the calculation of the extra exponent
would probably add about 0.3 microseconds to all accumulator operations.
- (4) It was explained that the basic instruction for division with
remainder was intended to be used normally in an extracode routine
that would make certain adjustments to the operands and results, and
Dr. Curtis said that this would answer most of his points.
He and Dr. Howlett did, however, feel strongly that it was important that the
machine should be capable of being made to react differently to the situations
of zero divisor and ordinary exponent overflow respectively,
since this was useful in mistake diagnoses. Dr. Payne and Dr. Kerr explained
that it was intended that the monitoring routine should refer
to directives given by the program on specific cases such as this,
so that the program could specify what action should be taken.
The monitoring routine will be able to test whether an alarm is caused by a
zero divisor or not.
It was agreed that division should be discussed at a later meeting
when full details of the basic division instructions are available.
- (5) It was explained that the exponent overflow could only occur
in these instructions in rare cases, due to preceding B-operations,
and that there was no intention to carry out any standardisation.
- (6) Dr. Payne said that this comment would really be irrelevant since
although operations 38 to 43 were still in the extracode list,
they were a hangover from earlier days and would probably be omitted.
Logical operations are actually done in the B-registers and it would be
inappropriate to provide extracode logical operations on the accumulator.
Dr. Curtis said emphatically that in his experience logical operations
were very frequent and occurred in large chunks. Dr. Payne pointed out that it
would still be more efficient to do these operations in the B-registers.
- (7) Professor Kilburn said that the type of operation suggested
here could easily be provided in extracode.
Dr. Gill said that these operations were certainly interesting
and would appear attractive to a programmer who was used to a fixed point machine,
but he would be glad to know exactly why Dr. Curtis felt that they
would be of great importance in a floating point machine.
Dr. Curtis stated emphatically that they would.
He made the general point that it would frequently be useful to be able to
use the BA digits as an operand for an extracode routine,
and he was assured that this was quite possible.
- (8) It will certainly be possible to provide the ATLAS type of round-off
as a basic instruction, but the type requested by Dr. Curtis would have
to be extracode. Dr. Curtis said that he had come to the conclusion
that it was hardly possible to reject completely the ATLAS method of
rounding, but he still considered any rounding of floating point numbers
to be ridiculous. Professor Kilburn pointed out that considerable discussions
had been held with many interested people on this subject before making the decision.
Professor Metropolis in Chicago had made a very thorough study of
floating point arithmetic and had independently arrived at exactly the
same method of rounding.
- (12) Dr. Gill pointed out that emphasis had been given to shifting as
part of a normal floating operation, but Dr. Curtis said that shifts
should be capable of being called for specifically by the program.
He maintained that it ought to be possible to execute ten shifts within
one microsecond and was surprised to learn that a single shift in ATLAS takes
0.2 microsecond. Dr. Payne pointed out that
a shift down of am by any number of binary places would be performed in
2½ microseconds by multiplication.
It was agreed to investigate the time taken to shift the accumulator
by various means, and Dr. Curtis agreed to specify exactly what forms
of shift he felt were desirable.
- (15) The first version of this operation had originally been
in the extracode list and it was certainly still proposed.
Dr. Payne suggested that the second version might be replaced by a complete
scalar product instruction, but Dr. Curtis maintained that the elementary
step should still be available as an instruction.
- (21) In view of the first sentence in this item (Document 1) Professor Kilburn
asked Dr. Curtis to specify the operations that he thought should be
included and the time which they should take.
Dr. Curtis agreed that he could give the specifications, but the speed would be
determined by what was physically possible.
Professor Kilburn said that if no other operation mattered,
the fastest shifts would be obtained by building twenty-four transfer paths
between B-registers. Dr. Curtis then explained that this was not the solution
which he had in mind; he was thinking merely of a repetitive shift of
one place at a time. It was then said that this would probably take 0.2 microsecond
per place, (possibly 0.3 microseconds due to the necessity to count etc.).
It would also mean a considerable redesign of the B-logic which would take
appreciable development time at this stage and might well affect the speeds of
other operations.
There was some discussion on the exact specification and technique to be
employed in the extracode routines for shifting and it was agreed to discuss
this further at a later meeting.
- (23) Dr. Kerr explained that an explanatory note had been omitted from
the current issue of the description; multiplication and division are
currently done in the B-registers owing to the
absence of an accumulator in the prototype, and present figures
relate to this situation. It is intended eventually that these operations
should be done in the accumulator.
- (29) Mr. Warburton said that an operation on these lines, although
involving a special interpretation of the function part, was not entirely
impossible and he would investigate what it would entail.
Dr. Curtis said that the decrement need not necessarily be as long as
thirteen bits, but it should preferably be at least of the order of ten.
He felt that a sympathetic understanding had been achieved on this point.
- (31) This would be extracoded and will be discussed later.
Dr. Curtis agreed that it was not certain that the use of handswitches
should be encouraged.
- (32) There was much discussion on this point and it was finally agreed
that it should be brought up again at a later meeting.
First of all it was pointed out that instruction 8 as described in
the current description (4.7.60) would, in the example quoted by Dr Curtis,
give the result
4000 0000 0000 0
the last digit being 0 and not 1 as stated by Dr. Curtis.
The fact remains that according to this description the instructions
6 to 8 ignore the smaller number if the exponents differ by 16 or more.
According to Dr. Curtis, programmers would expect to be able to use these
instructions to remove the fractional part of a number and would, therefore,
be caught out by cases in which this number is between 0 and -2-9;
a similar situation had existed in Mercury until a design modification was made.
However it was revealed that the ATLAS proposals had in fact been
changed since June 4th and it was now proposed that in the case of
instructions 6 to 8 the smaller number should only be ignored
altogether if the exponents differed by 32 or more;
otherwise a difference not less than 16 would cause a shift of exactly 16
octal places to occur.
Dr. Curtis felt happier at this; however, Dr. Gill felt that this was not
the right way of meeting all requirements.
- (34) The last part of this comment had already been discussed and
there were reasons why it could not be met.
The dangers pointed out by Dr. Curtis at the beginning of this comment
had all been taken care of in a way that would be explained to Dr. Curtis at a
later meeting.
- (36) Probably possible and to be discussed later.
- (37) Dr. Payne explained that function codes described as "not assigned"
would in fact be dummy instructions.
- (38} Dr. Curtis explained that he would really like to have drum transfers
of the type available on Mercury.
This is a matter of extracode routines which will be discussed later.
- (39) Dr. Curtis explained the idea behind his suggested form of variable
length transfer from magnetic tape. He would like to be able to read a
series of items in rapid succession. The number of words in each item would
be specified and these would be taken from consecutive words on tape,
starting at the beginning of a block and carrying on over as many blocks as
necessary. The instruction relating to the last item would cause the tape to
run on and stop at the end of the current block.
Also some of the items could be referred to by dummy instructions which
would not actually read from tape but merely skip past that item.
He could not understand the proposed instructions 15 and 16
referring to a "code word", but in any case was not particularly interested in this.
He said that he was not likely to want to modify the mechanism number
referred to in a tape instruction, and preferred to use the Ba digits to
specify this number directly. (This led to a discussion with Dr. Kerr who said
that it was preferable to put parameters for subroutines into B-registers,
whereas Dr. Curtis felt that this was a waste of B-registers in spite of the fact
that there were a large number of these in the machine.)
Dr. Curtis said that the reference to the I.C.T. 1301 could be
disregarded since it now appeared that the I.C.T. tape would be quite incompatible.
He would like to see something equivalent to the I.B.M. "end of file" marker,
but he was not sure how this could be achieved.
Any artificially constructed block could, in theory, appear
accidentally in the genuine information. Professor Kilburn said that we were
now working on the idea of putting addresses on the information tracks,
so that the possibility might arise of having artificial addresses
that could act as "end of file" markers. Dr. Curtis liked this idea and
suggested that one might, in fact, use relative addresses for blocks,
so that the first block in a record would always be number 0.
He felt that programmers would find it more convenient to refer to a
mechanism number rather than to the number or label of a reel of tape
as suggested so far for ATLAS.
In conclusion, Dr. Curtis said that he was satisfied that the majority of
his points in Document 1 had been answered although he was disappointed in
the number of concessions which had been made.
Professor Kilburn said that those comments related to the basic
circuitry would be studied to estimate the cost and other implications.
Dr. Curtis said that he would write a more detailed description of what
he thought should be provided in that category.
It was agreed that another meeting should be held at the University on
Monday, September 5th, at which these points could be discussed.
Dr. Gill said that he would also arrange a meeting at which the fixed
store routines and program techniques generally could be discussed with Dr. Curtis.
He also said that Ferranti would always be happy to meet members of the
A.E.A. to give what assistance they could in deciding on the best
configuration of ATLAS to meet their needs.