Why is graphics rendering slow on parallel workers?

I am performing computationally demanding graphic rendering operations.
When I perform these operations inside a parallel pool, for example by using "parfor", the execution time increases by a factor 20, thus nullifying the benefit of parallelizing the code in the first place.
Why does this happen?

 Accepted Answer

MATLAB parallel workers do not launch a GUI and are not associated to a display. Therefore they are unable to make use of OpenGL technology for acceleration of rendering tasks. This will both impact the performance and quality of graphics rendering compared to a desktop MATLAB session.
We would recommend to continue using the parfor loop to speed up the data processing tasks, but move the plotting functions to outside the parfor loop to make use of efficient OpenGL rendering.

More Answers (0)

Categories

Find more on Graphics Performance in Help Center and File Exchange

Products

Release

R2017b

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!