Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

> The IBM and DEC formats were really ugly and writing programs for them included many pitfalls. When I began to use an IBM PC, with its much more foolproof FP format, all problems disappeared.

I remember the IBM format was based on hexadecimal, and was thus criticized for wobbling precision. I thought the DEC format was pretty similar to the Intel one. What problems did you have with it, that disappeared when you switched to the IBM PC?



Yeah, I don't remember the DEC format being poor, and some of the differences which did exist really felt like "make sure IEEE-754 is gratuitously incompatible with DEC".

Denormals/gradual underflow support in hardware was one of those, for example. DEC generally trapped on those and let a library handle it. Most of the time, gradual underflow bites people by hiding the precision loss rather than being something useful to exploit for speed.

Hardware support for it meant that people tended to "stash" information in there just like they do for NaN-boxing. AutoCAD, for example, was notorious for having a zillion denormals, none of which had anything to do with calculation.

The number of people who ever benefited from gradual underflow was ridiculously tiny while the number of people who suffered performance loss was huge. This was one of those tradeoffs that wasn't worth it for a very long time--only now that hardware is practically free does it not matter.


The DEC single-precision format was close to the IEEE format, the main difference being that it did not have a useful behavior if the exceptions were masked, so they had to be handled correctly.

On the other hand, the double-precision format, in order to reduce the cost in the hardware FPU, had the same exponent range as single-precision, not like the IEEE formats, which have greater exponent ranges in the longer formats.

The exponent range typical for single-precision FP formats is really too small for solving many problems of physical modelling and simulation.

With the DEC FP format, I ran into overflows very frequently, so I had to add various scale factors in many equations.

On IBM PCs, such overflows never appeared, so there was no need to waste time with determining adequate scale factors. The precise reason why floating-point numbers were introduced was to no longer waste time with the scale factors, as it is needed for computations with fixed-point numbers.


I note you said "DEC format". Were you perhaps on PDPs instead of VAXen?

I'm pretty sure that VAX had support for G_floating contemporaneously with the 8087 (I actually think it predates it but I can't prove it). I can see that MicroVAX had support for it back in 1985 which would seem to imply that mainline VAX had it probably for several years prior.


When it was launched, in October 1977, VAX supported only the "D" double-precision floating-point format, which was the same as in the previous DEC computers, like PDP-11, and which had a too small exponent range.

In 1977 there was the first publication about the Intel floating-point format and the standardization work started soon after that.

The first devices that supported in hardware the Intel FP formats, which were later adopted as IEEE 754, were AMD Am9512 in 1979 (second sourced by Intel as 8232), then Intel 8087 in 1980. (At that time Intel and AMD were frequently partners, only several years later, when Intel began to gain tons of money from the IBM PC, they no longer wanted to share that money with anyone, so they severed the links with AMD)

Meanwhile the debates about the future standard continued and DEC acknowledged that their "D" format had a too small exponent range, so they introduced the "G" format in VAX, which was similar, but not identical (different exponent bias) with the format proposed by Intel.

In 1978 DEC VAX did not have the "G" format and in 1982 it had the "G" format, so it was introduced between 1979 and 1981, possibly at about the same time as Intel 8087, but in any case it was not completely compliant with the proposed standard and DEC still hoped that they might succeed to impose their own FP formats.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: