問題タブ [matlabpool]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
matlab - MATLAB での Parpool の起動
で始めてみparpool
ましたMATLAB 2015b
。次のようにコマンドします。
このコマンドは 3 つのワーカーを割り当てる必要があります。起動に失敗したことを示すエラーを受け取りましたparpool
。以下のようなエラーメッセージ、
同様のクエリが投稿されました ( https://nl.mathworks.com/matlabcentral/answers/196549-failed-to-start-a-parallel-pool-in-matlab2015a )。提案に従ってローカルプロファイルを検証するために、同じ手順に従いました。
distcomp.feature( 'LocalUseMpiexec', false);
or distcomp.feature( 'LocalUseMpiexec', true)
inを使用startup.m
しても、改善は見られませんでした。また、プロファイルを検証しようとするとlocal
、次のようなエラー メッセージが表示されます。
これらのエラーは、クラスター マシンでのみ発生します。しかしparpool
、スタンドアロン PC での起動は完全に機能しています。この問題を修正する方法はありますか?
matlab - クラス定義を含むフォルダーを matlab parpool オブジェクトに追加する方法
parfor
コードの一部を高速化するために Matlab を使用したいと考えています。実行に必要な一部の関数は、クラス定義を含むディレクトリに存在します。したがって、次のように、必要なディレクトリと必要なファイルをプール オブジェクトに追加します。
poolobj
フィールドに必要なファイルが含まれていることを確認して確認しAttachedFiles
ます。ただし、実行するparfor
と、Matlab はエラーをスローします。
編集:
以下の回答に基づいて、ディレクトリ全体を追加しようとしましたが、機能しませんでした:
matlab - Matlab での COM インスタンスの並列実行
Mathworks の ParallelToolbox を使用して、テスト環境を高速化しようとしています。ただし、複数の Matlab インスタンスを並行して開始することはできません (これまで、テストを順番に実行し、それぞれが ActX サーバーを介して新しい Matlab インスタンスを開始しています)。したがって、以下のコードを実行すると
Matlab インスタンスは順番に呼び出されます (テストは、いくつかの数値を合計する非常に単純なスクリプトです)。
ただし、コマンドラインから新しい Matlab を起動すると
できます。これら 2 つの方法は、Matlab の起動の処理がまったく異なることがわかりますが、最初のアプローチは次のようになります。