can parfor in compiled code access a local worker pool?

2 ビュー (過去 30 日間)
emmenlau
emmenlau 2015 年 7 月 20 日
コメント済み: Dasharath Gulvady 2015 年 7 月 24 日
I run on a dedicated multi-code computer very often mcc-compiled matlab programs, in which I execute parfor. Each program has a relatively slow startup time, I think because it is create the parallel worker pool. For my application, it would be more efficient if the pool could remain open all the time in the background, for example from a headless matlab session. Is something like that possible, or are there other solutions?

回答 (1 件)

Dasharath Gulvady
Dasharath Gulvady 2015 年 7 月 22 日
編集済み: Dasharath Gulvady 2015 年 7 月 22 日
It is definitely possible for a compiled MATLAB code to utilize profiles created using Parallel Computing Toolbox. The below documentation page explains the same:
  4 件のコメント
emmenlau
emmenlau 2015 年 7 月 23 日
編集済み: emmenlau 2015 年 7 月 23 日
Thats strange, because when I open Matlab twice interactively, and create a parpool in both (using the same profile), Matlab will tell me that there is a second pool already open, and that I can fetch and delete jobs on the existing pool! Did you try that? It seems they could in principle share the pool, just I don't understand how it would work.
Dasharath Gulvady
Dasharath Gulvady 2015 年 7 月 24 日
Which version of MATLAB are you using? The expected behavior is not to share any workers between the MATLAB sessions. In the second MATLAB session, if you execute
>>p = gcp('nocreate');
What is the value of p? Note that, you should execute the above command without creating a pool beforehand.

サインインしてコメントする。

カテゴリ

Help Center および File ExchangeParallel Computing Fundamentals についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by