Modern Raspberry Pi's and other ARM-powered devices usually come with a NEON SIMD unit. SIMD stands for Single Instruction, Multiple Data, sometimes referred to as vector instructions as well. It means that you can use just a single instruction to process multiple values at the same time. For example, with NEON, you can add or multiply up to 16 8-bit integers with a single instruction.

SIMD instructions are very useful for multimedia applications, image processing, digital signal processing, numerical algorithms, matrix and vector operations, machine learning, etc.

These pages are a collection of small, high-performance algorithms using NEON intrinsics, as well as some more information about NEON to get you started.

Useful resources