By: Linus Torvalds (torvalds.delete@this.linux-foundation.org), May 23, 2022 12:30 pm
Room: Moderated Discussions
Brendan (btrotter.delete@this.gmail.com) on May 23, 2022 12:41 am wrote:
>
> For some reason you think my "libraries keep doing what they do now (using the
> common subset when ISA is different)" is completely different to your "libraries
> keep doing what they do now (using the common subset when ISA is different)"?
No.
I think your "common subset" is pure and utter garbage, and makes AVX512 worthless.
If libraries use the "common subset", then they won't be using AVX512 at all by default in a heterogeneous situation.
And if they don't use AVX512 by default, then AVX512 is simply worthless, and shouldn't be wasting any silicon that could be much better used for other things.
That's my argument. If 99% of all AVX use is by libraries (and that's simply reality, as shown by AVX2), then if the library by default only uses the common subset of the ISA, then the "extended subset" is just waste and should be killed.
End result: heterogeneous ISAs don't work outside of embedded environments (and the s390 counter-example mentioned in this thread is not really a counter-example: s390 is practically speaking about as embedded as you can be).
I'm simply not interested in your "special case code" thing. Special case code simply doesn't matter in the big picture. It's mental masturbation.
Linus
>
> For some reason you think my "libraries keep doing what they do now (using the
> common subset when ISA is different)" is completely different to your "libraries
> keep doing what they do now (using the common subset when ISA is different)"?
No.
I think your "common subset" is pure and utter garbage, and makes AVX512 worthless.
If libraries use the "common subset", then they won't be using AVX512 at all by default in a heterogeneous situation.
And if they don't use AVX512 by default, then AVX512 is simply worthless, and shouldn't be wasting any silicon that could be much better used for other things.
That's my argument. If 99% of all AVX use is by libraries (and that's simply reality, as shown by AVX2), then if the library by default only uses the common subset of the ISA, then the "extended subset" is just waste and should be killed.
End result: heterogeneous ISAs don't work outside of embedded environments (and the s390 counter-example mentioned in this thread is not really a counter-example: s390 is practically speaking about as embedded as you can be).
I'm simply not interested in your "special case code" thing. Special case code simply doesn't matter in the big picture. It's mental masturbation.
Linus