No.94
Why do CPUs have separate units for floating point and integer math? Why can't we just run ints through an FPU as a pseudo-float and just forget about ALUs? Obviously, this isn't optimal for whatever reason; hell, AMD even went and completely cut out half of their FPUs in more recent architectures and the SPARC T-1 only had one with eight ALUs, but still, why separate units?
No.98
>>94I think it's a matter of die size. An FPU will take up way more than 2x the area of a single ALU, and can run alongside the ALU without interfering.
No.100
>>98This.
FPUs are fucking huge and typically you don't use theme every cycle like you do with ALU work.
No.101
>>100>>98But could you not take that extra space and add yet another FPU?
No.102
>>101>>100>>98Look at this and think about what was just said. AMD's Bulldozer's FPUs were actually good when it comes to single threaded workloads, almost as fast as the Sandy Bridge FPU (it was only on multithreaded workloads that Bulldozer's FPU fell short). Now think about the differences of die sizes.
No.133
>>102Does this hold up for other architectures?
No.134
A floating point add is way more complex than a fixed-point/integer add. Same for multiply. You need barrel-shifters, multipliers, leading-zero-detectors, etc. Where you can do a simple integer add or multiply in a cycle (or maybe 2-3 if partial products are pipelined), FPU's require deep pipelines to achieve high clock rates. Furthermore you can't just run, say, two 32-bit integers through 64-bit floating point hardware. The group of operations on the mantissa and exponent are very different so you can't do this simple mapping.
In a nutshell, FPUs are way, way more massive and power-hungry than ALUs.
No.323
>>94This is almost opposite of how it used to be. Back before you were a twinkle in your dad's ballsack, CPUs only had integer units. Floating point math was only possible if you wrote your own software solution that simulated an FPU. Later, FPUs were an addon coprocessor that you had to install to accelerate software. Eventually, it was integrated on-die like GPUs today.
No.336
Integer ALUs: N gates
FP ALUs: N*50 gates
"Muh games need 50 pipelined ALUs!"
No.341
>>94because FPUs are slower than jesus nailed to the cross compared to ALUs.
No.342