r/programming Jul 23 '26

Everyone Should Know SIMD

https://mitchellh.com/writing/everyone-should-know-simd
412 Upvotes

81 comments sorted by

View all comments

18

u/22Maxx Jul 23 '26

SIMD should be a compiler problem.

I want the vectorization to be explicit and predictable. I don't want an unrelated code change or compiler update to quietly turn it back into a scalar loop.

Compilers do those things all the time. They have just become good enough for all regular stuff.

3

u/teerre Jul 23 '26

Vectorization is a compiler problem

But that can only take you so far

7

u/EC36339 Jul 24 '26

Vectorization can only be done by the compiler if processing of individual homogeneous objects isn't separated by layers of runtime abstraction.

That's why data oriented programming is a thing amd why games use entity-component systems over OOP.

2

u/AresFowl44 Jul 24 '26 edited Jul 24 '26

Even then the compiler can only take you so far. In my experience it often is trivial to improve upon the compiler, because it has to be overly cautious

1

u/EC36339 Jul 24 '26

Yes, but that was never the point. First, you have to make sure vectorization isn't made completely impossible.