Why is the x87

By: Tzvetan Mikov (tmikov.delete@this.gmail.com), June 8, 2006 8:18 pm
Room: Moderated Discussions
It seems that the x87 FPU is universally accepted as "bad", but I haven't seen a good explanation why. Is it because it is ugly architecturally, or because it is slow ? If it is the latter - is it impossible to design fast hardware or impractical to write fast software ?

My limited experience with writing (trivial) x87 assembler code about 10 years ago was quite painless. I had to rewrite several simple FP routines in assembler to speed them up and, if memory serves me, I got at least 2x (perhaps more) speedup compared to code generated by Borland C. The stack made coding simple FP expressions trivial and it was also possible to use it as a kind of regular register storage since you could access ST0-7 directly. My speedup was mostly from keeping a couple of variables used in a loop inside the FP stack.

So, what is the problem ? Is it the non-standard 80-bit format (I doubt it), or is it that the instruction set isn't sufficiently orthogonal, or that the FP stack (or something else) creates insurmountable serialization restrictions ? Are there fundamental reasons why the FP stack can't use register renaming and etc ?

 Next Post in Thread >
TopicPosted ByDate
Why is the x87 Tzvetan Mikov2006/06/08 08:18 PM
  Should be: Why is the x87 slow ? (NT)Tzvetan Mikov2006/06/08 08:19 PM
  Why is the x87 Linus Torvalds2006/06/08 09:56 PM
    Why is the x87 Tzvetan Mikov2006/06/09 11:04 AM
      Why is the x87 Linus Torvalds2006/06/09 02:00 PM
  Why is the x87 Michael S2006/06/09 03:01 AM
    Why is the x87 Tzvetan Mikov2006/06/09 01:34 PM
      Why is the x87 Linus Torvalds2006/06/09 02:05 PM
        Why is the x87 Tzvetan Mikov2006/06/09 07:34 PM
          Why is the x87 Michael S2006/06/10 09:54 AM
            Why is the x87 Tzvetan Mikov2006/06/10 12:41 PM
              Why is the x87 Linus Torvalds2006/06/10 01:28 PM
                Why is the x87 Tzvetan Mikov2006/06/10 03:00 PM
                  Why is the x87 Rob Thorpe2006/06/12 01:03 AM
                    Why is the x87 Tzvetan Mikov2006/06/12 10:38 AM
                      Why is the x87 Rob Thorpe2006/06/13 02:29 AM
                        Why is the x87 Tzvetan Mikov2006/06/13 11:42 AM
                          Why is the x87 Rob Thorpe2006/06/14 01:36 AM
                Why is the x87 john evans2006/06/10 09:56 PM
                  Why is the x87 rwessel2006/06/11 12:49 AM
                    Why is the x87 Michael S2006/06/11 03:04 AM
                    Why is the x87 Rob Thorpe2006/06/12 12:46 AM
                      Why is the x87 rwessel2006/06/12 01:12 AM
                        Why is the x87 Linus Torvalds2006/06/12 08:53 AM
                          Why is the x87 rwessel2006/06/12 08:27 PM
                          StacksRob Thorpe2006/06/13 02:36 AM
                            Stacksrwessel2006/06/13 02:32 PM
              Why is the x87 Michael S2006/06/10 01:59 PM
                Why is the x87 Tzvetan Mikov2006/06/10 03:04 PM
Reply to this Topic
Name:
Email:
Topic:
Body: No Text
How do you spell green?