Hacker News new | ask | show | jobs
by olliej 2398 days ago
This is hardly the first time this has happened.

In this case their math library didn't do a CPUID feature test, but rather a vendor name test. It would be equivalent to testing website compatibility by doing a user agent check with just the browser name (e.g. navigator.userAgent.indexOf("Netscape"), etc)

ICC also historically generated intentionally bad code for non-intel platforms - deliberately making function loaded depend on intel vs. everyone else rather than by feature set.

2 comments

Yes, which is why I posted this story to raise awareness. It's shocking to me how even many software developers don't know about this.

https://www.agner.org/optimize/blog/read.php?i=49

Nvidia is also pretty good at this, shipping FPU optimized PhysX library when SSE was widespread.
Nice!