parfeval
並列プール ワーカーで関数を実行
説明
は、関数 F
= parfeval(fcn
,numFcnOut
,X1,...,Xm
)fcn
の実行をスケジュールします。使用可能な並列プールがある場合、MATLAB® はそれを使用してこの関数を実行します。それ以外の場合、この関数は逐次実行されます。
この構文を使用する並列コードは、Parallel Computing Toolbox™ を保有していない MATLAB ユーザーと共有できます。
MATLAB は、指定した入力引数 X1,…Xm
を用いて各ワーカー上で関数 fcn
を非同期で評価し、numFcnOut
出力引数を返します。
MATLAB は、関数 fcn
の実行が完了する前に、Future
オブジェクト F
を返します。fetchOutputs
を使用すると、Future から結果を取得できます。関数 fcn
の実行を停止するには、関数 cancel
を使用します。Future の詳細については、Future
を参照してください。
並列プールが開いている場合、MATLAB はその並列プールを使用して関数 fcn
を実行します。
並列プールが開いていない場合、動作はプールの自動作成が有効かどうかによって異なります。
プールの自動作成が有効であれば、MATLAB は既定のクラスター プロファイルを使用して並列プールを開始し、その後その並列プールを使用して関数
fcn
を実行します。既定では、プールの自動作成は有効になっています。parpool
をプール引数pool
に指定することで、この動作を手動により強制できます。プールの自動作成が無効であれば、MATLAB は遅延実行を使用して関数
fcn
を実行します。parallel.Pool.empty
をプール引数pool
に指定することで、この動作を手動により強制できます。