Quote:
Originally Posted by tormento
Wasn't compiled using neutral flags?
|
A highly optimized library wouldn't use a neutral flag. Also there's no neutral flag. If you have Intel CPU then all you can do is make sure your program runs fastest on that Intel CPU. If later AMD CPU appears and has different characteristics, likely some of the previous optimization won't make it as fast as on Intel CPU.
One example would be Intel has avx down clocking. So to reduce the chance of that you can carefully reduce the amount of heavy avx computing, and let CPU stay on light load frequency (higher frequency). But AMD doesn't have avx down clocking so the best thing to do is give it all the heavy lifting as much as possible.
Intel compiler for example when compiling avx 512, will take the down clocking in to account, and emit code that is not too hard for the CPU, so it won't run too fast to run slow (lol) but if AMD comes with 512 some day and it does not clock down, then when it runs the same binary it would not use its 100% potential.