In reply to Ian Wakeling.

As far as I know, there is no performance difference between using a row or a column vector. However, multiplication on the left and multiplication on the right access the matrix data in different ways. One way might be experiencing more cache misses than the other.