Re:.NET Core Image Processing
by jamessouth on Friday January 20, 2017 @04:06PM
(#13446970)
Thanks. Didn't know about that library. We do a lot of matrix operations but have so far found System.Numerics.Vectors covers our immediate use cases.
I found that matrix multiplication of dense matrices using MKL was about 60x faster than 'plain' C# code (on a recent core i7 CPU). The Vector<T> class will get you only some of that gain - mainly because MKL uses the FMA CPU instruction (fused multiply and add) that is designed specifically for matrix multiplication, + lots of other optimisations that Intel can make that the .NET jitter can't/won't.
Re:.NET Core Image Processing
by jamessouth on Sunday January 22, 2017 @06:00PM
(#13458177)
That's some improvement. Will definitely have a proper look.
If you don't register a provider you just get plain .NET code running serially (though it may user Vector<T> in future versions).
See:
https://github.com/mathnet/mathnet-numerics/tree/master/src/...