The only sched models that for cpu's that support avx2
but not avx512 are: haswell, broadwell, skylake, zen1-3
For load we have:
https://godbolt.org/z/jK85GWKaK - for intels Block RThroughput: =31.0; for ryzens, Block RThroughput: <=17.0
So could pick cost of 31.
For store we have:
https://godbolt.org/z/hPWWhEEf9 - for intels Block RThroughput: =33.0; for ryzens, Block RThroughput: <=13.8
So we could pick cost of 33.
I'm directly using the shuffling asm the llc produced,
without any manual fixups that may be needed
to ensure sequential execution.
clang-format: please reformat the code
- {2, MVT::v16i8, 4}, // (load 32i8 and) deinterleave into 2 x 16i8 - {2, MVT::v32i8, 6}, // (load 64i8 and) deinterleave into 2 x 32i8 + {2, MVT::v16i8, 4}, // (load 32i8 and) deinterleave into 2 x 16i8 + {2, MVT::v32i8, 6}, // (load 64i8 and) deinterleave into 2 x 32i8