diff --git a/Solver/Intrinsics.cs b/Solver/Intrinsics.cs index 46e6bbd..14b3487 100644 --- a/Solver/Intrinsics.cs +++ b/Solver/Intrinsics.cs @@ -114,6 +114,13 @@ internal static class Intrinsics [MethodImpl(MethodImplOptions.AggressiveInlining)] public static Vector256 ReciprocalSqrt(Vector256 data) { +#if !IS_DETERMINISTIC + // Accurate to 14 bits + if (Avx512F.VL.IsSupported) + return Avx512F.VL.ReciprocalSqrt14(data); +#endif + + // Accurate to 12 bits if (Avx.IsSupported) return Avx.ReciprocalSqrt(data);