このエラーの主な原因は 2 つあります。まず、複数起動したワーカーのうちいずれかのワーカーがクラッシュ、強制終了していることが考えられます。以下について確認します。
(1) ワーカーのクラッシュ
ワーカーがクラッシュした際、クラッシュのダンプファイルが残されている可能性があります。
https://jp.mathworks.com/matlabcentral/answers/92074-matlab
Parallel Computing Toolbox ご使用の場合は以下で各ワーカーの出力先を確認いただくことができます。
>> c=parcluster()
>> c.JobStorageLocation
(2) ネットワークの問題
クラッシュダンプファイルが見つからない場合はネットワークの問題が考えられます。
例えば使用するメモリ量が多くメモリスワップが発生しマシンの速度が著しく低下し、ワーカー間の通信信号が遅延することがあります。
ノードの速度低下だけでなく、ネットワークの遅延や接続の切断も発生する可能性があります。
なお、SpmdEnabled によるプールは、ワーカー間またはワーカーとクライアント間の通信が失われると、継続することができません。しかし、ローカルスケジューラやML Job Schedulerを使っていて、 parfor と parfeval しか使っていない場合は、代わりに 'SpmdEnabled' 'false' というフラグを指定することが可能です。
ご参考:
https://www.mathworks.com/help/parallel-computing/parpool.html
このオプションでは、1つのワーカーが接続を失った後でも、残りのワーカーが並列作業を継続します。
このエラーの処理に関してさらにサポートとサポートが必要な場合は、