MtxVec VCL
|
Performs matrix multiplication optimized for small matrices
Computes: C = alpha*opA(A)*opB(B) + beta*C
The operation must first be initialized with a call to the Init method. The method will use the memory locations of parameters A,B and C passed to the Init routine. This means, that A,B and C may not be resized after calling Init even if they restore the size and layout before calling this routine. There is no other dependence and all objects can be free independently.
Calling TMtx.Size multiple times will not trigger a resize or memory allocation unless the size has changed.
This routine performs no error checking! Any error checking is performed during the call to the Init routine.
The method is about 2x faster than the jit.Mul(a,b,c) overload; It is about 1.3% slower than calling jit.MulKernelDouble(jit.jitter, a,b,c); function It is 3x faster than the Delphi's unrolled-loop matrix multiply.
Copyright (c) 1999-2025 by Dew Research. All rights reserved.
|
What do you think about this topic? Send feedback!
|