%0 Journal Article %J SIAM Journal on Scientific Computing %D 2008 %T Block Gram–Schmidt Orthogonalization %A Stewart, G.W. %K blocked algorithm %K GramSchmidt algorithm %K orthogonalization %K QR factorization %X The classical Gram–Schmidt algorithm for computing the QR factorization of a matrix $X$ requires at least one pass over the current orthogonalized matrix $Q$ as each column of $X$ is added to the factorization. When $Q$ becomes so large that it must be maintained on a backing store, each pass involves the costly transfer of data from the backing store to main memory. However, if one orthogonalizes the columns of $X$ in blocks of $m$ columns, the number of passes is reduced by a factor of $1/m$. Moreover, matrix-vector products are converted into matrix-matrix products, allowing level-3 BLAS cache performance. In this paper we derive such a block algorithm and give some experimental results that suggest it can be quite effective for large scale problems, even when the matrix $X$ is rank degenerate. %B SIAM Journal on Scientific Computing %V 31 %P 761 - 775 %8 2008/// %G eng %U http://link.aip.org/link/?SCE/31/761/1 %N 1 %R 10.1137/070682563