Previous | Next --- Slide 48 of 57
Back to Lecture Thumbnails

The stream programming model is like a subset of the data-parallel model. It imposes restrictions on the data-parallel model in order to ensure the output of your program will always be deterministic. The parts of your program which contain parallelism are written into functions called 'kernels'. The kernel MAPS elements one-to-one. You are no longer iterating over the function using a foreach (which could have given you a non-deterministic answer)

Stream programming forms the basis of modern GPU programming and I found NVIDIA's developer notes helpful to understand it better: