並列計算に関して, n>15でparpool(n)が立ち上がらない
15 views (last 30 days)
Show older comments
Daiki Sekizawa
on 4 Jun 2022
Answered: Daiki Sekizawa
on 4 Jun 2022
ワークステーションから並列計算を実行しています. 並列計算では, 並列数は
parpool(n)
のように指定します. n=15程度では問題なくparpoolが立ち上がることは確認しました.
>> parpool(15)
'local' プロファイルを使用して並列プール (parpool) を起動中...
並列プールに接続済み (ワーカー数: 15)。
ans =
Pool のプロパティ:
Connected: true
NumWorkers: 15
Cluster: local
AttachedFiles: {}
AutoAddClientPath: true
IdleTimeout: 30 分 (残り 30 分)
SpmdEnabled: true
しかし, n=20程度になるとparpoolが立ち上がらず, 困っています. どうすれば良いでしょうか?
>> parpool(20)
'local' プロファイルを使用して並列プール (parpool) を起動中...
エラー: parpool (line 113)
次のエラーにより、並列プールを起動できませんでした。詳細については、クラスター プロファイル マネージャーでプロファ
イル 'local' を検証してください。
原因:
エラー: parallel.internal.pool.InteractiveClient>iThrowWithCause (line 678)
対話型セッションを初期化できませんでした。
エラー: parallel.internal.pool.InteractiveClient>iThrowIfBadParallelJobStatus (line
792)
対話型通信ジョブが失敗し、メッセージが表示されませんでした。
ワークステーション自体の性能については
>> maxNumCompThreads
ans =
128
と出力されるため, 本来なら128の並列が可能なはずです.
また, ターミナルからtopコマンドで, 他のユーザーが重い計算を走らせていない/メモリは十分 ということは確認しています. また, Julia等の他言語で120並列が可能であることも確認したので, 機械ではなくMATLABの問題だと思われます.
また, parpoolではなく設定->Parallel Computing Toolbox設定->推奨される並列プールでのワーカー数や, NumWorkers, NumThreads をいじっても結果は同じでした.
0 Comments
Accepted Answer
More Answers (0)
See Also
Categories
Find more on 並列計算の基礎 in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!