I agree with the overall thrust of this but this...
"Even after they made their case, we were fairly
direct in asking them why they couldn't do a
simple recompile and use SSE instead of x87.."
This is hardly a simple recompile. Sure, with most codebases you can simply "flip the switch" in your IDE or at the command line, rebuild, and everything will work fine. Doing this in production software requires re-testing everything from the ground up as (especially in performant code, and different optimizing scenarios) a change like this can have side effects.
Except that the compilers are typically mature enough where you CAN flip the switch and have SSE output instead of x87. On Mac OSX at least, gcc uses SSE by default for floating point operations.
It's like compiling for ARM and forcing codegen into Thumb mode so it looks worse performance-wise.
No, I agree that you can flip the switch. Absolutely. In gcc as well as MSVC. It's a flag, nothing more.
I just don't think you can flip the switch without also doing due diligence so far as re-testing goes. I wouldn't feel comfortable making that sort of change and just blindly shoving it into production. So it's really not "flip a switch" it's "flip a switch and re-test the entire codebase" IMO. It requires dev resources.
3 comments
[ 5.3 ms ] story [ 47.4 ms ] threadIt's like compiling for ARM and forcing codegen into Thumb mode so it looks worse performance-wise.
I just don't think you can flip the switch without also doing due diligence so far as re-testing goes. I wouldn't feel comfortable making that sort of change and just blindly shoving it into production. So it's really not "flip a switch" it's "flip a switch and re-test the entire codebase" IMO. It requires dev resources.