45
edits
Changes
→Parallelization
Instead of using regular C++ indexing in the render() function paralleled using Blocks and Thread indexing.
So in the C++ version of the code we had a nested for loop that iterates over the x and the y axis of the image depending on the resolution of the image set.
[[File:RenderCPP.jpg]]
This was changed to thread based indexing when we changed the render function to the kernel.
[[File:Render.png]]
[[File:Grid.png]]
===Launching the Kernel===
Instead of calling the render function in the main we changed fucntion render() to a __global__ void render() kernel.
[[File:RCpp.png]]
In the end we launch the kernel to render the image and copy the rendered data from device memory to the host memory.