https://github.com/malstraem/generic-simd-numerics
https://github.com/malstraem/generic-simd-numerics
benchmarks dotnet intrinsics linear-algebra numerics simd
Last synced: about 1 month ago
JSON representation
- Host: GitHub
- URL: https://github.com/malstraem/generic-simd-numerics
- Owner: malstraem
- License: mit
- Created: 2025-11-11T18:16:38.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2026-06-04T14:43:53.000Z (about 1 month ago)
- Last Synced: 2026-06-04T15:12:41.440Z (about 1 month ago)
- Topics: benchmarks, dotnet, intrinsics, linear-algebra, numerics, simd
- Language: C#
- Homepage:
- Size: 396 KB
- Stars: 1
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
- License: license
Awesome Lists containing this project
README
prototype of generic linear algebraic objects using current state of
[System.Runtime.Intrinsics](https://learn.microsoft.com/ru-ru/dotnet/api/system.runtime.intrinsics?view=net-10.0) SIMD vectors
started as try to outperform [Silk.NET](https://github.com/dotnet/Silk.NET), especially on matrix operations with `double` precision
this is primarily for in-house engine, but possibly helpful draft for https://github.com/dotnet/runtime/issues/24168
next step is hardware accelerated ways for type conversions like `Vec4` <-> `Vec4` 🚧
> [!NOTE]
check [benchmark reports](./reports) for generated asm and timings
tested and benchmarked on AMD Ryzen 9 7900X that have
`AVX512 - BITALG+VBMI2+VNNI+VPOPCNTDQ+IFMA+VBMI+F+BW+CD+DQ+VL`
`AVX2 - BMI1+BMI2+F16C+FMA+LZCNT+MOVBE`
`AVX+SSE3+SSSE3+SSE4.1+SSE4.2`