3 ms·
I got a rewrite for Matrix3x2, Matrix4x4, Quaternion, and Plane in for .NET 8 as well. It should provide up to 48x perf improvements as compared to .NET 7
by tannergooding 4y ago
I got a rewrite for Matrix3x2, Matrix4x4, Quaternion, and Plane in for .NET 8 as well.
It should provide up to 48x perf improvements as compared to .NET 7
- bob1029 4y agoAwesome! I believe Vector4.Transform(Vector4, Matrix4x4) is my hottest path right now, but as I get into more complex scene graphs, Matrix4x4.Multiply(Matrix4x4, Matrix4x4) will likely pop into the profiler.
- tannergooding 4y agoFor `Vector4.Transform(Vector4, Matrix4x4)` we had `5.22ns` to `2.46ns` (~53% faster) For `Matrix4x4.Multiply(Matrix4x4, Matrix4x4)` its a bit less at `10.04ns` to `8.38ns` (~17% faster) The main improvements tracked by: * https://github.com/dotnet/perf-autofiling-issues/issues/11442 https://github.com/dotnet/perf-autofiling-issues/issues/1144... * https://github.com/dotnet/perf-autofiling-issues/issues/11480 https://github.com/dotnet/perf-autofiling-issues/issues/1148... * https://github.com/dotnet/perf-autofiling-issues/issues/11467 https://github.com/dotnet/perf-autofiling-issues/issues/1146... There are some more cases to be improved. `Matrix4x4.Multiply` in particular I need to update to use a proper SIMD implementation rather than its current scalar implementation. If you have any other core scenarios where it's important, let me know and I can try to focus on them sooner, rather than later ;)
- bob1029 4y agoThanks for the detailed notes! I have no special requests at this time. I'll dig into the above issues and comment on GH as needed.