File Exchange

RayShapeArticle_FEX​.zip

version 1.3.0.1 (22.5 KB) by Paul Peeling

Paul Peeling (view profile)

Solving Large Geometric and Visualization Problems with GPU Computing in MATLAB

Updated 01 Sep 2016

It is often necessary to scale a technical computing problem involving a small amount of data to a much larger data set. Simply looping over each section of the data can become a computational bottleneck, especially if the application has to run in real time. MATLAB® offers several approaches for accelerating algorithms, including performing computations in parallel on multicore processors and GPUs. If you have an NVDIA GPU available, one approach is to leverage the parallel architecture and throughput of the GPU with Parallel Computing Toolbox TM. Certain classes of problems, especially in computational geometry and visualization, can be solved very efficiently on a GPU.
In this submission we will modify an algorithm to run on a GPU, and then solve a geometric problem involving millions of lines and shapes in under a second. We illustrate this approach using the problem of tracing light rays as they intersect with objects. This type of problem is present in a variety of applications, including scene rendering and medical imaging.
This code accompanies the article "Solving Large Geometric and Visualization Problems with GPU Computing in MATLAB" (http://www.mathworks.co.uk/company/newsletters/articles/solving-large-geometric-and-visualization-problems-with-gpu-computing-in-matlab.html)

Cite As

Paul Peeling (2020). RayShapeArticle_FEX.zip (https://www.mathworks.com/matlabcentral/fileexchange/46502-rayshapearticle_fex-zip), MATLAB Central File Exchange. Retrieved .

the motive for the upload is so much of my taste.
i like the compilation

Andreas Chwala

Andreas Chwala (view profile)

@Zoltán
Probably one can explain it like this:
As long as the algorithm calls the loop with less elements then available cores the execution time is not increasing with the number of elements.

Zoltán Csáti

Zoltán Csáti (view profile)

A question about the article: why is it, that the curve characterizing the GPU implementation is not monotonically increasing?