Open eerhardt opened 6 years ago
@tannergooding comments?
I think this isn't really a codegen issue, rather a library issue.
We need to update the code paths to use intrinsics, where possible, and to be more explicit about inlining.
The JIT is already doing better inlining and better follows the underlying ABIs where possible.
Using Matrix4x4 by value methods are significantly slower than using corresponding
ref
overloads. See https://github.com/dotnet/corefx/pull/25388#issuecomment-348360835.We've rejected adding these
ref
overloads to System.Numerics.Vectors to avoid API clutter and because the performance benefit of theref
overloads is not significant.However, the benchmarks showed a benefit for Matrix4x4. We should investigate how much of the Matrix4x4ByRef benefit can be matched with better codegen for the ByValue case. And then implement any improvements.
cc @CarolEidt
category:cq theme:vector-codegen skill-level:expert cost:medium