In this paper we introduce CARRQR, a communication avoiding rank revealing QR
factorization with tournament pivoting. We show that CARRQR reveals the numerical
rank of a matrix in an analogous way to QR factorization with column pivoting (QRCP).
Although the upper bound of a quantity involved in the characterization of a rank revealing
factorization is worse for CARRQR than for QRCP, our numerical experiments on a set of
challenging matrices show that this upper bound is very pessimistic, and CARRQR is an
effective tool in revealing the rank in practical problems.
Our main motivation for introducing CARRQR is that it minimizes data transfer, modulo
polylogarithmic factors, on both sequential and parallel machines, while previous factorizations
as QRCP are communication sub-optimal and require asymptotically more communication
than CARRQR. Hence CARRQR is expected to have a better performance on current and
future computers, where commmunication is a major bottleneck that highly impacts the
performance of an algorithm.