Scalable Parallel Programming with CUDA, by J. Nickolls et al., ACM Queue 6(2):40-53, March/April 2008. Read through page 48 (If reading the html version, read through Related Work)