Jump Over Left Menu
Preparation for a Possible ATLAS Computer at AERE
A R Curtis
The rapid increase in demand for computing in the Research Group, especially for experimental computing in which the programs are very complex but, unlike reactor physics programs, need constant modification, makes it desirable that eventually there should be a large powerful computer at Harwell. Since the Ferranti ATLAS is the most likely one to be chosen, the author believes that some consideration should be given now to the problems of making effective use of it. The time (probably 3 years minimum) before it could be installed may not be any too long to solve these problems; and what is known of the manufacturers' current intentions is not enough to be sure that, by themselves, they would solve them to the satisfaction of Harwell users.
There are two main headings to be considered: suitability of the computer hardware, and suitability of the system programs. They should be thought of against the background of a switch of work to ATLAS after 4 years of building up experience and program stocks on the IBM 704, 709, 7090 and STRETCH computers. These will have been used from a distance, with programs written largely in FORTRAN, and communication with the computer probably through IBM magnetic tape prepared and processed by a small IBM computer - the 1401 - at Harwell. Users at AEA Winfrith will probably have similar experience.
2 COMPUTER HARDWARE
We have no up-to-date specification from Ferranti of the ATLAS system. It is understood that, since they last visited Harwell to describe it, several important changes have been agreed between Ferranti and Manchester University. These might not always be advantageous from the point of view of the type of use likely to be made by Authority users. As an example, the machine accumulator, it is believed, will be reserved for arithmetic only, since otherwise it is slowed down. Logical operations will have to be carried out in B lines. A similar restriction on Mercury has caused difficulties in its use on the many logical and data handling processes that seem to form a larger proportion of complex programs than might be expected.
It is suggested, therefore, that Ferranti should be invited to give a further, and it is hoped fairly complete, description of their intentions; that decisions should then be made in the Research Group about what, if any, special features (such as shifting and logical operations in the accumulator) should be requested from Ferranti if any contract was placed. For this, further meetings with Ferranti might be necessary in order to assess the drawbacks as well as the advantages of any modifications considered; for example, how much the accumulator might be slowed down. A final specification should then be agreed as the basis for any possible contract. The point of the present suggestion is the amount of detail into which the author believes it is desirable to go.
A further hardware consideration is the input/output techniques to be used. It is assumed that both Harwell and Winfrith will be using IBM1401 computers for processing magnetic tape which will be used as the main input/output medium on the 7090 and STRETCH; and that the convenience of this procedure, the need to keep the use of STRETCH available, the use of the 1401 as terminal equipment for data transmission, and the development of other uses for the 1401, will decide that the 1401's should be retained and used for ATLAS input/output. Further, there are likely to be stocks of programs and numbers on IBM tapes which one would not wish to transcribe to cards - libraries of nuclear data, for example. If this is so, Ferranti should be asked to develop a means of attaching IBM tape units to ATLAS, so that communication with the 1401's and so with STRETCH will be possible. If this is done, consultation about the exact facilities to be provided would be necessary.
On the other hand, it may be that the ICT 1301 could take over the off-line input and output, and that it might not be thought necessary to maintain a communication link with STRETCH. Then if the whole Research Group were to switch its work from IBM to Ferranti computers, and if a data transmission link based on the ICT 1301 became available, and if the 1301 were capable of taking over the work of the 1401, there would be no need to have IBM tape units with ATLAS. Library data would have to be transcribed via punched cards (approximately 100,000 cards for the nuclear cross-section library). Policy on this point would presumably have to be decided quite early.
The Ferranti preference for input/output arrangements is to time-share the computer to process input and output tapes while computing. It is thought that this may involve severe organisational problems in a computing group doing the kind of work common in the Authority, where programs cannot always be expected to observe the conventional restrictions which must be imposed in order to make this time-sharing possible, for example in leaving tape channels free. It is certainly true that large-scale computing groups have not found time-sharing between programs in this way attractive, the initiative for it being shared largely between manufacturers and academic institutions.
Again, there is a strong demand for the immediate output (on-line) of monitoring information which often enables the physicist or mathematician, present while his work is being run, to save computer time by recognising and abandoning abortive runs. It is not always practicable to devise objective tests which can be programmed for this purpose. Accordingly, it is thought that a reasonably fast on-line printer is necessary.
3 PROVISION OF PROGRAM
There is a great and often forgotten advantage in using IBM computers - the vast stock of programs available through the SHARE organisation, the cash value of which is very large (approximately £1M.). These programs are valid, with minor changes, for the 704, 709 and 7090 computers, but most of them would need re-writing for STRETCH or ATLAS. (Some of these, it is safe to assume, would be re-written for STRETCH in the USA). An increasing proportion of programs, however, is being written in FORTRAN, an automatic coding scheme devised by IBM but now so widely used in the USA that most manufacturers write FORTRAN compilers for their new computers. It is not known how efficient these compilers are; but IBM FORTRAN is claimed, with considerable justice, to produce more efficient machine language programs than good human programmers. This feature undoubtedly sets it apart from other automatic coding schemes.
Much of the new program now being written in the Research Group is in FORTRAN, and by the time ATLAS arrived there would be a large stock of FORTRAN programs. It is thought, therefore, that unless an efficient FORTRAN compiler, at least, is written for ATLAS the switch of work to it would involve an intolerable dislocation of this work. Such a compiler would enable use to be made of those SHARE programs which will be written in FORTRAN, provided that access to them can be arranged. (Unless the Research Group had an IBM 704, 709, 7090, or STRETCH computer, it would be dependent on other Groups of the Authority for some of the advantages of SHARE membership.)
But FORTRAN is now more than a mere compiler. it provides a complete operating system (Monitor), an assembly program for machine language programs, for use either as FORTRAN sub-programs or autonomously, a library of sub-programs and sub-routines, and a set of program diagnostics. it is suggested that all these are really desirable.
Ferranti are known to be working on their own ideas for automatic programming of ATLAS, and they should be requested to describe those more fully. However, it is not thought likely that they intend to produce any kind of FORTRAN system, let alone the comprehensive one recommended. Nor is the Manchester University idea of a compiler to write compilers likely to be of much help for this project, for several reasons. it is suggested that the Research Group should itself write the FORTRAN system. this would give it control over the facilities provided, for although all present FORTRAN facilities should be included, there is no reason why some of the restrictions of FORTRAN should not be removed and extra facilities provided.
The original FORTRAN took some 30 man-years of programming effort. it is believed that this could be greatly reduced, but with the addition of the extra facilities incorporated in later versions it might be expected to take half this effort. this means that work should be started more or less immediately if there is a serious chance that an ATLAS will be ordered.
4 PROPOSED SCHEME OF WORK
In order to write a FORTRAN processor for ATLAS, it should be envisaged that not fewer than fore programmers should be committed. More might be needed once the stage of breaking down flow-charts into machine language coding was reached. Any extra programmers should not come into the FORTRAN team completely unfamiliar with the project, since they would then be of little help. Accordingly, it is suggested that a team of four should be set up to study the problem; that they should issue frequent notes which should be circulated to all programmers, and should hold regular (fortnightly?) colloquia to which all would be invited.
At these, progress would be reported, ideas explained, and suggestions gratefully received; so that an atmosphere would be created in which the problem and the methods being used to solve it would be reasonably familiar to all. Then, if extra programmers had to be recruited for the last year, they would be able to pull their weight very quickly.
The objects of the FORTRAN team would be:
- to produce a SAP-type assembly program to be used:
- for assembly of the processor when written, and
- as the assembly program used by the processor;
- to study methods of achieving compilation of FORTRAN source program into efficient object program, and to flow-chart the methods chosen. This phase to be completed not later than mid-1962;
- to code the processor and get it working. This phase would presumably be carried out on MUSE, any limitations imposed on the processor (but not on the programs compiled) being accepted. The total computer time that might be needed for development of the processor is difficult to estimate, but would be unlikely to exceed 100 hours.
5 NOTE ON ORION
It may be that Ferranti ORION computers will come into use in the Research Group within about two years. If so, the remarks about the desirability of a FORTRAN system apply just as strongly. Any team that could produce this in time could easily produce FORTRAN for ATLAS in the time between delivery of the two systems, and it would clearly be desirable to make use of the experience gained in this way.
To produce FORTRAN for ORION in two years would naturally be a heavier task than that considered above. effort would have to be committed immediately, to work full-time on the project, and greater use made of IBM's experience - which is available - than was envisaged. There would probably be a final phase in which all available programmers were diverted to coding the system, so as to get it done in a few months. but probably the value of the resulting system to the Research Group would be very high, and it should certainly be considered. the team should consist of four people, with two others in reserve in case of need, to do the flow-charting, and then as many as possible for the coding.