bigMat.block(...).array()*mat.array() is slower than mat.array()*mat.array()
Submitted by Philippe Marti
Assigned to Nobody
Link to original bugzilla bug (#303)
Version: 3.0
Operating system: Linux
Description
I was doing some simple timings and got suprising timings (at least to me).
with matrices bigMat 500x20, mat1 100x20, mat2 100x20, I compute:
sol = bigMat.block(0,0,100,20).array() * mat2.array();
But compared to:
sol = mat1.array() * mat2.array();
The first computation is ~30% slower on my machine. But:
sol = bigMat.block(0,0,100,20).transpose().array() * mat2.transpose().array()
Is about the same time. Is that really what should be expected ?
Thanks!
Edited by Eigen Bugzilla