While Mono has had support for SIMD instructions in the form of the Mono.SIMD API, this API was limited to run on x86 platforms.
.NET introduced the System.Numeric.Vectors API which sports a more general design that adapts to the SIMD registers available on different platforms.
The master
branch of Mono now treats the various Vector operations
as runtime intrinsics, so they are hardware accelerated. They are
supported by both the Mono JIT compiler on x86-x64 platforms and via
LLVM’s optimizating compiler on x86-64 and every other Mono/LLVM supported
platform.
We would love to see you try it and share your experience with us.