This is an archive of the discontinued LLVM Phabricator instance.

[X86][Costmodel] Load/store i8 Stride=6 VF=8 interleaving costs
ClosedPublic

Authored by lebedev.ri on Oct 3 2021, 5:03 AM.

Details

Summary

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/v98qPTTf6 - for intels Block RThroughput: =18.0; for ryzens, Block RThroughput: =6.0
So pick cost of 18.

For store we have:
https://godbolt.org/z/rn5T9E8q6 - for intels Block RThroughput: <=16.0; for ryzens, Block RThroughput: <=4.5
So pick cost of 16.

I'm directly using the shuffling asm the llc produced,
without any manual fixups that may be needed
to ensure sequential execution.

Diff Detail