4 ms·
As an extra note on big/little cores - instead of having the small core break up ops, you could possibly instead have the big core handle higher LMUL natively.
by dzaima 3y ago
As an extra note on big/little cores - instead of having the small core break up ops, you could possibly instead have the big core handle higher LMUL natively. Requires code to use said higher LMUL (currently, clang defaults to LMUL 2, gcc to LMUL 1[0], but that's of course up for change), but would mean that you'd have higher potential throughput for big cores while leaving the register size tractible for the small cores.
Also has some fun possibilities of, say, having native LMUL=2 add/sub, but only LMUL=1 multiplications or something.
[0]: https://godbolt.org/z/YqjWhT8Y8 https://godbolt.org/z/YqjWhT8Y8 - "m1" vs "m2" in "vsetvli"