A Compiler-Blockable Algorithm for QR Decomposition.
Steve Carr, Richard B. Lehoucq · 1995
Because of an imbalance between computation and memory speed in modern processors, programmers are explicitly restructuring codes to perform well on particular memory systems, leading to machine-specific programs. This paper describes a block algorithm for QR decomposition that is derivable by the compiler and has good performance on small matrices --- sizes that are typically run on nodes of a massively parallel system or workstation. The advantage of our algorithm over the one found in LAPACK is that it can be derived by the compiler and needs no hand optimization. 1 Introduction The trend in high-performance microprocessor design is toward increasing the computational power on chip. Unfortunately, memory speed is not increasing at the same rate. The result is an increase in the number of cycles for a memory access -- a latency of 10 to 20 machine cycles is quite common. Although cache helps to ameliorate these problems, it performs poorly on scientific calculations with working set...