In the dense and sparse module of mkl I can transpose or conjugate a matrix in the same function that calls the multiplication.
I think (but I'm not sure) that means that it's just changing the algorithm used to pick the elements inside the matrix itself (I like arrays, so i think the structure, internally, is array-like with an algorithm to define the order. But I may be wrong).
This way there is only the cache issue of picking elements not saved sequentially. However it's an operation far less time-consuming, than picking all the elements of the matrix and saving them in another one (even far less memory consuming).
So i was just wondering if there was a built-in way to implement this for the matrix multiplication of sparse and dense matrices in eigen.
Or just a way to "view" the matrix as the transpose or conjugate without any memory manipulation.