Pridavam se k ostatnim, ze clanek je temer nepochopitelny pro cloveka neznaleho GPU a CUDA. Autor mel nejprve radne popsat architekturu GPU, z cehoz vyplyne, proc se zabyvame vecmi jako bloky a gridy – je to kvuli synchronizaci mezi vlakny. Bez vylozeni, jak se zpracovavaji vlakna v ramci bloku a gridu nema smysl jit dal a zminovat veci jako coalesced memory acces. Pak bych rekl, co je to kernel a jak se spousti. A potom by zrejme bylo dobre podrobne vylozit, jak dostat data ke zpracovani do globalni pameti GPU, pripadne do sdilene pameti multiprocesoru (ta je sdilena na urovni bloku, a jelikoz autor radne nevysvetlil bloky, tezko muze vysvetlit toto). O necitelnosti kodu se snad ani nezminuji. Opravdu jsou lepsi tutorialy primo od nVidie, napr.
http://geraldine.fjfi.cvut.cz/~oberhuber/data/hpc/paa/prezentace/Getting_Started_w_CUDA_Training_NVISION08.pdf