1

matlabpool open 8物事をスピードアップするために、しばらくの間コマンドを使用してきました。ただし、使用してみたところ、8 コアが拒否され、現在は 4 に制限されています。

私のラップトップは 4 コアの i7 ですが、ハイパースレッド化されているため、matlab を 8 つの仮想コアで動作させるのに問題はありませんでした。

同時に、次の警告メッセージに気付きました。

Warning: matlabpool will be removed in a future release. Use parpool instead.

MathWorks は、何らかの理由でこれが素晴らしいアップデートであると判断したようです。

コードを 8 コアで再び実行する方法はありますか?

注: 私は R2010b を使用していた (と思う) が、現在は R2014b を使用しています。

4

1 に答える 1

3

@horchler がコメントであなたの質問に対する直接的な解決策を提供してくれたようです。

ただし、8 を使用せずに、MATLAB によって提案された既定の 4 ワーカーに固執することをお勧めします。

4 つの物理コアがあり、それらが実行できる作業は限られています。ハイパースレッディングを使用すると、仮想コアのペアで実行される操作をインターリーブすることで、オペレーティング システムが 8 つのコアがあると見なすことができます。

これは、Outlook などのコンピューティング集約型ではないアプリケーションに最適ですが、ネットワーク接続を介して電子メールをチェックする際に GUI の応答性を維持するなど、多くの操作を同時に実行する必要があります。

しかし、MATLAB などの計算集約型アプリケーションの場合、操作がインターリーブされているだけなので、実際のスピードアップはまったく得られません。4 つの実際の物理コアが実行できる作業量は増加していません。さらに、ハイパースレッディングの実行にはわずかなオーバーヘッドがあります。

私の経験では、MATLAB はハイパースレッディングをオフにすることでわずかにメリットがあります。(もちろん、Outlook などの他のものはそうではありません: あなたの選択)。

于 2015-03-30T09:35:30.480 に答える