https://hgpu.org/?p=3077
Singular value decomposition for collaborative filtering on a GPU