LLVM is Smarter Than Me
I was reading Algorithms for Modern Hardware
recently, specifically the chapter on
SIMD, and was impressed by
auto-vectorization. The basic idea is that modern CPUs have so-called SIMD1Single Instruction Multiple Data
instructions that allow applying an operation to several values at once, which
is much faster than performing the equivalent scalar instructions one at a time.
Modern compilers can detect certain programming patterns where an operation is
performed repeatedly on scalar values and g...
Read more at blog.sulami.xyz