I'm looking at speeding up matrix-vector products but everything I read is about how to do it for very large matrices. My case, the matrices are small but the number of times it must be done is very large.
What methods, if any, are there to optimize this? Would it be faster to construct a really big diagonal block matrix out of the small matrices and one big vector made of the smaller vectors and use the techniques for the large matrix-vector speedups? Or would setting up the global matrix and vector kill any benefit there?