Generic CPU discussion

Scrooge McDuck
Scrooge McDuck
Joined: 2 May 07
Posts: 1056
Credit: 17937538
RAC: 11816

mikey schrieb:And here's

mikey wrote:

And here's another problem with cpu's and Projects that use numbers like Einstein, Prime Grid and probably EVERY OTHER Boinc Project and that is why trying to use pc's to make things make sense in Science isn't always as easy as easy as one might think!

https://www.techspot.com/article/2630-number-representation-in-hardware/

The article explains well the history of binary arithmetic and refers to Gottfried Wilhelm Leibniz (1646-1716), a Saxon born in Leipzig. But like binary integers, floating point numbers have been developed much earlier which the article misses. The Spaniard Leonardo Torres y Quevedo (1852-1936) proposed floating point numbers for an (hypothetical) electromechanical calculator as early as 1914. The first computer to implement binary floating point numbers was built by Konrad Zuse (1910-1995), a German civil engineer. He was tired of doing the same structural calculations by hand over and over again. His first computer, the "Zuse Z1" (1938), was still mechanical (runs for a few minutes between mechanical problems). In 1941 he built the fully functional "Zuse Z3" based on electrical relays and capable of 24bit floating point arithmetics. Z3 was destroyed in Berlin during World War II.

William Kahan, "Father of Floating Point", has to be credited with proposing a complete, correct, and unified floating-point number format (IEEE754) that superseded the myriad of proprietary formats that had been developed since the 1940s, solved their problems, and enabled the interoperability of different types of floating-point capable computers.

https://en.wikipedia.org/wiki/Floating-point_arithmetic#History

mikey
mikey
Joined: 22 Jan 05
Posts: 12693
Credit: 1839099224
RAC: 3721

Scrooge McDuck wrote: mikey

Scrooge McDuck wrote:

mikey wrote:

And here's another problem with cpu's and Projects that use numbers like Einstein, Prime Grid and probably EVERY OTHER Boinc Project and that is why trying to use pc's to make things make sense in Science isn't always as easy as easy as one might think!

https://www.techspot.com/article/2630-number-representation-in-hardware/

The article explains well the history of binary arithmetic and refers to Gottfried Wilhelm Leibniz (1646-1716), a Saxon born in Leipzig. But like binary integers, floating point numbers have been developed much earlier which the article misses. The Spaniard Leonardo Torres y Quevedo (1852-1936) proposed floating point numbers for an (hypothetical) electromechanical calculator as early as 1914. The first computer to implement binary floating point numbers was built by Konrad Zuse (1910-1995), a German civil engineer. He was tired of doing the same structural calculations by hand over and over again. His first computer, the "Zuse Z1" (1938), was still mechanical (runs for a few minutes between mechanical problems). In 1941 he built the fully functional "Zuse Z3" based on electrical relays and capable of 24bit floating point arithmetics. Z3 was destroyed in Berlin during World War II.

William Kahan, "Father of Floating Point", has to be credited with proposing a complete, correct, and unified floating-point number format (IEEE754) that superseded the myriad of proprietary formats that had been developed since the 1940s, solved their problems, and enabled the interoperability of different types of floating-point capable computers.

https://en.wikipedia.org/wiki/Floating-point_arithmetic#History 

Now that's cool!!

archae86
archae86
Joined: 6 Dec 05
Posts: 3157
Credit: 7226208262
RAC: 1071022

Scrooge McDuck

Scrooge McDuck wrote:

William Kahan, "Father of Floating Point", has to be credited with proposing a complete, correct, and unified floating-point number format (IEEE754) that superseded the myriad of proprietary formats that had been developed since the 1940s, solved their problems, and enabled the interoperability of different types of floating-point capable computers.

Before it was IEEE754 it was the floating point implementation he specified for Intel's 8087 floating point co-processor for the 8086 family.

Professor Kahan's work was a marvel for accuracy improvement, but was a commercial disaster for Intel.  The 8087 was an enormous chip, thus terribly expensive to build, and the market did not much thank Intel for the fine contribution it made to numeric accuracy.

Personal footnote: the 8087 was designed at Intel Haifa design center in Israel, and I flew to Israel a couple of weeks after the birth of my first daughter in July 1979 to look over the 8087 design for interface compatibility issues with the 8087 (of which I was one of the four design engineers).

Only at the 80486 generation were the terribly complex requirements of Kahan's version compatible with a reasonable silicon implementation.  But we have all benefited ever since.

 

 

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6589
Credit: 318282164
RAC: 397882

I had actually bought one of

I had actually bought one of those co-processors, it was large and needed a special board for it. So what used to be done as emulation via a library ( behind the interrupt call ) became much quicker. I didn't really have a business use case for it though - like many computer hardware pieces I bought them out of fascination, especially with assembly language. For example I wrote a library of graphics primitives in assembler, which was incredibly fast for the time. Those were the days before segment addresses became segment selectors. I have, somewhere in a box, the hefty manuals for Microsoft Macro Assembler and related tools.

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Scrooge McDuck
Scrooge McDuck
Joined: 2 May 07
Posts: 1056
Credit: 17937538
RAC: 11816

archae86 schrieb:Before it

archae86 wrote:

Before it was IEEE754 it was the floating point implementation he specified for Intel's 8087 floating point co-processor for the 8086 family.

Professor Kahan's work was a marvel for accuracy improvement, but was a commercial disaster for Intel.  The 8087 was an enormous chip, thus terribly expensive to build, and the market did not much thank Intel for the fine contribution it made to numeric accuracy.

Personal footnote: the 8087 was designed at Intel Haifa design center in Israel, and I flew to Israel a couple of weeks after the birth of my first daughter in July 1979 to look over the 8087 design for interface compatibility issues with the 8087 (of which I was one of the four design engineers).

Only at the 80486 generation were the terribly complex requirements of Kahan's version compatible with a reasonable silicon implementation.  But we have all benefited ever since.

Wow, I didn't know that the 8087 was the reference model for IEEE754. Interesting to read about your experience from first hand knowledge. Thanks for that.

At that time, I think, the "real" computers were still built in New England, for example the series of minis DEC PDP-11/ -15, -10, VAX, with significantly more memory, wider data words (16, 18, 36 bits), more registers. That have been the work horses for scientific computing, development of UNIX, C, or the ARPANET. Meanwhile, microprocessors initially enabled cheap home computers (Homebrew Computer Club etc.) and office computers. The 8087 was not necessary for the intended purpose of IBM's PC, AT, XT. Amazing that it was Intel of all the companies who implemented this first precisely (deterministic) calculating FPU and set the IEEE754 standard. You would have expected that from one of the big players back then.

As a teenager, I was fascinated by using computers to graphically display fractals (e.g. Mandelbrot set)... these beautiful mathematical structures. On my first 8 bit home computer (some Zilog Z80 replica) without FPU and programmed in BASIC it took almost a week of computing time. After optimizing critical repeated computations using external libraries which emulated required floating point computations directly in assembler (reading lots of magazines, books, adapting examples before), it was still 24..48 hours. Sometime when I was 16 I got my first PC, an i486DX2/66 MHz with integrated 8087 FPU. That was a revelation. The same graphics took seconds with hardware FPU and one could create much more detailed graphics within minutes. Back then I was using Borland's PASCAL compiler (learned at school). There you could easily insert inline assembler code into PASCAL code to replace individual loops or sub-routines to call your own ASM code instead. So you haven't to use Microsoft's Macro Assembler. The 8087 instruction set is very clear and easy to learn which you can't say from 8086/286/386 (if compared to e.g. Motorola 68000: clear by design). The critical inner loop of the Mandelbrot iteration is quickly replaced by 8087 assembler (stack use planned on a sheet of paper, a few ASM lines looked up in a book). And wow, what a speedup. That was really cool back then.

It is also interesting that the 8087 internally uses wider registers for extended 80-bit floating points. There are no rounding errors unexpectedly piling up if you actually use 64 bit (double precision) floats in your higher level code - an ingenious design.

Tom M
Tom M
Joined: 2 Feb 06
Posts: 6460
Credit: 9583804543
RAC: 6954142

https://www.techradar.com/new

https://www.techradar.com/news/hundreds-of-cheap-64-core-amd-epyc-cpus-have-gone-on-sale-on-ebay-aliexpress

A Proud member of the O.F.A.  (Old Farts Association).  Be well, do good work, and keep in touch.® (Garrison Keillor)  I want some more patience. RIGHT NOW!

Tom M
Tom M
Joined: 2 Feb 06
Posts: 6460
Credit: 9583804543
RAC: 6954142

While the CPU's mentioned are

While the CPU's mentioned are relatively cheap compared to their list price they are still expensive to anyone on any kind of budget.

It feels similar to the CPU core count explosion that happened when a lot of data centers started selling Intel server CPU's back when Seti@Home was still alive.

Tom M

A Proud member of the O.F.A.  (Old Farts Association).  Be well, do good work, and keep in touch.® (Garrison Keillor)  I want some more patience. RIGHT NOW!

archae86
archae86
Joined: 6 Dec 05
Posts: 3157
Credit: 7226208262
RAC: 1071022

archae86 wrote:Personal

archae86 wrote:
Personal footnote: the 8087 was designed at Intel Haifa design center in Israel, and I flew to Israel a couple of weeks after the birth of my first daughter in July 1979 to look over the 8087 design for interface compatibility issues with the 8087 (of which I was one of the four design engineers).

Oops, that was a horrible typo.  I was not one of the four design engineers of the 8087 (there were more than four, led by Rafi Nave).  Rather I was one of the four design engineers of the 8086, which was the chip as to which my boss, David Stamm, wanted me to look for interface compatibility problem.

Mike Hewson
Mike Hewson
Moderator
Joined: 1 Dec 05
Posts: 6589
Credit: 318282164
RAC: 397882

We knew what you meant from

We knew what you meant from context. :-)

Even if not intended for the general market, or a new market for home PCs, the 8086 was a substantial game changer. However my very first PC ( after a Commodore 64 ) was an 8088 based machine which I looked upon as a thing of wonder. It did consume a decent amount of a pay packet though and my wife thought me mad, but at least I was not down the pub wasting it on beer was my weak justification. It was a time of my life when I hardly slept anyway ( hospital resident doctor ), it consumed what little spare time I had. I think I first played a game called Impossible Mission. Then I was introduced to programming it, Basic I think was my first try and then later assembler, C and much later C++.

Now where would the internet be now if it were not for a plethora of devices derived from the 8086, and it's initial opening up of a new niche for such a product type ? Computing for the masses followed from IBMs crucial decision to have an open hardware plan ( compare with Apple here and boo if you like ).

I for one am pleased that some one of your calibre participates here.

BTW does anyone remember the Byte magazine ? I have a copy of one devoted entirely to the 8086/88 and it's ecosystem. I have one book full of detail about the ROM code for boot up and another the machine code. The list goes on .... but it was way ahead of the DEC PDP-11 in it's accessibility and with regard to that : myself and a colleague from the Engineering Faculty got into decent strife for using one, well not illegally per se, but inappropriately. We flogged this text based game call Adventure over several late nights ( if you must know, you have to throw the rabbit at the dragon to win ). We were dressed down by our respective heads of faculty, but became minor legends on campus for logging our time against other user's accounts. For shame. ;-)

Cheers, Mike.

I have made this letter longer than usual because I lack the time to make it shorter ...

... and my other CPU is a Ryzen 5950X :-) Blaise Pascal

Tom M
Tom M
Joined: 2 Feb 06
Posts: 6460
Credit: 9583804543
RAC: 6954142

I remember the magazine

I remember the magazine "Byte" but no details. I also have had to move without being able to take everything with me often enough there are many things I no longer own.

Tom M

A Proud member of the O.F.A.  (Old Farts Association).  Be well, do good work, and keep in touch.® (Garrison Keillor)  I want some more patience. RIGHT NOW!

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.