Why is a multithreaded mex function slower when I used a parallel pool?

When I run a multithreaded mex function after having used a parallel pool, my function runs a lot slower (10-20x slowdown). Also, the more threads, the slower the function becomes.
Shutting down the pool does not help.
Rebooting Matlab restores the original speed (and scalability) of the mex Function.

4 个评论

Have you closed the parallel pool by the time you are running the mex, or is it still open?
Even after shutting down the parallel pool, the mex file runs much slower
I have a vague memory that someone else might have reported something like this a few years ago, but I am not sure I could find the posting. This is something I would recommend creating a support case for.

请先登录,再进行评论。

回答(0 个)

类别

帮助中心File Exchange 中查找有关 Write C Functions Callable from MATLAB (MEX Files) 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by