Summary: Are there good algorithms for out-of-core dense matrix transpose if each row of the matrix is separately compressed?
Details: The matrix is about 1 TB uncompressed, and is roughly but not exactly square. An uncompressed row is less than 6 MB, so many of them fit in RAM at once. On disk, I would like to separately compress each row of the matrix (with a domain-specific, non-random access method), so I need a transpose algorithm that reads from compressed form, recompresses each column, and writes out the compressed columns as the new transposed matrix.
Are any existing out-of-core transpose algorithms compatible with this setup?