A Beginner and lot of confusion and misconceptions

Hello all,

I am an absolute beginner with CUDA and want to clear out some of confusions and correct my misconceptions !! Straight to the point ,

I originally thought CUDA was meant for image processing parallelism only , which on closer study is absolutely wrong, what I make out is it can actually act as parallel processor , am I right here ? Also are there special image processing functions that it can perform faster?

Secondly why is there an emphasis on microsoft visual studio w.r.t CUDA ? Cant I compile CUDA programs with say Dev C++ ? Here theres a lot of confusion for me which i will ask once i clear these doubts outta my mind !!

And any place get started from the 0th node ? ? :)



Can some one atleast tell me a good place to start off with so that i can clear my doubts myself ?

Thank you


Go to http://www.nvidia.com/object/cuda_education.html

You can start out by reading http://www.nvidia.com/content/cudazone/dow…g_NVISION08.pdf and then going through podcasts from Univ of Illinois. You should also read the Programming Guide that’s supplied with the newest CUDA Toolkit.

CUDA is optimized for data-parallel programming. Data-parallel programming is characterized by performing identical (or at least very similar) calculations on many different data elements in parallel. Image processing is one example a data-parallel activity, but people have also implemented signal processing (Fourier transforms, etc), linear algebra, Monte Carlo simulations, fluid dynamics, and many other tasks in CUDA.

The CUDA homepage has a fancy Flash interface letting you browse examples of things people do with CUDA:

The CUDA education site has good tutorial materials:


If you are more of an audio/visual learner, check out the recorded lectures from the University of Illinois. For a written tutorial, the Dr. Dobbs Journal articles are very good.