Rank K Cholesky Up/Down-Dating on the GPU: GpucholmodV0.2
In this note the authors briefly describe the Cholesky modification algorithm for streaming multiprocessor architectures. The implementation is available in C++ with Matlab binding, using CUDA to utilise the Graphics Processing Unit (GPU). Limited speed ups are possible due to the bandwidth bound nature of the problem. Furthermore, a complex dependency pattern must be obeyed, requiring multiple kernels to be launched. Nonetheless, this makes for an interesting problem, and the approach can reduce the computation time by a factor of around 7 for matrices of size 5000 ? 5000 and k = 16, in comparison with the LINPACK suite running on a CPU of comparable vintage.