GPU Accelerated Statistical Programming in R
The statistical environment ‘R’ is used widely in biomechanical research. The University of Michigan has managed to implement GPGPU acceleration into the toolkit in such a way that it’s nearly transparent to the user and offering some amazing speedups of frequently used algorithms.
If an algorithm involves computing the elements of a large matrix, we can often merely assign each thread executing on the GPU a portion of a row and/or column. Algorithms for which we have implemented GPU enabled versions include the calculations of distances between sets of points (R dist function), hierarchical clustering (R hclust function). Pearson and Kendall correlation coefficients (similar to R cor function), and the Granger test (‘granger.test’ in the R MSBVAR package).
The graph on the right shows the negligible impact on scaling a Granger test from 200 to 1000 random variables as the blue-line (the GPU version) remains almost flat and the red line (CPU version) rises exponentially to 5000seconds .
via R GPGPU.