CUDA by example: an introduction to general purpose GPU programming. - Sanders, Jason; Kandrot, Edward (Addison-Wesley, 2011)