3 ms·
Personally I’ve never been able to beat gcc or icx autovectorization by using intrinsics; often I’m slower by a factor of 1.5-2x. Do you have any wisdom you ca
by capyba 1y ago
Personally I’ve never been able to beat gcc or icx autovectorization by using intrinsics; often I’m slower by a factor of 1.5-2x.
Do you have any wisdom you can share about techniques or references you can point to?
- jesse__ 1y agoI recently finished a 4 part series about vectorizing perlin noise.. from the very basics up to beating the state-of-the-art by 1.8x https://scallywag.software/vim/blog/simd-perlin-noise-i https://scallywag.software/vim/blog/simd-perlin-noise-i
- capyba 1y agoVery cool, thank you for sharing!
- mort96 1y agoYou may not be able to beat the auto-vectorizer for problems which can be auto-vectorized, but you have almost certainly encountered situations which the compiler can't auto-vectorize but where you could've manually written a SIMD implementation which beats the compiler's scalar code.
- capyba 1y agoExcellent point, that makes a lot of sense. You’re absolutely right that I’ve only tried problems that could be auto vectorized…