@SpaceGhostC2C
I get your point, this gets somewhat in the direction of "lawful evil" from Linus.
Intel is probably in the right to do this, but it is an asshole move.
Because, if you say "hey, we developed it and don't want that our competitor is good at it." Then why let the other CPU run the SW anyway?!
Why not do it like so:
"Our SW and so it does run only with our CPUs. With AMD, the SW won't start at all."
But this, this is a real bitch move.
Let it work, but in a bad way / with bad performance.
Because the average user that uses Matlab or other SW that relies on MKL will have no possibility to see why it is that much slower on AMD than Intel.
There is no indication which instructions are used to my knowledge.
And so most of the affected users think:"Hm, AMD sucks really at making CPUs".
But in fact, the don't.
It would be like car manufacturer A develops a new formula for gasoline (for more power, efficiency or whatever) and sells it to every gas station so that everyone can buy it.
But when a car from manufacturer B wants to get the same gasoline, the gas station detects that the car is from B and not A and proceeds by giving the customer with car B the standard gasoline without telling him*.
And this is the point I have a problem with.
Is it the right of Intel to do so? Probably, I'm no legal expert and from my moral standpoint I would say this shouldn't be, but I don't know.
But in the end, still a bitch move.
*With the same price, the same product name whatever.
It is hard to make comparisons, because they are fundamently different things.
But I tried