Project 1: Machine parameters This was a project to describe "machine parameters" to facilitate porting programs between different systems. The project was completed with a document published 1978 in several journals, see the second item at "Documents" at the bottom of this file. It has also influenced the machine parameters available as intrinsic functions in Fortran 90. ----------------------------------------------------------------------- Oxford 1975: ============ Special session on environmental constants and classification summarised in the minutes, pp 10-12. SESSION ON ENVIRONMENTAL CONSTANTS AND CLASSIFICATION, 11,15 AM, JANUARY 15 Dr Pool distributed notes by Mr Cody on this topic, explaining that the paper, called 'Desirable Arithmetic Design of Proposed Math-Net Computer', was an internal ANL memorandum, and had not been written for use as a discussion paper by WG 2.5. Note: Towards a Set of Machine Constants - B Ford Dr Ford outlined some of the work already published in this field; Ward and Reddish (1971), a London University working party study, and contributions by IMSL to Signum. The present note arose from discussions at JPL in November 1974 between Dr Aird, Dr Byrne, Dr Krogh, Dr Pool and himself. In it they suggested two sets of constants: a primary (or minimum) set and a desirable (or expanded) set. Dr Ford explained that the document, prepared at short notice, was not presented as a final proposal but as a working draft version. During the discussions at Pasadena an attempt had been made to define the constants and name them systematically. He invited members to comment on the suggested constants. Discussion: Several members wondered why eps had been defined as the smallest positive number such that y + y * eps /= y. Dr Ford explained the views of the supporters of this generalised definition. It was to circumvent 'number wobble' on hexadecimal machines. Dr Smith wondered when 1 + eps /= 1 was not sufficient. He also quoted an example where 1 + eps /= 1, 1 - eps /= 1 led to different values for the smallest such eps. Professor Dekker suggested as a possible definition for eps, the smallest positive quantity such that fl(a op b) = a(1+eps1) op b(1+eps2), |eps1|, |eps2| < eps for any a, b, where op is one of +, -, x or / . Dr Reinsch noted that one could define eps for an arbitrary set of operators and combination of operators. The meeting preferred a Wilkinson-like definition. Dr Ford explained that inf had been included because it was useful. Without it, four more constants dealing separately with the S, 1/S, -S and -1/S cases would have to be included in the primary set. Dr Reid added that Professor Dekker's example of difficulties on a CDC computer could be avoided by choosing an appropriate value for eps. Dr Ford agreed with Professor Stetter that the radix definition needed sharpening. The radix value might be different for integers and reals, for example. A similar tightening of definition was required for the constant which indicated the number of significant digits. Dr Smith quoted instances where this constant was useful. Professor Fosdick expressed concern about the naming of the constants. He would prefer some common identification feature which would assist the programmer in avoiding the proscribed variables in general programming. The Chairman asked members of the working group to send their written comments on the subject of machine constants to Dr Ford. AFTERNOON SESSION, 2.15 PM, JANUARY 15 The morning discussion continued. Dr Reid agreed to prepare a document for submission to the ANSI FORTRAN Standards Committee in the hope of affecting the new standard. Most members of the Group felt that the advice of compiler experts would be a necessary preliminary, but Dr Lawson disagreed. On FORTRAN dialects Dr Pool noted that it would be a service to the community to gather together all known reports and perhaps then 'to fill in any gaps'. Dr Smith observed that it might be better to describe the aspects of FORTRAN best avoided. However, Professor Fosdick felt that Professor Gear might be willing to undertake the collection of reports and it was agreed to ask him to do so. Dr Reid also agreed to prepare a critique of the new FORTRAN standard. Oak Brook 1976: =============== Dr. Ford reported on the progress of his paper "Machine Characteristics and their Parameterization in Numerical Software". The current draft was the fourth, and he believed it represented a con sensus of views expressed at the first meeting of the Working Group and at a workshop on transportable numerical software at Argonne in August 1975. It had been circulated widely and he had received detailed comments representing the views of about 100 people. In general the comments were favorable and there was common agreement that precise conventions of the type outlined in the document are required. Dr. Reinsch said that the discussion at the Portability Workshop should be taken into account in the preparation of a final document. This was agreed, and a special session for the afternoon of Wednesday, June 23 was proposed and agreed involving members of the Working Group and of the Portability Workshop to discuss the subject. Dr. Ford agreed to prepare a draft following this for discussion at a later session of the Group. There was discussion on whether implementation should be by function calls rather than as constants, but the meeting agreed with Dr. Ford that at this stage it was important to agree on attributes rather than upon implementation. ----- Dr. Ford presented to the Working Group the new draft prepared by Dr. Reid, Professor Dekker and himself. The need to discuss the arithmetic operations and their results for the system of INTEGER numbers separately from those for REAL and DOUBLE PRECISION numbers was noted, and a number of modifications to the draft were agreed. After discussion it was agreed not to include a list of actual values of the various parameters for known configurations. The document was discussed, amended where desired, and agreed paragraph by paragraph. Further proposed amendments could be sent to Dr. Ford at Argonne National Laboratory to be received by July 31, 1976. Dr. Ford and Dr. Smith would then draft a final document, in consultation with Mr. Cody. This would be sent forward to TC-2 for approval for publication as an official IFIP document. Amsterdam 1977: =============== Dr Ford explained that he had presented the document to TC-2 and they had expressed concern - 1. over the title 2. the reference to the intrinsic functions 3. the particular use of the words underflow and overflow After some discussion it was proposed by Professor Dekker and seconded by Dr Reid that the reference to the intrinsics be removed and "underflow" and "overflow" be replaced by "underflow threshold" and "overflow threshold". Dr Ford would be the editor of the paper and as such was given leave to change the title of the paper in preparation for its presentation to TC-2. It was agreed that the Chairman of WG 2.5 should take the revised document to TC-2. IŁ approved it was further agreed (proposed Dr Reid, seconded Professor Stetter) that Dr Ford be also regarded as "editor" for the purposes of publication. It should appear in a wide variety of journals, at the editor's discretion. The following possibilities were suggested: TOMS, Comm. ACM, IMA Bulletin, Algol Bulletin, Sigplan Notices and Signum Newsletter. --- The redrafted paper was formally adopted. The Chairman was asked to request the adoption of the paper by TC-2 so that it might be published under the IFIP name. Its editor, Dr Ford, would be free to make any further minor modifications (including changing the title) and when adopted by TC-2 to arrange its publication. Novosibirsk 1979: ================= Brian Ford is continuing to watch the situation with a view to a possible revision sometime in the future. Brown reported that his paper on the floating-point model had been rewritten (IFIP/WG 2.5 (Novosibirsk-11) 611), that the model has been accepted as a basis for the arithmetic in the language ADA (Ford queried whether this was really so), that his proposal for environment parameters had been revised (IFIP/WG 2.5 (Novosibirsk-10) 610) and that Schryer's test program for checking parameter values has been completed. He drew attention to the preliminary results given in an appendix to (IFIP/WG 2.5 (Novosibirsk-10) showing values for parameters and details of certain apparent anomalies. Fosdick remarked that this table was particularly useful in that it permits ready grasp of the efficacy of different manufacturers' arithmetic. Reinsch, however, remarked that certain other dirty features, such as biased rounding, may pass unnoticed. Schryer's program may need quite long runs (e.g. a few minutes on CDC 7600) for results in which one can be fully confident. Gear remarked that different compilers on the same machine may need different parameter values. Boulder 1981: ============= Ford suggested that the paper on machine parameters (IFIP/WG 2.5 (Amsterdam-4)304) should be reworded. Brown remarked that he and Feldman had gained a lot from this work. Reid was against making such amendments; no wording is likely to satisfy everyone and he thought that we should support what we agreed. Documents: ========== 1. B. Ford, "Preparing conventions for parameters for transportable numerical software", in Portability of Numerical Software, ed. W. Cowell, Lecture Notes in Computer Science, 57, 68-91, Springer-Verlag, 1977. 2. B. Ford (ed.), "Parameterization of the Environment of Transportable Software," ACM Trans. Math. Soft., Vol. 4, 100-103, 1978; also in SIGNUM Newsletter, Vol. 13(2), 20-33, 1978; SIGPLAN Notices, Vol. 13(7), 27-30, 1978; IMA Bulletin, Vol. 14, 179-182, 1978; Algol Bulletin 42, 7-10. 1978: Computer Physics Communications, Vol. 15, 1-3, 1978.