In my experience, matrix operations where performance matters are usually done on sparse matrices, where a transposition would be done differently. If a matrix package supports both column-major and row-major sparse matrices, it would be a matter of swapping to (!current-major) indexing.
This paper is useful for transpose-once use-many type scenarios, but for real-time transposes inside a main loop, it should be easier to write a fake-transpose wrapper that calculates flipped indices on access.
This paper is useful for transpose-once use-many type scenarios, but for real-time transposes inside a main loop, it should be easier to write a fake-transpose wrapper that calculates flipped indices on access.